• <tt id="oo84o"><table id="oo84o"></table></tt>
  • <li id="oo84o"></li>
     
    售房快車 售房客車 房屋租賃 牽線搭橋 供求信息 南陽人才網 文藝沙龍
     
    域名注冊 虛擬主機 云服務器 企業云郵箱 網站制作 網站推廣 無紙辦公 成功案例
       
    服務熱線:0377-63392646 13782137062
    虛擬主機  
    防止ASP下載的終極方法-開網網絡學院
    · 網 絡 學 院
    ·友情鏈接 更多>>>
    標題:防止ASP下載的終極方法

     
    自從搞ASP+ACCESS沒少為避免數據庫下載而傷過神,網上的奇淫技巧更是數不勝數,本文就是同大家共同探討各路前輩的留下的秘笈并指中其中的優劣,最后為大家提供一種最佳的解決方案。

      一、開篇

      自從搞ASP+ACCESS沒少為避免數據庫下載而傷過神,網上的奇淫技巧更是數不勝數,本文就是同大家共同探討各路前輩的留下的秘笈并指中其中的優劣,最后為大家提供一種最佳的解決方案

      二、剖析

      為了防止ACESS數據庫下載,小的見過不少方法,主要有以下幾種:

      1、數據庫加密--------這個自然不用說了,別人如果知道數據庫路徑,照樣能下載,打開數據庫其實也很簡單,網上破解ACCESS數據庫的密碼軟件太多了,以前我也有所研究,97版的ACCESS的密碼是從文件的開頭第73(如果這個數字沒記錯的話)個字符開始連續的十多個,這個是密碼與已知的一串字符異和的結果,2000版的ACCESS變聰明了一些它的加密后的密碼不是連續是間隔的不過加密密鑰還是一樣的,由于是對稱加密所以破解ACCESS簡直易如反掌(呵呵,好像跑題了)

      2、數據庫文件名更名--------這個用的比較多,主要是用到了HTML的錨點,將數據庫的文件名中加入“#”,如果直接敲入數據庫的路徑試圖下載的話,由于瀏覽器只解析到了#前面一大串URL,#后被認為是錨點標記,數據路徑被保護起來了。剛看到這種方法時,俺確實得佩服最初發現這個方法的N人?上]多久,在網上看到了另一篇文章對此方法的破解,原理很簡單,字符“#”被URL解析后的字符應該是“%35”,這就是我們在地址欄里經?吹%20樣的東西,其實是空格,由于進行了URL編碼所以解析成了%20(20是因為空格的ASC碼值為20)

      3、數據庫擴展名更名--------這個用的太普遍了,擴展名一般改成.ASP,因為擴展名為。ASP文件都要交給ASP。DLL文件解釋執行,ASP。DLL只會解釋在<%%>之間的代碼(還有<script runat=server></script>,其它的一概不管,原封不動地交給瀏覽器處理,所以直接把擴展名改為ASP后,數據不會被下載,但是會被瀏覽器直接打開.這樣別人將內容拷貝后仍然可以還原成原始的MDB文件。

      三 解決

      大家應該比較了解動網論壇,他的數據庫里有一個NotDown的表,這個表只有一個字段,并且這個字段的類型是OLE型,用于存放二進制的數據,這個表有什么作用呢?呵呵...

      把動網的數據庫擴展名改成ASP,然后在瀏覽器里輸入對應路徑的數據庫地址,看到什么了?一串錯誤的ASP腳本錯誤的信息,當然數據庫也沒辦法DOWN下來了,為什么會這樣呢,那個NotDown表究竟存放的是什么呢??
      大家好好看看第二節中的第3種方法,仔細琢磨一下應該不難明白結論,正是因為NotDown表是有類似這樣的腳本致使ASP.DLL把它當作真正的ASP文件來執行,但是這恰恰是動網數據庫故意安排的語法錯誤,致使ASP.DLL解釋里出錯,因而把ASP出錯信息顯示出來,從而保護了真正的數據.

      四 實踐

      NotDown表中倒底寫了些什么呢??呵呵,是不是有點急了.
      我們知道NotDown表由于是二進制字段,所有我們讀寫數據庫的時候,也要改一改常規,ADO中專門有讀寫二進制字段的方法它們分別是AppendChunk 和GetChunk 有了這兩個方法我們就可以看看那個表里面究竟是啥玩意了

      <%
      ------此處省略連接數據200字,得到數據連接對象Conn
      set rs=server.createobject("adodb.recordset"
      sql="select notdown from NotDown"
      rs.open sql,0,1
      data=rs(0).GetChunk(rs(0).ActualSize) 讀出所有的二進制數據
      rs.close
      set rs=nothing
      ----關閉數據庫連接
      response.BinaryWrite(data)由于data是二進制,所以要調用response打印二進制的方法將其輸出
      %>

      過足癮了吧,想知道結果是什么嗎,趕緊回去調試看看啊

      五 改進

      上面的方法雖然是保住了數據庫,但是有個錯誤的提示,總是覺得有點不爽,我們來改點別的
      如果試圖輸入數據庫的地址來下載數據庫,將會自動跳轉到搜狐網站,代碼如下

      <%
      ------此處省略連接數據200字,得到數據連接對象Conn
      set rs=server.createobject("adodb.recordset")
      sql="select notdown from NotDown"
      str="<%response.redirect(""http://www.sohu.com"""&chr(37)&">"
      由于字段是二進制數據,我們要是直接把Str字符串字入數據庫的話會有一點問題
      在VBS中每一個字符占兩個字節,所以我們要去掉高位的空字節

      for i=1 to lenb(str)
      if midb(str,1,i)<>0 then
      data=data+ascb(midb(str,1,i))
      end if
      next


      rs.open sql,0,3
      data=rs(0).AppendChunk(data) 寫入二進制數據
      rs.update
      rs.close
      set rs=nothing

      %>
      
      OK了,看看運行效果,甚至還可以加入一段JS腳本,彈出一個對話框,嚇嚇那些下載數據庫的小貓們,還不敢快試試去

      作者:taia

     

    點擊[5206]次  發布日期: 2007-3-26 21:38:47    發布人:中國開網
    :上一篇
      下一篇:

    返回首頁 |公司簡介 |開網招聘 |支付說明 |行業新聞 | 聯系方式 |客服中心| 相關咨詢|廣告服務 |郵箱登錄

    豫公網安備 41130302000019號


    豫ICP備2024042951號

    南陽市開網網絡技術有限公司

    業務專線: 1378217062

    總部地址: 河南省南陽市車站路146號新城百樂大廈13樓12室

    業務①QQ:401853676 客服①QQ:776288762 

    Email:xuejinfu@kyxxw.com  

    Copyright © 2026 南陽市開網網絡技術有限公司 ◇版權所有

    中國開網旗下網站:
    信息版:www.cannaramic.com 
    網絡版:www.kaiwang.wang
    CMAI人工智能平臺:www.cmai.cn
    開網PC手機微信APP小程序五合一網站
    RUAI儒家智慧平臺:www.ruai.cn
    促AI向善網:www.cuai.cn
     
  • <tt id="oo84o"><table id="oo84o"></table></tt>
  • <li id="oo84o"></li>
    国产欧美日韩综合 柞水县| 武安市| 洛浦县| 镇平县| 伊川县| 巴青县| 鄂托克旗| 宁都县| 扶沟县| 望江县| 靖西县| 灵台县| 石景山区| 闻喜县| 浦东新区| 武定县| 甘谷县| 阳江市| 洛川县| 揭阳市| 池州市| 二手房| 保定市| 合川市| 万宁市| 双城市| 兴安盟| 涞源县| 德保县| 太谷县| 防城港市| 阿尔山市| 罗山县| 甘德县| 那坡县| 屏东市| 南雄市| 岳池县| 临泉县| 盐津县| 郎溪县| http://444 http://444 http://444