如何打響數據庫保衛戰 建一面“銅墻鐵壁”_Access數據庫教程
推薦:解讀SQL注入漏洞初級應用之Access篇如果你已經掌握了SQL注入漏洞的一些相關的基礎知識,那是不是覺得看了理論有一種想急于知道如何實際動手操作的沖動,好吧,Let’s go,這篇文章我們就來實戰SQL注入,不過針對網站的數據庫是ACCESS的,畢竟在國內都是用虛擬機,一般只有FTP上傳權限,所以還是
數據庫對于一個網站來說意味著什么?可能有很多站長會說只是一個記錄數據的工具。這種說法固然沒錯,但是卻遺漏了重要的一點,數據庫也是一個網站安全的中心,一旦數據庫被黑客得到,那么輕則得到網站數據和用戶隱私信息,重則滲透網站,影響整個服務器的安全。正因為很多站長對數據庫的安全意識不夠,才導致很多安全問題的發生。本文將讓大家了解數據庫對一個網站的重要性,并為數據庫建造一面“銅墻鐵壁”。一、數據庫的獲取
數據庫對網站重要性不言而喻,那么黑客是通過什么手段得到網站數據庫的呢?
1.默認的數據庫路徑
很多站長建站或論壇使用的都是現成的整站程序,這就造成了一個很大的安全隱患,即默認的數據庫的路徑。雖然在這些程序的說明文檔中都提示修改數據庫的默認路徑,但是仍有些安全意識不高的站長不屑于修改或者不會修改。這樣當黑客在該網站的地址后輸入默認數據庫的路徑,就可以輕易下載到數據庫。
2.暴庫顯示路徑
什么叫“暴庫”,簡單得說就是構造特殊地址使網站程序運行出錯,從出錯的信息中得到數據庫的路徑。暴庫并不是一門十分高深的技術,但是卻可以很快得找到數據庫路徑,而且成功率很高。要想進行暴庫,首先需要對IE進行設置,運行IE,點擊“工具”菜單→“Internet選項”,切換到“高級”標簽,將“顯示友好HTTP錯誤信息”前面的勾去掉,然后保存,這樣做是讓瀏覽器返回真實的錯誤信息,而不是類似505錯誤,405錯誤等經過處理后的錯誤信息。找到一個存在暴庫漏洞的程序,例如較早版本的“動力文章系統”。打開““動力文章系統”的任意頁面,在IE地址欄中將該頁面地址出現的最后一個“/”替換為“%5c”,然后回車,如果暴庫漏洞存在,那么數據庫路徑將會馬上顯示出來。
3.防下載設置不夠嚴密
排除程序的原因,數據庫被下載很大一部分的原因是人為因素。有些站長已經認識到數據庫的重要性,雖然沒有修改默認的路徑,但是將數據庫默認的后綴名“mdb”改為了“asp”,這樣即使別人知道了數據庫的路徑,也無法在瀏覽器中進行下載,而是直接在頁面中顯示數據庫的內容,當然都是一些亂碼。不過我們雖然無法在瀏覽器中下載,卻可以借用專用的下載軟件來實現數據庫的下載,或者將頁面中出現的所有內容復制到一個文本文檔中,然后將這個文檔的后綴名改為“mdb”。
還有一種情況就是站長在數據庫的文件名中加入了“#”符號,例如原來的數據庫名為123.mdb,加入“#”號后變成“#123.mdb”,這樣當我們在地址欄中直接輸入“http://www.***.com/#123.mdb”,是無法下載數據庫的,而是顯示“無法找到網頁”。這是因為瀏覽器的編碼格式會默認將“#”號變為“%23”,這樣就成了另外一個網址,當然不可能下載到數據庫。那么我們反過來將“%23”替換為“#”,填入到網址中,數據庫不就可以正確下載了嗎?
二、破解數據庫中的管理員賬戶信息
得到數據庫后可以做什么?可以歸結為以下幾點:1.破解得到網站管理員的賬戶名與密碼;2.得到網站注冊用戶的信息;3.查看一些普通用戶無法查看到的資料。其中最有價值的就是保存在數據庫中的管理員賬戶信息。能成功得到管理員的賬戶密碼,我們就成功了一半。
得到網站的數據庫后(這里指的是Access數據庫),將數據庫的后綴名改為mdb,這樣我們就可以使用“Microsoft Office Access”來打開數據庫,通常在“admin”表中的就是管理員的賬戶信息。對于安全性不高的網站程序,管理員的賬戶名和密碼會以明文的形式顯示,這樣我們就省去了破解這一步。而絕大部分的網站程序都對管理員的密碼進行了md5加密。md5是一種不可逆的加密算法,加密過的數據不可能再還原,因此我們必須通過暴力破解,來獲取密碼原文。
1.網站破解
破解md5的最快方法是通過專門的破解網站。登陸“http://www.xmd5.org/go_cn.htm”,點擊頁面中的“解密”鏈接進行破解,將加密后的密文填入到文本框中,然后點擊“給我轉”,即可破解得到密碼,但是這類網站有其局限性,只能破解簡單的密碼,而遇到強悍的密碼就無能為力了。
2.軟件破解
除了通過網站破解,我們還可以使用專門的md5密碼破解工具。下載“md5crack”,無需安裝可直接運行。運行后可以看到兩個設置選項,分別是“密文設置”、“字符設置”,在“字符設置”中可以對破解形式進行選擇。我們將需要破解的密文輸入到“密文設置”中的“破解單個密文”文本框中,軟件也可以同時破解多個密文,選中“破解多個密文”,點“設置”即可。
軟件對md5密文采用兩種破解方式,“暴力破解”和“字典破解”,前者采用猜解來得到密碼,后者是通過字典中已存在密碼與需要破解的密文進行對比得出密碼。對于比較常見的密碼,使用“字典破解”的成功率是很高的。這里我們選擇“暴力破解”來演示。在“字符設置”中選中“使用字符集”,然后勾選“數字”,這樣就可以破解密碼為數字的密文,當然我們也可以同時選中其他選項,不過破解時間會相應變長。設置完成后點擊“開始”,即可開始破解工作。軟件的破解速度很快,對于不太復雜的密碼可以很快破解。
三、利用網站數據庫備份功能,得到webshell
由于各種網站程序的編寫越來越人性化,都在其后臺管理增加了數據庫的備份恢復功能,而這個功能卻被黑客敞開了大門,通過數據庫備份功能,我們可以輕易得得到網站的webshell,從而進一步滲透。
我們以著名的動網論壇7.0sp3版本為例,假設我們已經下載到了數據庫,并利用數據庫里的數據,破解得到了管理員的賬戶名和密碼。我們以管理員的身份登陸,在論壇發表一篇帖子,然后將我們的asp木馬以附件的形式上傳到服務器,這里需要將asp木馬的后綴名改為jpg,才能正常上傳。上傳成功后得到類似“UploadFile\2006-3\123.jpg”的地址。登陸論壇的后臺管理頁面,點擊頁面中的“恢復數據庫”選項,接著會出現“恢復數據庫”頁面,在其中的“備份數據庫路徑(相對)”中填入我們上傳附件成功后的地址,然后在“目標數據庫路徑(相對)”中填入muma.asp,點擊“恢復數據”即可。這樣就會在論壇的根目錄中生成我們的muma.asp,直接輸入地址就可以得到webshell了。
四、數據庫的惡夢,C/S型asp木馬
所謂的C/S型asp木馬,就是客戶端和服務端分開的asp木馬。這種asp木馬運作方式是:先將服務端代碼插入到網站的數據庫中,然后通過客戶端程序進行連接,連接上后就可以像普通asp木馬那樣進行操作。不過C/S木馬的運行條件是目標數據庫的后綴名必須已改為asp或asa,對于后綴名為mdb的數據庫則不起任何作用。下面我們通過C/S木馬來獲取一個webshell。
首先需要得到目標網站的數據庫路徑,并且確認數據庫的后綴名為asp或asa。然后來到網站任何可以將數據寫入數據庫的地方,將我們的asp木馬服務端“<%execute(request("cmd"))%>”(其中cmd是連接密碼,可以修改為自己的密碼)提交到網站上,這樣數據庫中就有了我們的木馬服務端。然后我們運行目前較為成熟的C/S木馬“lanker微型asp后門”,在“木馬地址”中寫入網站數據庫的路徑,然后在“基本功能列表”中選擇“環境變量”,點“提交”就可以成功連接到服務端了。連接后可以在“基本功能列表中”選擇相應的功能進行操作,和一般的webshell無異。
五、打造數據庫的“銅墻鐵壁”
數據庫的防下載其實并不難,如果自己對網站所在的服務器有管理權,那么防下載只需在網站程序上做一下簡單的設置。如果網站是建立在虛擬主機上的,也只需編寫一個數據庫防下載的asp文件即可解決問題。
1.更改數據庫路徑
如果自己對網站所在的服務器有管理權,那么我們可以將網站程序和數據庫放在不同的目錄中,例如將網站程序放在c:\web文件夾中,將數據庫放在d:\data文件夾中,然后在網站程序中將數據庫的指向改為“d:\data\數據庫文件”即可。因為數據庫不在網站目錄下,因此不存在被下載的問題。
2.編寫防下載asp文件
如果網站是建立在虛擬主機上的,可以在數據庫中添加防下載表。首先將網站數據庫改為asp后綴,然后用記事本打開“數據庫防下載.asp”(本文相關軟件包中有提供),將第二行中的數據庫地址改為自己網站的數據庫地址,然后將這個asp文件上傳到網站上,用瀏覽器執行一次即可。文件執行完畢后會在數據庫中添加防下載表,這樣當輸入數據庫地址時會出現“無法顯示該頁”的錯誤信息。
3.入侵后的補救措施
黑客利用下載數據庫入侵后,通常會留下一些asp木馬,作為后門控制網站。因此如果發現網站被入侵,檢測asp木馬是否存在也是一件十分重要的事。對于asp木馬的檢測,可以使用“思易asp木馬追捕”,它可以像殺毒軟件一樣通過特征碼來查找存在于網站中的asp木馬。因此有“越軌操作”的asp文件都會被其列入黑名單。同時對于每個asp文件所擁有的權限都將以列表的形式顯示,具有危險性的asp文件一目了然。
分享:解讀ADO訪問不同數據庫的差別Microsoft公司提供了統一的數據訪問接口ActiveX Data Object,簡稱ADO。但實際應用編程中,訪問不同的數據庫,如Access、SQL Server或VFP,會存在一些“細微”差別,常常有這樣的情況,用ADO對象訪問某一數據庫的程序都調試通過了,但用同樣的程序訪問其他數
- 相關鏈接:
- 教程說明:
Access數據庫教程-如何打響數據庫保衛戰 建一面“銅墻鐵壁”。