直播中
對(duì)公司或組織的計(jì)算機(jī)系統(tǒng)進(jìn)行的攻擊有各種形式,例如電子欺騙、smurf攻擊以及其它類型的拒絕服務(wù)(DoS)攻擊。這些攻擊被設(shè)計(jì)成破壞或中斷您的運(yùn)營系統(tǒng)的使用。本文討論一種廣為流傳的攻擊形式,稱為密碼破解。
密碼破解是用以描述在使用或不使用工具的情況下滲透網(wǎng)絡(luò)、系統(tǒng)或資源以解鎖用密碼保護(hù)的資源的一個(gè)術(shù)語。本文將研究什么是密碼破解、為什么攻擊者會(huì)這樣做、他們?nèi)绾芜_(dá)到目的以及如何保護(hù)您自己。我將簡要研究攻擊者自身:他們的習(xí)性和動(dòng)機(jī)。通過對(duì)幾種方案的研究,我將描述他們部署的一些技術(shù)、幫助他們攻擊的工具以及密碼破解者是如何從內(nèi)部和外部侵犯公司基礎(chǔ)結(jié)構(gòu)的。最后,文章提供了一張檢查表以幫助您免遭密碼破解。
在研究這樣做的一些方法之前,讓我們首先了解攻擊者的想法并研究他們?yōu)槭裁聪朐L問您的網(wǎng)絡(luò)和系統(tǒng)。
攻擊者:他們?nèi)绾我约盀楹芜M(jìn)行攻擊
關(guān)于黑客(hacker)的定義仍然爭論不休。黑客可以是任何對(duì)基于計(jì)算機(jī)的技術(shù)有濃厚興趣的人;它未必定義想進(jìn)行傷害的人。詞匯攻擊者可用來描述惡意黑客。攻擊者的另一個(gè)詞匯是黑帽(black hat)。安全分析師通常稱為白帽(white hat),白帽分析是為防御目的而使用的密碼破解。
攻擊者的動(dòng)機(jī)差別很大。有些聲明狼籍的黑客是高中生,他們?cè)诘叵率依锏碾娔X前尋找利用計(jì)算機(jī)系統(tǒng)的漏洞的方法。其它攻擊者是尋求報(bào)復(fù)公司的心懷不滿的雇員。還有另外一些攻擊者完全出于尋求刺激性的挑戰(zhàn)目的,想滲透保護(hù)良好的系統(tǒng)。
攻擊方法
密碼破解不一定涉及復(fù)雜的工具。它可能與找一張寫有密碼的貼紙一樣簡單,而這張紙就貼在顯示器上或者藏在鍵盤底下。另一種蠻力技術(shù)稱為“垃圾搜尋(dumpster diving)”,它基本上就是一個(gè)攻擊者把垃圾搜尋一遍以找出可能含有密碼的廢棄文檔。
當(dāng)然,攻擊者可以涉及更高級(jí)的復(fù)雜技術(shù)。這里是一些在密碼破解中使用的更常見的技術(shù):
接下來,研究一下攻擊者用來闖入系統(tǒng)的一些工具。
專業(yè)工具
最常用的工具之一是L0phtCrack(現(xiàn)在稱為LC4)。L0phtCrack是允許攻擊者獲取加密的Windows NT/2000 密碼并將它們轉(zhuǎn)換成純文本的一種工具。NT/2000密碼是密碼散列格式,如果沒有諸如L0phtCrack 之類的工具就無法讀取。它的工作方式是通過嘗試每個(gè)可能的字母數(shù)字組合試圖破解密碼。
另一個(gè)常用的工具是協(xié)議分析器(最好稱為網(wǎng)絡(luò)嗅探器,如Sniffer Pro或Etherpeek),它能夠捕獲它所連接的網(wǎng)段上的每塊數(shù)據(jù)。當(dāng)以混雜方式運(yùn)行這種工具時(shí),它可以“嗅探出”該網(wǎng)段上發(fā)生的每件事,如登錄和數(shù)據(jù)傳輸。正如您稍后將會(huì)看到的,這可能嚴(yán)重地?fù)p害網(wǎng)絡(luò)安全性,使攻擊者捕獲密碼和敏感數(shù)據(jù)。
讓我們研究一些方案,分析攻擊者如何發(fā)起攻擊以及如何停止或預(yù)防他們。我將首先描述兩種涉及內(nèi)部攻擊的方案(即,在組織內(nèi)部發(fā)起的攻擊),然后研究涉及外部攻擊的兩種方案。
內(nèi)部攻擊
內(nèi)部攻擊者是解密攻擊最常見的來源,因?yàn)楣粽呔哂袑?duì)組織系統(tǒng)的直接訪問權(quán)。第一種方案研究的是攻擊者是心懷不滿的雇員的情況。攻擊者,一名經(jīng)驗(yàn)豐富的系統(tǒng)管理員,在工作中遇到了問題,而拿她自己管理、保護(hù)的系統(tǒng)發(fā)泄。
示例:心懷不滿的雇員
Jane Smith是一名經(jīng)驗(yàn)豐富的且在技術(shù)上有完善的記錄證明的系統(tǒng)管理員,她被公司雇傭在深夜運(yùn)行備份磁帶。您的公司,作為一家 ISP,擁有非常龐大的數(shù)據(jù)中心,大約4000多個(gè)系統(tǒng)都由一個(gè)網(wǎng)絡(luò)運(yùn)營中心(Network Operations Center)監(jiān)控。Jane和另外兩名技術(shù)人員一起工作以監(jiān)控通宵備份,并且在早班之前倒完磁帶。他們彼此獨(dú)立工作:一名技術(shù)員負(fù)責(zé)UNIX 服務(wù)器,一名技術(shù)員負(fù)責(zé)全部Novell服務(wù)器,而Jane負(fù)責(zé)Windows 2000服務(wù)器。
Jane已經(jīng)工作了六個(gè)月并且是一名后起之秀。她來得很早,走得很晚,并且曾請(qǐng)求轉(zhuǎn)到公司的另一個(gè)部門。問題是那時(shí)沒有空位子。在上個(gè)月,您(安全分析師)發(fā)現(xiàn) Cisco路由器和UNIX服務(wù)器上的登錄嘗試的數(shù)量有大幅增加。您實(shí)現(xiàn)了CiscoSecure ACS,所以可以對(duì)嘗試進(jìn)行審計(jì),您發(fā)現(xiàn)它們大部分出現(xiàn)在早上3點(diǎn)鐘。
您產(chǎn)生了懷疑,但作為一名安全分析師,您不能在沒有證據(jù)的情況下到處指證。
一名優(yōu)秀的安全分析師從深入研究問題著手。您發(fā)現(xiàn)攻擊出自高手,并且出現(xiàn)在Jane 當(dāng)班期間,正好在她完成倒帶任務(wù)之后,在日班小組到來之前,她有一個(gè)小時(shí)的時(shí)間學(xué)習(xí)和閱讀。所以您決定請(qǐng)夜班經(jīng)理夜晚監(jiān)督 Jane。三個(gè)星期的嚴(yán)密監(jiān)督之后,您發(fā)現(xiàn)攻擊已經(jīng)停止了。您的懷疑是正確的。正是Jane試圖登錄到Cisco路由器和UNIX服務(wù)器中。
一名優(yōu)秀的安全分析師還需要使用一種好的審計(jì)工具(如Tacacs+)來記錄攻擊。Tacacs+是由諸如CiscoSecure ACS之類的應(yīng)用程序所使用的協(xié)議,該協(xié)議強(qiáng)制授權(quán)(Authorization)、可計(jì)帳性(Accountability)和認(rèn)證(Authentication)(簡稱 AAA)。如果您具有授權(quán),則需要對(duì)請(qǐng)求訪問的人進(jìn)行授權(quán)以訪問系統(tǒng)。如果您具有認(rèn)證,則需要對(duì)訪問資源的用戶進(jìn)行認(rèn)證以驗(yàn)證他們是否有訪問的權(quán)利和權(quán)限。如果同時(shí)被授權(quán)和認(rèn)證會(huì)發(fā)生什么呢?您必須具有可計(jì)帳的。單獨(dú)計(jì)算登錄數(shù)通過強(qiáng)制攻擊者保持可計(jì)帳的、被認(rèn)證及被授權(quán),從而解決了許多密碼破解問題。
接下來,我將給出一個(gè)老的(但仍廣泛使用的)攻擊示例,它就在網(wǎng)下嗅探密碼。您可以研究一下網(wǎng)絡(luò)主管的Cisco路由器和交換機(jī)是如何被公司中的Help Desk技術(shù)人員破解的。
示例:Help Desk技術(shù)人員
Tommy被雇傭擔(dān)任Help Desk技術(shù)員,他和下班后的Help Desk人員一起工作。下班后的Help Desk人員由大約10 名技術(shù)員組成,他們負(fù)責(zé)公司需要在下班期間支持的8個(gè)遠(yuǎn)程站點(diǎn)。Tommy總是帶著他的筆記本電腦上班。當(dāng)經(jīng)理問及此事時(shí),Tommy 解釋說他用其休息時(shí)間準(zhǔn)備一個(gè)認(rèn)證考試。這似乎是無害的并得到了批準(zhǔn),盡管公司對(duì)在未經(jīng)公司安全檢查就從外部將機(jī)器帶入公司網(wǎng)絡(luò)的行為有一條公司內(nèi)的安全制度。
最終,一個(gè)監(jiān)視器捕獲了Tommy在離開一間小配線房時(shí)在手臂下藏著某些東西。但由于無人報(bào)告丟失任何東西,無法證明Tommy犯了什么錯(cuò)。當(dāng)Help Desk經(jīng)理詢問Tommy為什么出現(xiàn)在配線房時(shí),他說誤把配線房當(dāng)成了休息室。
公司安全經(jīng)理Erika看到了由負(fù)責(zé)大樓安全的門衛(wèi)提交的報(bào)告。她想知道Tommy在配線房干什么,并且對(duì)Tommy向Help Desk 經(jīng)理的回答感到懷疑。檢查配線房時(shí),她發(fā)現(xiàn)從其中一個(gè)配線板上垂下一根被拔下的接線電纜以及一個(gè)空的集線器端口。當(dāng)她將電纜插回去時(shí),鏈路燈還是不亮,這意味著這是一個(gè)死端口。電纜管理員Velcro將所有其它電纜都整齊地捆綁在一起。憑著Erika 多年經(jīng)驗(yàn)以及對(duì)安全利用的敏銳意識(shí),她確切地知道發(fā)生了什么。
Erika假設(shè)Tommy 在未被發(fā)現(xiàn)的情況下將其筆記本電腦帶入了配線房。他很有可能尋找集線器上的一個(gè)死端口,然后插上安裝了包嗅探器的筆記本電腦,該嗅探器可以不加選擇地拾取網(wǎng)段上的通信量。稍后他返回取走了電腦(被監(jiān)視器捕捉到),在保存捕捉文件后拿回家進(jìn)行分析。
使用公司的安全制度,她找到Tommy并說明了所有非法進(jìn)入公司的個(gè)人財(cái)產(chǎn)(如筆記本電腦和掌上電腦)都需要進(jìn)行檢查。由于Tommy本不該帶入他的筆記本電腦,所以將它交給了Erika。經(jīng)過仔細(xì)檢查,Erika發(fā)現(xiàn)了下列跟蹤譯碼,如圖1中所示。
經(jīng)過對(duì)Sniffer Pro分析器十六進(jìn)制窗格的嚴(yán)格檢查,在圖2中的窗格的右邊清晰地顯示了ASCII數(shù)據(jù)。當(dāng)連接到配線房的交換機(jī)時(shí),Tommy通過telnet會(huì)話連接在運(yùn)行配置。由于 telnet協(xié)議是不安全的且通過明文發(fā)送,所以很容易看到密碼“cisco”。
這是最基本的安全性原則之一:不要使用產(chǎn)品名稱作為密碼。但無論原則如何基本,奇怪的是還是經(jīng)常有人這樣做。
接下來,請(qǐng)注意某些外部威脅
外部攻擊
外部攻擊者是那些必須透過您的“深度防御”試圖闖入您系統(tǒng)的人。他們做起來并不象內(nèi)部攻擊者那樣容易。第一種方案涉及一種很常見的外部攻擊形式,稱為網(wǎng)站涂改。這一攻擊使用密碼破解來滲透攻擊者想破壞的系統(tǒng)。另一個(gè)可能的密碼破解攻擊是攻擊者嘗試通過社交工程(Social Engineering)獲取密碼。社交工程是哄騙一個(gè)毫無疑慮的管理員向攻擊者說出帳戶標(biāo)識(shí)和密碼的欺騙方法。讓我們對(duì)這兩種方案都研究一下。
示例:網(wǎng)站主頁涂改
圖3演示了外部密碼破解的一種很常見和簡單的示例:涂改網(wǎng)站的主頁。它不費(fèi)多少力氣,通常只要通過利用未正確設(shè)置其權(quán)限的Internet Information Server (IIS)就可以完成。攻擊者只要轉(zhuǎn)至工作站并嘗試使用HTML編輯工具攻擊IIS 服務(wù)器。當(dāng)試圖通過因特網(wǎng)連接到該站點(diǎn)時(shí),攻擊者使用一個(gè)密碼發(fā)生器工具(如L0phtCrack),它啟動(dòng)對(duì)服務(wù)器的蠻力攻擊。
您公司的聲譽(yù)處于危險(xiǎn)中。如果業(yè)務(wù)供應(yīng)商和關(guān)聯(lián)企業(yè)感到您的數(shù)據(jù)保存在不安全的服務(wù)器上,他們將不再信任您。請(qǐng)務(wù)必同等看待內(nèi)部和外部威脅。
示例:社交工程騙局
不需要工具而破解密碼的騙局稱為社交工程攻擊。請(qǐng)閱讀這種方案以了解更多信息。
Jon是一家大公司的新任安全分析師。他的首要工作是測試公司的安全狀態(tài)。他當(dāng)然要讓管理層知道他將要做什么(這樣,他自己就不會(huì)被當(dāng)成攻擊者)。他想知道要闖入網(wǎng)絡(luò)而不使用任何工具的難度如何。他嘗試兩個(gè)單獨(dú)但破壞性相同的攻擊。
作為大公司的新雇員,很多人還不認(rèn)識(shí)Jon,這使他能容易地完成第一個(gè)社交工程攻擊。他的第一個(gè)目標(biāo)是Help Desk。Jon給 Help Desk打了一個(gè)常規(guī)電話,作為假想的遠(yuǎn)程用戶要求密碼重設(shè)。由于Jon 知道公司的命名約定是用戶的名字加上其姓的第一個(gè)字母,他已經(jīng)有了他需要的一半信息。CIO的名字是Jeff,他的姓是 Ronald,因此他的登錄標(biāo)識(shí)是JeffR
。這條信息可以從公司的電話目錄中輕易地得到。Jon假裝成CIO 打電話給Help Desk并要求密碼重設(shè),因?yàn)橥浟嗣艽a。Help Desk 技術(shù)人員每天都要重設(shè)上百次被遺忘的密碼,然后回電讓請(qǐng)求者知道其新密碼,這對(duì)于他們來說是常規(guī)工作。5分鐘后,Help Desk技術(shù)人員給 Jon回電話,告訴他新的密碼是“friday”,因?yàn)榍『檬切瞧谖濉?分鐘之內(nèi),Jon就進(jìn)入了服務(wù)器上CIO的共享文件及其電子郵件了。
Jon的下一個(gè)社交工程攻擊涉及他的一個(gè)好朋友,此人為當(dāng)?shù)仉娫捁竟ぷ?。Jon在他休假時(shí)借了他的衣服、皮帶和徽章。Jon 穿著他的新衣服進(jìn)入公司存放所有災(zāi)難恢復(fù)路由器和服務(wù)器的另一部分場地。這個(gè)硬件包含公司的所有當(dāng)前數(shù)據(jù)的有效副本并且認(rèn)為是機(jī)密。Jon 穿著他的電信制服走入場地安全辦公室,然后說明他是由本地交換運(yùn)營商(Local Exchange Carrier (LEC))派來的,因?yàn)榭磥黼娐窂碾娫捁拘纬闪嘶芈贰K枰辉试S進(jìn)入數(shù)據(jù)中心,這樣他可以檢查在Smart Jack上是否有任何警報(bào)。
現(xiàn)場管理員陪同Jon到數(shù)據(jù)中心,甚至沒有檢查他的標(biāo)識(shí)。一旦進(jìn)入,管理員明智地站在一邊,這樣Jon開始了他的測試。幾分鐘后,Jon 通知管理員他必須打電話給辦公室并請(qǐng)他們?cè)龠\(yùn)行一些測試,以便能斷開到Smart Jack的回路并嘗試故障診斷。Jon讓管理員知道這將花費(fèi) 45分鐘,因此管理員向Jon提供了他的呼機(jī)號(hào),并請(qǐng)?jiān)贘on完成時(shí)呼他以讓他出來。Jon 現(xiàn)在成功地排除了他和數(shù)據(jù)中心沿墻的機(jī)架上排列的30臺(tái)服務(wù)器之間的唯一障礙。
Jon現(xiàn)在有幾個(gè)不同的機(jī)會(huì)。他可以轉(zhuǎn)至每個(gè)服務(wù)器,然后查找未加鎖的控制臺(tái)或者他可以將其筆記本電腦插入開放端口并開始嗅探。由于他確實(shí)想知道自己能走多遠(yuǎn),所以決定查找開放的控制臺(tái)?;?分鐘查看所有KVM槽后,他發(fā)現(xiàn)Windows NT服務(wù)器是作為域的備份域控制器(Backup Domain Controller)運(yùn)行的。Jon從包中拿出一張CD,然后將它放入服務(wù)器的CD托盤。他將L0phtCrack 安裝到公司域的BDC上,然后運(yùn)行字典攻擊。5分鐘之內(nèi),產(chǎn)生了如下密碼:Yankees。它表明首席管理員是一個(gè)紐約Yankee 迷。他現(xiàn)在已經(jīng)有了對(duì)公司最重要的信息的訪問權(quán)。
現(xiàn)在,研究一下這是如何做的。