攻擊的實(shí)施階段
1. 獲得權(quán)限
當(dāng)收集到足夠的信息之后,攻擊者就要開始實(shí)施攻擊行動了。作為破壞性攻擊,只需利用工具發(fā)動攻擊即可。而作為入侵性攻擊,往往要利用收集到的信息,找到其系統(tǒng)漏洞,然后利用該漏洞獲取一定的權(quán)限。有時(shí)獲得了一般用戶的權(quán)限就足以達(dá)到修改主頁等目的了,但作為一次完整的攻擊是要獲得系統(tǒng)最高權(quán)限的,這不僅是為了達(dá)到一定的目的,更重要的是證明攻擊者的能力,這也符合黑客的追求。
能夠被攻擊者所利用的漏洞不僅包括系統(tǒng)軟件設(shè)計(jì)上的安全漏洞,也包括由于管理配置不當(dāng)而造成的漏洞。前不久,因特網(wǎng)上應(yīng)用最普及的著名www服務(wù)器提供商Apache的主頁被黑客攻破,其主頁面上的 Powered by Apache圖樣(羽毛狀的圖畫)被改成了Powered by Microsoft Backoffice的圖樣,那個(gè)攻擊者就是利用了管理員對Webserver用數(shù)據(jù)庫的一些不當(dāng)配置而成功取得最高權(quán)限的。
當(dāng)然大多數(shù)攻擊成功的范例還是利用了系統(tǒng)軟件本身的漏洞。造成軟件漏洞的主要原因在于編制該軟件的程序員缺乏安全意識。當(dāng)攻擊者對軟件進(jìn)行非正常的調(diào)用請求時(shí)造成緩沖區(qū)溢出或者對文件的非法訪問。其中利用緩沖區(qū)溢出進(jìn)行的攻擊最為普遍,據(jù)統(tǒng)計(jì)80%以上成功的攻擊都是利用了緩沖區(qū)溢出漏洞來獲得非法權(quán)限的。關(guān)于緩沖區(qū)溢出在后面用專門章節(jié)來作詳細(xì)解釋。
無論作為一個(gè)黑客還是一個(gè)網(wǎng)絡(luò)管理員,都需要掌握盡量多的系統(tǒng)漏洞。黑客需要用它來完成攻擊,而管理員需要根據(jù)不同的漏洞來進(jìn)行不同的防御措施。了解最新最多的漏洞信息,可以到諸如Rootshell(www.rootshell.com)、Packetstorm(packetstorm.securify.com)、Securityfocus(www.securityfocus.com)等網(wǎng)站去查找。
2. 權(quán)限的擴(kuò)大
系統(tǒng)漏洞分為遠(yuǎn)程漏洞和本地漏洞兩種,遠(yuǎn)程漏洞是指黑客可以在別的機(jī)器上直接利用該漏洞進(jìn)行攻擊并獲取一定的權(quán)限。這種漏洞的威脅性相當(dāng)大,黑客的攻擊一般都是從遠(yuǎn)程漏洞開始的。但是利用遠(yuǎn)程漏洞獲取的不一定是最高權(quán)限,而往往只是一個(gè)普通用戶的權(quán)限,這樣常常沒有辦法做黑客們想要做的事。這時(shí)就需要配合本地漏洞來把獲得的權(quán)限進(jìn)行擴(kuò)大,常常是擴(kuò)大至系統(tǒng)的管理員權(quán)限。
只有獲得了最高的管理員權(quán)限之后,才可以做諸如網(wǎng)絡(luò)監(jiān)聽、打掃痕跡之類的事情。要完成權(quán)限的擴(kuò)大,不但可以利用已獲得的權(quán)限在系統(tǒng)上執(zhí)行利用本地漏洞的程序,還可以放一些木馬之類的欺騙程序來套取管理員密碼,這種木馬是放在本地套取最高權(quán)限用的,而不能進(jìn)行遠(yuǎn)程控制。例如一個(gè)黑客已經(jīng)在一臺機(jī)器上獲得了一個(gè)普通用戶的賬號和登錄權(quán)限,那么他就可以在這臺機(jī)器上放置一個(gè)假的su程序。一旦黑客放置了假su程序,當(dāng)真正的合法用戶登錄時(shí),運(yùn)行了su,并輸入了密碼,這時(shí)root密碼就會被記錄下來,下次黑客再登錄時(shí)就可以使用su變成root了。