搭建Access為主的Mdb數據庫
來源:程序員人生 發布時間:2014-06-08 20:15:43 閱讀次數:3268次
什么是mdb數據庫呢?凡是有點制作網站經驗的網絡管理員都知道目前使用“IIS+ASP+ACCESS”這套組合方式建立網站是最流行的大多數中小型Internet網站都使用該“套餐”但隨之而來的安全問題也日益顯著其中最容易被攻擊者利用的莫過于mdb數據庫被非法下載了
什么是mdb數據庫呢?凡是有點制作網站經驗的網絡管理員都知道目前使用“IIS+ASP+ACCESS”這套組合方式建立網站是最流行的大多數中小型Internet網站都使用該“套餐”但隨之而來的安全問題也日益顯著其中最容易被攻擊者利用的莫過于mdb數據庫被非法下載了
mdb數據庫是沒有安全防范的只要入侵者猜測或者掃描到mdb數據庫的路徑后就可以使用下載工具輕松將其下載到本地硬盤再結合暴力破解工具或一些超級破解工具可以輕松的查看里頭的數據庫文件內容企業的隱私和員工的密碼從此不在安全難道我們就沒有辦法加強mdb數據庫的安全嗎?難道即便我們只有一點點數據資料也要麻煩sqlserver或者oracle嗎?答案是否定的本篇文章筆者將告訴大家打造安全的mdb數據庫文件的獨門秘訣
一危機起因
一般情況下基于ASP構建的網站程序和論壇的數據庫的擴展名默認為mdb這是很危險的只要猜測出了數據庫文件的位置然后在瀏覽器的地址欄里面輸入它的URL就可以輕易地下載文件就算我們對數據庫加上了密碼并且里面管理員的密碼也被MD加密被下載到本地以后也很容易被破解畢竟目前MD已經可以通過暴力來破解了因此只要數據庫被下載了那數據庫就沒有絲毫安全性可言了
二常用的補救方法
目前常用的數據庫文件防止被非法下載的方法有以下幾種
()把數據庫的名字進行修改并且放到很深的目錄下面比如把數據庫名修改為Sjgfmdb放到多級目錄中這樣攻擊者想簡單地猜測數據庫的位置就很困難了當然這樣做的弊端就是如果ASP代碼文件泄漏那無論隱藏多深都沒有用了
()把數據庫的擴展名修改為ASP或者ASA等不影響數據查詢的名字但是有時候修改為ASP或者ASA以后仍然可以被下載比如我們將其修改為ASP以后直接在IE的地址欄里輸入網絡地址雖然沒有提示下載但是卻在瀏覽器里出現了一大片亂碼如果使用FlashGet或影音傳送帶等專業的下載工具就可以直接把數據庫文件下載下來不過這種方法有一定的盲目性畢竟入侵者不能確保該文件就一定是MDB數據庫文件修改擴展名的文件但是對于那些有充足精力和時間的入侵者來說可以將所有文件下載并全部修改擴展名來猜測該方法的防范級別將大大降低
三筆者的旁門左道
在筆者的測試過程中就遇到了ASP和ASA文件也會被下載的問題所以經過研究發現了以下的方法
如果在給數據庫的文件命名的時候將數據庫文件命名為“#adminasa”則可以完全避免用IE下載但是如果破壞者猜測到了數據庫的路徑用FlashGet還是可以成功地下載下來然后把下載后的文件改名為“adminmdb”則網站秘密就將暴露所以我們需要找到一種FlashGet無法下載的方法但是如何才能讓他無法下載呢?大概是因為以前受到unicode漏洞攻擊的緣故網站在處理包含unicode碼的鏈接的時候將會不予處理所以我們可以利用unicode編碼(比如可以利用“%C”代替“<”等)來達到我們的目的而FlashGet在處理包含unicode碼的鏈接的時候卻“自作聰明”地把unicode編碼做了對應的處理比如自動把“%”這一段unicode編碼形式的字符轉化成了“(”所以你向FlashGet提交一個的下載鏈接它卻解釋成了(xadminsxxmdb看看我們上面的網址的地方和下面的重命名的地方是不同的FlashGet把“%xadminsxxmdb”解釋為了“(xadminsxxmdb”當我們單擊“確定”按鈕進行下載的時候它就去尋找一個名為“(xadminsxxmdb”的文件也就是說FlashGet給我們引入了歧途它當然找不到所以提示失敗了
不過如果提示下載失敗攻擊者肯定要想采取其他的攻擊方法由此我們可以采用另一個防范的方法既然FlashGet去找那個名為“(xadminsxxmdb”的文件了我們可以給它準備一個我們給它做一個仿真的數據庫名為“(xadminsxxmdb”這樣當入侵者想下載文件的時候的的確確下載了一個數據庫回去只不過這個數據庫文件是虛假的或者是空的在他們暗自竊喜的時候實際上最終的勝利是屬于我們的
總結
通過本次旁門左道保護MDB數據庫文件方法的介紹我們可以明確兩點安全措施一是迷惑法也就是將黑客想得到的東西進行改變例如改變MDB文件的文件名或者擴展名;二是替代法也就是將黑客想得到的東西隱藏用一個沒有實際意義的東西替代這樣即使黑客成功入侵拿到的也是一個虛假的信息他們還會以為入侵成功而停止接下來的攻擊
生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈