在你的組織中保證、PC和筆記本電腦的安全是一件很重要的工作,一旦安全環(huán)境遭受破壞,在這些設(shè)備上的重要數(shù)據(jù)就可能被破壞或被修改掉,可能會(huì)使客戶喪失信心,進(jìn)而丟掉銷(xiāo)售訂單。試問(wèn)現(xiàn)在你所管理的網(wǎng)絡(luò)真的安全嗎?你有信心做肯定回答嗎?如果你還不能確定回答,那何不來(lái)一次安全審計(jì),用事實(shí)來(lái)說(shuō)話吧。
做一次完全的安全審計(jì)對(duì)于一個(gè)企業(yè)而言,往往感覺(jué)力不從心,或許是安全公司開(kāi)價(jià)過(guò)高,或許擔(dān)心最終的安全審計(jì)報(bào)告水份過(guò)多,本文想從幾個(gè)方面利用開(kāi)源軟件來(lái)做一次比較徹底的安全審計(jì),不能保證每一處都審計(jì)到,至少比問(wèn)起問(wèn)題時(shí)拍腦袋強(qiáng)。
現(xiàn)有保護(hù)措施
在開(kāi)始審計(jì)前,還是先弄清楚自己網(wǎng)絡(luò)環(huán)境的安全保護(hù)措施,歸納起來(lái),一般的中小型企業(yè)都會(huì)有:
(1)一個(gè),將企業(yè)內(nèi)部網(wǎng)絡(luò)與進(jìn)行隔離。
(2)一套防御系統(tǒng)()/入侵監(jiān)測(cè)系統(tǒng)(),發(fā)現(xiàn)攻擊行為時(shí)自動(dòng)報(bào)警。
(3)一套惡意軟件掃描程序,掃描網(wǎng)絡(luò)中的惡意軟件。
(4)對(duì)網(wǎng)絡(luò)和計(jì)算機(jī)的訪問(wèn)使用密碼進(jìn)行驗(yàn)證,預(yù)防無(wú)密碼直接訪問(wèn)。
(5)一套殺毒軟件,或單機(jī)版防軟件,保證查殺流行病毒。
說(shuō)不定你的網(wǎng)絡(luò)中也許還沒(méi)有這么多的安全保護(hù)措施,那更應(yīng)該做一下安全審計(jì)了。即使配有這些保護(hù)措施,也可能存在安全隱患,如:
(1)防火墻本身發(fā)現(xiàn)了漏洞,而你卻未及時(shí)打上補(bǔ)丁。
(2)IPS/IDS配置不當(dāng),沒(méi)有發(fā)揮作用或引起負(fù)面影響。
(3)保護(hù)網(wǎng)絡(luò)和計(jì)算機(jī)資源的密碼很弱智,如123456.
(4)殺毒軟件很久都沒(méi)有升級(jí)了,對(duì)最新的病毒無(wú)法感知。
(5)你的IT架構(gòu)中可能存在你還沒(méi)有發(fā)現(xiàn)的其它漏洞。
滲透測(cè)試
首先從滲透測(cè)試說(shuō)起吧,它可以發(fā)現(xiàn)現(xiàn)有的安全保護(hù)措施是否真的能夠保護(hù)整個(gè)網(wǎng)絡(luò),實(shí)際上滲透測(cè)試就是把自己當(dāng)作,通過(guò)一些黑客攻擊手段向網(wǎng)絡(luò)發(fā)起模擬攻擊測(cè)試。
滲透測(cè)試通常包括幾個(gè)步驟:
(1)信息收集
使用和其它資源發(fā)現(xiàn)公司盡可能多的信息,如公司名稱,員工姓名等。
(2)端口掃描
使用自動(dòng)的端口掃描程序找出網(wǎng)絡(luò)中活動(dòng)的計(jì)算機(jī)及運(yùn)行的服務(wù),最好是發(fā)現(xiàn)有漏洞可利用的服務(wù)。
(3)偵查
從目標(biāo)服務(wù)器上探測(cè)各種信息,如運(yùn)行的程序,后臺(tái)服務(wù)。
(4)網(wǎng)絡(luò)嗅探
發(fā)現(xiàn)在網(wǎng)絡(luò)上傳輸?shù)挠脩裘兔艽a。
(5)密碼攻擊
破解密碼,或者猜測(cè)密碼。
由于保護(hù)網(wǎng)絡(luò)和攻擊網(wǎng)絡(luò)是兩個(gè)不同的領(lǐng)域,在進(jìn)行滲透測(cè)試時(shí)一定要轉(zhuǎn)換到黑客的思維角度。最好的滲透測(cè)試是聘請(qǐng)安全專家進(jìn)行,但這通常需要付費(fèi)。當(dāng)然,出于成本考慮,可以選擇滲透測(cè)試軟件,它在網(wǎng)絡(luò)索漏洞,在某些時(shí)候還可以自動(dòng)發(fā)起模擬攻擊。使用軟件進(jìn)行滲透測(cè)試的好處時(shí),你可以每個(gè)月甚至每周進(jìn)行一次測(cè)試。
說(shuō)了這么多,那如何執(zhí)行滲透測(cè)試呢?首先需要準(zhǔn)備一臺(tái)筆記本電腦,可以連接到網(wǎng)絡(luò),也可以連接到有線網(wǎng)絡(luò)。然后就是測(cè)試軟件了,本文講述的軟件大部分都是開(kāi)源的,都可以在Linux系統(tǒng)中運(yùn)行,最簡(jiǎn)單的方法就是下載一個(gè)LiveCD,本文使用的就是一個(gè)安全Linux發(fā)行版BackTrack,可以去www.remote-exploit.org下載。創(chuàng)建LiveCD的步驟就不敘述了。這個(gè)發(fā)行版包含了許多滲透測(cè)試工具,下面就舉幾個(gè)例子:
使用db_autopwn進(jìn)行滲透測(cè)試
db_autopwn是一個(gè)自動(dòng)滲透測(cè)試工具,它可以測(cè)試網(wǎng)絡(luò)中的Windows、Linux和Unix計(jì)算機(jī)漏洞,實(shí)際上它是Metaspoit Framework軟件的一部分。
使用db_autopwn前首先要掃描網(wǎng)絡(luò)中的計(jì)算機(jī),掃描就可以使用大名鼎鼎的Nmap了,使用掃描獲得的信息,db_autopwn會(huì)使用Metaspoit攻擊庫(kù)特征匹配已知的漏洞,并自動(dòng)使用對(duì)應(yīng)的攻擊程序發(fā)起攻擊,如果成功就會(huì)顯示“pwn”,這個(gè)時(shí)候就獲得一個(gè)系統(tǒng)shell了。
db_autopwn這個(gè)工具好處多多,在黑客界,它是廣為使用的工具了,而且它是免費(fèi)的,發(fā)現(xiàn)了漏洞后,你就可以對(duì)癥下藥,及時(shí)打好補(bǔ)丁,然后再進(jìn)行測(cè)試。但在使用時(shí)也要注意,一是如果服務(wù)沒(méi)有運(yùn)行在默認(rèn)的端口上,那它是不能發(fā)現(xiàn)漏洞的,二是可能會(huì)引起意外,如將服務(wù)器整崩潰。
下面來(lái)看一下具體的執(zhí)行步驟:
# cd /pentest/exploits/framework3 (進(jìn)入Metasploit Framework文件夾)
# ./msfconsole (啟動(dòng)Metasploit)
# load db_sqlite3
#db_create Nmapresults (創(chuàng)建存儲(chǔ)掃描結(jié)果)
# db_Nmap [target] (掃描目標(biāo)主機(jī),使用真實(shí)的目標(biāo)主機(jī)ip地址替換這里的[target])
# db_autopwn -t -p -e (嘗試攻擊默認(rèn)端口上的服務(wù))
# sessions –l (查看有漏洞的計(jì)算機(jī))
# sessions –i 1 (控制有漏洞的計(jì)算機(jī),這里的1表示只控制一臺(tái))
然后就會(huì)返回一個(gè)命令行界面,如:
[*] Starting interaction with 1……
Windows XP [Version 5.1.2600]
(C) Copyright 1985-2001 Microsoft Corp.
C:\WINDOWS\system32>
使用Nmap掃描網(wǎng)絡(luò)
db_autopwn通常是那些沒(méi)什么技術(shù)的人使用,我們一般稱其為“腳本小子”,而真正的高手在嘗試了一種方法外,還會(huì)嘗試其它方法。
攻擊者常常是先掃描目標(biāo)網(wǎng)絡(luò),看哪些計(jì)算機(jī)連接到網(wǎng)絡(luò)上的,打開(kāi)了什么端口,通常他們使用的工具就是Nmap,實(shí)際上前面講述db_autopwn時(shí)也使用到過(guò),Nmap本身是個(gè)命令行工具,但在BackTrack3中已經(jīng)集成了一個(gè)圖形化Nmap工具,即Zenmap.
在BackTrack3任務(wù)欄中的輸入框中輸入zenamp啟動(dòng)Zenamp,然后在目標(biāo)地址處輸入目標(biāo)系統(tǒng)的IP地址或IP子網(wǎng)范圍,如192.168.1.*,然后再選擇一個(gè)預(yù)置掃描選項(xiàng),保留默認(rèn)的強(qiáng)度掃描也可,最后點(diǎn)擊掃描按鈕開(kāi)始掃描,過(guò)幾分鐘就有結(jié)果了。
在界面的左側(cè)列表中顯示的是接入到網(wǎng)絡(luò)中的主機(jī),并以不同圖標(biāo)表示不同類型,右側(cè)列表中顯示了所選主機(jī)開(kāi)放的端口及對(duì)應(yīng)的服務(wù),如果你看到3389端口開(kāi)放,那多半是一臺(tái)Windows操作系統(tǒng),開(kāi)放了終端服務(wù),針對(duì)這些開(kāi)放的端口都有成套的攻擊程序。
使用Wireshark嗅探網(wǎng)絡(luò)
Nmap可以給你掃描出一個(gè)清晰的主機(jī)列表和開(kāi)放的端口,但它不能提供在網(wǎng)絡(luò)上傳輸?shù)臄?shù)據(jù)包內(nèi)容和敏感信息,這個(gè)時(shí)候就需要請(qǐng)出同樣是大名鼎鼎的Wireshark了,以前它的名字是Ethereal,它是一個(gè)開(kāi)源的網(wǎng)絡(luò)協(xié)議分析器,說(shuō)的通俗點(diǎn)就是網(wǎng)絡(luò)嗅探器。
在使用Wireshark開(kāi)始嗅探之前,先要選好測(cè)試機(jī)位于網(wǎng)絡(luò)的位置,因?yàn)橹粫?huì)將數(shù)據(jù)發(fā)送到目標(biāo)主機(jī)連接的端口上,如果位置沒(méi)有找好,那可能嗅探半天也沒(méi)什么收獲。因此開(kāi)始之前,先熟悉并分析一下你的網(wǎng)絡(luò)情況和硬件配置情況,注意有的Hub的工作機(jī)制也和交換機(jī)一樣了,所以不要認(rèn)為隨便接入一臺(tái)Hub連上就可以開(kāi)始嗅探了。
為了使測(cè)試變得順利可行,你最好在網(wǎng)絡(luò)部署一臺(tái)具有監(jiān)視端口的交換機(jī),因?yàn)楸O(jiān)視端口會(huì)捕獲到所有通過(guò)交換機(jī)的數(shù)據(jù)包。黑客都喜歡使用Wireshark,因?yàn)樗梢孕崽降接脩裘兔魑拿艽a,很多人都喜歡將密碼設(shè)置為和用戶名一致,或者在登陸多個(gè)系統(tǒng)時(shí)使用同一個(gè)用戶名,這樣就給了黑客以可乘之機(jī)。Wireshark可以嗅探大部分網(wǎng)絡(luò)應(yīng)用,包括MSN通訊內(nèi)容。