黑客技術(shù)完全解析—我的黑色工具
在本文中,作者主要介紹了黑客用于攻擊網(wǎng)絡(luò)的一些工具。通過了解這些黑客工具的使用方法,讀者可以更好地保護自己網(wǎng)絡(luò)的安全。
為了幫助你更好地防范時刻發(fā)生的攻擊事件,本文描述了流行的黑客工具及有效的防范技術(shù),你可以利用這些技術(shù)來保障網(wǎng)絡(luò)的安全。
特別說明
本文不是在教你如何去攻擊他人的系統(tǒng),而是客觀描述了現(xiàn)實世界中發(fā)生的攻擊事件,并向你提供了抵御這些攻擊的方法。
由于這些工具可以在網(wǎng)上免費下載,并且它可能會損害你的系統(tǒng),因此,作者在文中論述某一工具時,并不表示他默許或是推薦你使用。作者提醒:在使用這些工具時,你一定要慎重、小心,而且你必須弄清楚源代碼的意思。
工具一:PasswordCrackers
PasswordCrackers因其用途廣泛而成為黑客使用的主流工具。實施口令破譯攻擊分為兩步,第一步:攻擊者首先從被攻擊對象的計算機里讀出一個加密口令檔案(大部分系統(tǒng),包括WindowsNT及UNIX,他們把口令加密后儲存在檔案系統(tǒng)內(nèi),以便當(dāng)用戶登錄時認證);第二步:攻擊者以字典為輔助工具,用PasswordCrackers開始嘗試去破譯口令。其辦法是把字典的每一項進行加密,然后兩者進行比較。假若兩個加密口令相符,黑客就會知道該口令;假若兩者不符,此工具繼續(xù)重復(fù)工作,直到字典最后一項。有時,黑客們甚至?xí)嚤槊恳环N字母的組合。使用該種方法,口令破譯的速度與加密及比較的速度有關(guān)。
工具二:L0phtCrack
L0phtCrack由黑客組L0phtHeavyIndustries撰寫,于1997年推出。它以共享軟件(Shareware)的形式傳播。它專門用于破譯WindowsNT口令。此工具性能強大,又很容易使用,初學(xué)者只需少量指點便能破譯口令。1999年1月推出的L0phtCrack2.5版優(yōu)化了DES密碼程序,軟件性能也隨之提高(比舊版本快450%)。據(jù)稱,一臺450MHzPentiumII計算機一天內(nèi)就可破譯所有字母數(shù)字混合的口令。
L0phtCrack可通過多種渠道得到加密的口令檔案。只要黑客運行一個包含L0phtCrack的程序,或從windowNT系統(tǒng)管理員的備份軟盤里拷貝一個程序,就可以得到WindowsNT系統(tǒng)里的SAM數(shù)據(jù)庫。L0phtCrack最新版的GUI可以從網(wǎng)絡(luò)中得到加密的Windows口令。當(dāng)你登錄到NT域,你的口令會被用哈希算法送到網(wǎng)絡(luò)上。L0phtCrack的內(nèi)置嗅探器很容易找到這個加密值并破譯它。
因為這個工具對IT從業(yè)人員也有極大用處,所以從L0phtCrack2.0版以后開始收取注冊費。最新版可以有15天免費試用期,超過15日則收取100美金,并且有多個破譯程序以供選擇,有些收取費用,有些可從自由軟件庫中得到。
L0phtCrack的防范
抵御口令破譯攻擊的最好方法是執(zhí)行強制的口令防范政策。例如要求用戶設(shè)想的口令很難被猜到。如口令應(yīng)該至少有8位,包括數(shù)字、字母及特殊字符(如!@#$%);口令應(yīng)不包括字典字。為了進一步保障安全,一些口令自動設(shè)置工具可以幫助用戶設(shè)計復(fù)雜的口令。
此外,你應(yīng)該時常用口令破譯工具檢查公司的口令是否安全。當(dāng)然,只有安全管理人員或是經(jīng)他們授權(quán)的人員才能允許使用該種工具,而且必須得到書面的批準(zhǔn)。同時你也應(yīng)當(dāng)事先對口令不幸被破譯的用戶做出解決方案,選擇向他發(fā)Email,還是親自拜訪用戶,向他解釋你的口令政策。這些問題在進行口令評估前應(yīng)考慮完全。
工具三:WarDialers
很多公司非常重視防火墻的安全。然而,這個堅固的防線只封住了網(wǎng)絡(luò)的前門,但內(nèi)部網(wǎng)中不注冊的調(diào)制解調(diào)器卻向入侵者敞開了“后門”。WarDialers能迅速地找出這些調(diào)制解調(diào)器,隨即攻入網(wǎng)絡(luò)。因此,它成為一個非常受入侵者歡迎的工具。
WarDialer因電影“WarGames”而一舉成名。它的攻擊原理非常簡單:不斷以順序或亂序撥打電話號碼,尋找調(diào)制解調(diào)器接通后熟悉的回應(yīng)音。一旦WarDialers找到一大堆能接通的調(diào)制解調(diào)器后,黑客們便撥號入網(wǎng)繼續(xù)尋找系統(tǒng)內(nèi)未加保護的登錄或容易猜測的口令。WarDialers首選攻擊對象是“沒有口令”的PC遠程管理軟件。這些軟件通常是由最終用戶安裝用來遠程訪問公司內(nèi)部系統(tǒng)的。這些PC遠程控制程序當(dāng)用到不安全的調(diào)制解調(diào)器時是異常脆弱的。
THC-Scan是TheHacker’sChoice(THC)Scanner的縮寫。這個WarDialers工具是由“vanHauser”撰寫的。它的功能非常齊全。THC-Scan2.0版于1998年圣誕節(jié)推出,THC-Scan與Toneloc(由“MinorThreat”及“MuchoMaas”撰寫)用途近似。THC-Scan與其他普通WarDialers工具不同,它能自動檢測調(diào)制解調(diào)器的速度、數(shù)據(jù)位、校驗位及停止位。此工具也嘗試去判斷被發(fā)現(xiàn)的計算機所使用的操作系統(tǒng)。而且,THC-Scan有能力確認什么時候能再有撥號音,這樣,黑客們便可以不經(jīng)過你的PBX就可以撥打免費電話。
WarDialers的防范
當(dāng)然,最有效防范措施就是使用安全的調(diào)制解調(diào)器。取消那些沒有用途的調(diào)制解調(diào)器。且用戶必須向IT部門注冊后才能使用調(diào)制解調(diào)器。對那些已注冊并且只用作外發(fā)的調(diào)制解調(diào)器,就將公司的PBX的權(quán)限調(diào)至只允許外撥。每個公司應(yīng)有嚴格的政策描述注冊的調(diào)制解調(diào)器并控制PBX。由于市場零售店內(nèi)有使用方便、價格便宜的數(shù)字調(diào)制解調(diào)器出售,用戶也能把調(diào)制解調(diào)器安裝在只有數(shù)字線的PBX上使用。
除此之外,你還要定期作滲透測試,找出電話交換器內(nèi)不合法的調(diào)制解調(diào)器。選用一個好的工具去尋找與網(wǎng)絡(luò)連接的調(diào)制解調(diào)器。對于被發(fā)現(xiàn)、但未登記的調(diào)制解調(diào)器,要么拿掉它們,要么重新登記。
#p#工具四:NetCat
NetCat是一個用途廣泛的TCP及UDP連接工具。它是由“Hobbit”于1995年為UNIX編寫的,于1997年推出。對系統(tǒng)管理人員及網(wǎng)絡(luò)調(diào)試人員而言,它是一個非常有用的工具。當(dāng)然,它也是一個攻擊網(wǎng)絡(luò)的強大工具。
NetCat有許多功能,號稱黑客們的“瑞士軍刀”。與功能強大的UNIX腳本語言結(jié)合時,NetCat是制造網(wǎng)絡(luò)工具的基本組件。NetCat的基本程序可以以聆聽式和客戶式兩種方式運行。當(dāng)以聆聽式運行時,NetCat是一個服務(wù)器進程,等待與指定的TCP或UDP端口連接。而以客戶式運行時,NetCat能連接到用戶指定的任何端口。
NetCat在一個系統(tǒng)內(nèi)以聆聽式運行,同時在另一系統(tǒng)內(nèi)以客戶式運行時,NetCat可以發(fā)動很多攻擊。它可以在任何端口提供后門登錄,如UDP端口53。從網(wǎng)絡(luò)包角度來分析,這種登錄被看成是一系列DNS問答,其實這是真正的后門登錄。當(dāng)在兩系統(tǒng)內(nèi)以兩種方式同時運行時,NetCat可以在任何端口架構(gòu)快捷、簡單的檔案傳輸機制。
NetCat也可以是源路包。當(dāng)NetCat以客戶方式運行時,它是個UDP及TCP端口掃描器。當(dāng)它發(fā)現(xiàn)系統(tǒng)內(nèi)有打開的端口時,NetCat會輕而易舉地與這些端口連接。
NetCatNT版有一個獨特之處:它可以將自己綁定在當(dāng)前進程的端口前端。利用這一功能可以非常有效地向服務(wù)器或Web服務(wù)器發(fā)動攻擊。這種連接也可以因拒絕服務(wù)攻擊(Denial-of-serviceDoS)而被斷掉。有時黑客把自己的請求送到正當(dāng)?shù)姆?wù)器進程前,編寫特別的程序用來尋找敏感數(shù)據(jù)(口令、銀行帳號等)。
NetCat防范
最佳防范NetCat的方法是“最小特權(quán)原理”(昵稱為“polyp”)(PrincipleofLeastPriviledges)。也就是說,不讓不需要的端口經(jīng)過防火墻,只有那些你允許通過的端口可以與指定的主機連接。例如:經(jīng)過防火墻的DNS查詢,只打開需要此服務(wù)的UDP53端口(通常是一個內(nèi)部DNS服務(wù)器把這些查詢轉(zhuǎn)出到Internet)。這樣就可以防止攻擊者有機會把NetCat包送到你內(nèi)部網(wǎng)的任何主機上。
至于那些可以被外部訪問的系統(tǒng),在防范NetCat攻擊時,你要清楚這些機器上已運行的進程,并且仔細調(diào)查那些不尋常進程,因為它們可能是后門聆聽者。你必須定期檢查端口,以便發(fā)現(xiàn)有沒有聆聽者侵入你的機器。
為了防止回放攻擊,所有應(yīng)用系統(tǒng)應(yīng)該為每條消息(包括webcookies、表單或者是原始數(shù)據(jù))蓋上時間印及順序號碼。所有消息的時間印及順序號應(yīng)經(jīng)過密碼完整性測試,確保沒有被修改或回放。
工具五:SessionHijacking
很多應(yīng)用系統(tǒng)采用命令行登錄是不安全的,尤其是telnet、rsh、rlogin及FTP程式,它們?nèi)呛诳凸魧ο?。任何一個黑客在連接了客戶與服務(wù)器之間的網(wǎng)段后,可以用SessionHijacking工具接管會話。
當(dāng)一個合法用戶登錄到命令行進行會話時,黑客可以找到此會話并馬上代表用戶接管此會話,重新連接客戶,這樣黑客便完全控制這個登錄,進而黑客成為合法用戶。而真正的用戶會簡單地認為網(wǎng)絡(luò)出故障了,從而會斷掉會話。
黑客圈里有大量此種黑客工具,最新的有“Kra”于1998年11月編寫的Hunt,還有“daemon9”編寫的juggernaut,它們均提供基本的SessionHijacking功能。
SessionHijacking防范
對于敏感的會話通信(如防火墻的遠程管理、PKI或是其他重要部件的管理),選用一個有密碼認證功能的工具把整個會話加密是一個好選擇。SecureShell(SSH)就提供這些功能。VPN產(chǎn)品也提供認證及會話加密。黑客沒有在SSH或VPN工具里所用的鑰匙便無法進行會話攻擊。
其他攻擊工具
ROOTEXPLOITS
攻擊者利用ROOTEXPLOITS,使用普通UNIX帳號訪問超級用戶從而接管機器。攻擊者在UNIX系統(tǒng)里有無數(shù)方法把自己升級。
ROOTEXPLOITS的防范
安全從業(yè)人員及系統(tǒng)管理員應(yīng)參照CarnegieMellon的CERT(cert.org)及bugtrag(subscribe:listserve@netspace.org)的安全簡訊,密切注意新的exploits。當(dāng)新的攻擊被擊破后,應(yīng)迅速并且有步驟地為受影響的機器進行測試和安裝廠家的補丁程序。對于對外公開使用的Web服務(wù)器、DNS系統(tǒng)、防火墻等,應(yīng)該使用基于主機的安全監(jiān)控軟件檢測尋找根目錄的用戶。
【編輯推薦】