• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      基于Hydra的遠(yuǎn)程服務(wù)器密碼探測(cè)技術(shù)及防御措施研究

      2020-07-22 09:37:20徐國(guó)天中國(guó)刑事警察學(xué)院
      警察技術(shù) 2020年4期
      關(guān)鍵詞:解碼黑客報(bào)文

      徐國(guó)天 中國(guó)刑事警察學(xué)院

      引言

      互聯(lián)網(wǎng)上存在種類(lèi)齊全、數(shù)量繁多的各類(lèi)網(wǎng)絡(luò)服務(wù)器,如存儲(chǔ)文件資源的FTP服務(wù)器、存儲(chǔ)電子郵件的SMTP服務(wù)器、存放網(wǎng)站的Web服務(wù)器,存儲(chǔ)商品信息的數(shù)據(jù)庫(kù)服務(wù)器、完成域名轉(zhuǎn)換任務(wù)的DNS服務(wù)器等等。這些服務(wù)器是互聯(lián)網(wǎng)的關(guān)鍵組成元素,承擔(dān)了重要的職責(zé),也是黑客攻擊的主要目標(biāo)。攻擊者嘗試通過(guò)暴力探測(cè)的方式得到遠(yuǎn)程服務(wù)器的登錄密碼,進(jìn)而竊取其上存儲(chǔ)的敏感信息、篡改重要數(shù)據(jù)、種植木馬程序,甚至完全控制目標(biāo)服務(wù)器。因此研究針對(duì)遠(yuǎn)程服務(wù)器的密碼暴力探測(cè)攻擊方式及其防御措施對(duì)維護(hù)信息網(wǎng)絡(luò)安全、打擊此類(lèi)違法犯罪活動(dòng)有重要意義。

      “黑雨”是早期比較知名的一種遠(yuǎn)程服務(wù)器密碼暴力探測(cè)工具,其設(shè)計(jì)思想如圖1(a)所示。它在一條TCP連接內(nèi)測(cè)試密碼字典中的所有密碼,直至找到正確的密碼或所有密碼測(cè)試一遍,未找到匹配密碼。在設(shè)計(jì)之初這款軟件取得了較大成功,成為最知名的遠(yuǎn)程服務(wù)器密碼探測(cè)工具。但隨著服務(wù)器軟件版本升級(jí),目前這種攻擊軟件已經(jīng)失效,原因如圖1(b)所示。現(xiàn)有服務(wù)器軟件不允許在一條TCP連接內(nèi)測(cè)試大量密碼,幾個(gè)密碼登錄失敗之后,服務(wù)器會(huì)發(fā)出一個(gè)RST報(bào)文將這條TCP連接異常中斷。TCP連接中斷之后“黑雨”軟件自動(dòng)結(jié)束運(yùn)行,再次啟動(dòng)后仍然是從密碼字典起始密碼開(kāi)始測(cè)試,這導(dǎo)致“黑雨”軟件無(wú)法完成密碼探測(cè)任務(wù)。

      目前比較有效的遠(yuǎn)程服務(wù)器密碼暴力探測(cè)工具是Hydra。Hydra一詞原指古希臘神話中的怪物“九頭蛇”,它天生九個(gè)頭,傳說(shuō)哪個(gè)頭被砍掉后會(huì)立即生長(zhǎng)出一個(gè)新的頭,因此被看作是不死的怪物。密碼暴力探測(cè)工具Hydra與怪物九頭蛇有共同的特征,它使用多條TCP連接進(jìn)行密碼測(cè)試,某條連接被異常中斷之后會(huì)自動(dòng)生成一條新的TCP連接,下文將對(duì)基于Hydra的遠(yuǎn)程服務(wù)器密碼探測(cè)技術(shù)進(jìn)行研究。

      一、基于Hydra的遠(yuǎn)程服務(wù)器密碼探測(cè)技術(shù)

      Hydra運(yùn)行后會(huì)生成多條TCP連接,每條TCP連接只測(cè)試幾個(gè)密碼,當(dāng)服務(wù)器發(fā)出RST報(bào)文關(guān)閉這條TCP連接后,Hydra會(huì)自動(dòng)生成一條新的TCP連接,從密碼字典中斷位置繼續(xù)測(cè)試任務(wù),直至所有密碼被測(cè)試一遍,或者找出了正確的登錄密碼。Hydra支持幾乎所有協(xié)議的在線密碼探測(cè),密碼探測(cè)的關(guān)鍵在于是否具有一個(gè)強(qiáng)大的字典文件。

      二、HTTP-POST參數(shù)提交方式分析

      目前互聯(lián)網(wǎng)上各種類(lèi)型的網(wǎng)站數(shù)量眾多、功能齊全,如電子商務(wù)站點(diǎn)、OA信息發(fā)布站點(diǎn)、網(wǎng)絡(luò)游戲站點(diǎn)、政府機(jī)關(guān)企事業(yè)單位的門(mén)戶網(wǎng)站等。這些站點(diǎn)均為用戶分配了相應(yīng)的賬戶信息,只有通過(guò)登錄認(rèn)證之后,才可以瀏覽、使用相應(yīng)的資源。各類(lèi)網(wǎng)頁(yè)中登錄密碼的探測(cè)成為黑客關(guān)注的焦點(diǎn),一些中、小規(guī)模站點(diǎn)(如政府機(jī)關(guān)、企事業(yè)單位門(mén)戶網(wǎng)站)未設(shè)置驗(yàn)證碼識(shí)別,同時(shí)未進(jìn)行登錄次數(shù)限制,Hydra可以針對(duì)這類(lèi)站點(diǎn)進(jìn)行密碼探測(cè)。

      以HTTP-GET方式提交的參數(shù)會(huì)出現(xiàn)在客戶主機(jī)的瀏覽器地址欄中,一些敏感信息例如賬戶名、密碼等不適合采用這種方式提交。這些敏感信息通常以POST方式提交給Web服務(wù)器,下面舉例說(shuō)明。

      如圖3所示,在上面的例子中,客戶首先向服務(wù)器發(fā)出一個(gè)GET請(qǐng)求報(bào)文,請(qǐng)求獲取“l(fā)ogin.html”。服務(wù)器通過(guò)一個(gè)HTTP應(yīng)答報(bào)文將“l(fā)ogin.html”返回給客戶??蛻糁鳈C(jī)的瀏覽器將“l(fā)ogin.html”解釋為一個(gè)登錄窗口,包含輸入用戶名、密碼的文本框和確定按鈕。

      客戶輸入用戶名、密碼,單擊確定按鈕之后,客戶機(jī)以HTTP-POST方式將賬戶信息發(fā)送給服務(wù)器端的“user.asp”?!皍ser.asp”使用Request.form()方法讀出用戶名(peter)和密碼(2480),然后通過(guò)一條Select數(shù)據(jù)庫(kù)查詢語(yǔ)句到User數(shù)據(jù)表中進(jìn)行檢索,發(fā)現(xiàn)與第一條記錄匹配,于是“user.asp”將“peter”用戶的相關(guān)信息通過(guò)一個(gè)HTTP的應(yīng)答數(shù)據(jù)報(bào)返回給客戶。

      客戶提交給服務(wù)器的HTTPPOST請(qǐng)求報(bào)文如圖4所示。HTTP首部的第一行表明提交方式為POST,Referer參數(shù)表明在這之前客戶訪問(wèn)了“l(fā)ogin.html”,客戶提交的賬戶信息包含在HTTP數(shù)據(jù)部分。

      三、Hydra探測(cè)網(wǎng)頁(yè)密碼設(shè)計(jì)思路分析

      用戶登錄網(wǎng)站存在成功和失敗兩種情況,這兩種情況下網(wǎng)站返回的應(yīng)答數(shù)據(jù)存在差別,Hydra在提交一組賬戶、密碼之后,通過(guò)檢測(cè)網(wǎng)站的返回?cái)?shù)據(jù)可以確定登錄是否成功。因此使用Hydra探測(cè)網(wǎng)頁(yè)密碼的關(guān)鍵環(huán)節(jié)是提取出登錄成功和登錄失敗兩種情況下服務(wù)器應(yīng)答數(shù)據(jù)的區(qū)別,并將這種區(qū)別設(shè)置到Hydra軟件中,使其能夠識(shí)別不同情況。

      登錄失敗情況下的通信流程如圖5所示,首先Hydra模擬客戶提交了一組錯(cuò)誤的賬戶、密碼數(shù)據(jù),服務(wù)器返回的第一個(gè)數(shù)據(jù)包是響應(yīng)代碼為100的HTTP-continue類(lèi)型應(yīng)答報(bào)文。第二個(gè)報(bào)文是響應(yīng)代碼為200的HTTP-OK報(bào)文,在這個(gè)數(shù)據(jù)包中攜帶了一段Vbscript腳本,它的作用是彈出一個(gè)對(duì)話框,顯示內(nèi)容為ERROR,內(nèi)容長(zhǎng)度為32個(gè)字節(jié)。登錄成功狀態(tài)下服務(wù)器返回的應(yīng)答數(shù)據(jù)中通常不會(huì)存在ERROR字符串,并且應(yīng)答報(bào)文的長(zhǎng)度也不會(huì)是32字節(jié),因此這兩個(gè)數(shù)值可以嘗試作為區(qū)分登錄成功和失敗情況下的采集點(diǎn)。

      登錄成功情況下的通信數(shù)據(jù)如圖6所示,可見(jiàn)服務(wù)器返回的應(yīng)答數(shù)據(jù)中不存在ERROR字符串,并且應(yīng)答報(bào)文的長(zhǎng)度也不是32字節(jié),進(jìn)一步說(shuō)明之前確定的采集點(diǎn)正確。Hydra只要識(shí)別出應(yīng)答報(bào)文中不存在ERROR或32字符串,即認(rèn)定登錄成功,否則認(rèn)定登錄失敗。

      并不是所有網(wǎng)頁(yè)密碼都可以使用Hydra進(jìn)行探測(cè),Hydra只能識(shí)別響應(yīng)代碼為200的HTTP-OK報(bào)文中攜帶的應(yīng)答數(shù)據(jù),而不能識(shí)別其它類(lèi)型響應(yīng)代碼中的數(shù)據(jù)。圖7顯示的例子中,無(wú)論登錄成功與否,服務(wù)器均返回代碼為302的HTTP-Object moved應(yīng)答報(bào)文,這類(lèi)網(wǎng)頁(yè)密碼就不能使用Hydra進(jìn)行探測(cè)。

      使用Hydra探測(cè)網(wǎng)頁(yè)密碼的執(zhí)行流程如圖8所示。首先任意輸入一組賬戶信息,登錄網(wǎng)站,捕獲登錄失敗報(bào)文。如果應(yīng)答報(bào)文響應(yīng)代碼為302,則該站點(diǎn)不能進(jìn)行密碼探測(cè)。

      如果黑客具有一組正確的登錄賬戶信息,則可以捕獲一組成功登錄數(shù)據(jù)報(bào),通過(guò)比較成功和失敗情況下服務(wù)器返回的應(yīng)答數(shù)據(jù),可以準(zhǔn)確計(jì)算出兩者的區(qū)別,獲得采集點(diǎn)。如果沒(méi)有合法賬戶信息,則需要估算采集點(diǎn),例如可以將應(yīng)答報(bào)文的長(zhǎng)度值作為采集點(diǎn)。最后使用密碼字典循環(huán)探測(cè),直至探測(cè)成功,或結(jié)束測(cè)試。

      四、基于Hydra的遠(yuǎn)程Web服務(wù)器密碼探測(cè)攻擊實(shí)例

      下面舉例說(shuō)明使用Hydra探測(cè)網(wǎng)頁(yè)密碼。準(zhǔn)備工作包括以Host-only方式啟動(dòng)兩臺(tái)Windows虛擬機(jī),一臺(tái)作為被攻擊的網(wǎng)站服務(wù)器,另一臺(tái)作為攻擊者使用的計(jì)算機(jī),配置IP地址實(shí)現(xiàn)網(wǎng)絡(luò)通信,在服務(wù)器端安裝一個(gè)測(cè)試用網(wǎng)站。

      (一)在黑客主機(jī)端捕獲登錄失敗的通信數(shù)據(jù),確定采集點(diǎn)

      在黑客主機(jī)端訪問(wèn)網(wǎng)站登錄頁(yè)面輸入一個(gè)真實(shí)存在的用戶名“jack”,密碼隨意輸入,點(diǎn)擊登錄。同時(shí)使用wireshark捕獲通信數(shù)據(jù)。在測(cè)試當(dāng)中Wireshark會(huì)捕獲大量通信數(shù)據(jù),為了便于分析,可以將特定TCP數(shù)據(jù)流提取出來(lái)。方法如下:首先定位POST數(shù)據(jù)包,賬戶和密碼就包含在這類(lèi)數(shù)據(jù)包中,單擊編輯,選擇查找數(shù)據(jù)幀,在過(guò)濾文本框中輸入POST,選擇在String中查找,單擊確定。在定位到的POST數(shù)據(jù)包上單擊鼠標(biāo)右鍵,選擇“follow tcp stream”,可以提取出這條TCP通信流上傳遞的數(shù)據(jù)。

      提取出的TCP流數(shù)據(jù)如圖9所示,這里顯示的是每個(gè)數(shù)據(jù)包的應(yīng)用層內(nèi)容??梢源_定登錄頁(yè)面URL地址為“/356e/access.asp”,包含登錄用戶名和密碼的POST數(shù)據(jù)為“username=jack&password=123456&url=login.asp&imageField.x=20&imageField.y=3”,服務(wù)器返回的第二個(gè)應(yīng)答報(bào)文響應(yīng)代碼為200,確定數(shù)據(jù)采集點(diǎn)為95。這些信息主要用于后面的密碼探測(cè)。

      (二)生成字典文件

      這里使用名為Superdic的字典生成工具形成一個(gè)電話號(hào)碼字典文件。選擇基本字符集,由于電話號(hào)碼由數(shù)字組成,因此字符集選擇數(shù)字。

      (三)使用Hydra探測(cè)密碼

      這里使用7.4版Hydra進(jìn)行密碼探測(cè)。如果在Win xp系統(tǒng)上使用8.1版Hydra,需要安裝Vc2005_x86。Hydra軟件的命令格式為:Hydra -l 用戶名-P字典文件-w超時(shí)間隔-t線程數(shù)-f-v 192.168.0.3 http-post-form “URL:賬戶數(shù)據(jù)格式:錯(cuò)誤返回值”。相關(guān)參數(shù)可以從第一步的Wireshark分析結(jié)果中提取。

      形成的探測(cè)指令如下:hydra -l jack -P c:superdic.txt -f-v192.168.0.3 http-post-form "/356e/access.asp:username=jack&password=^PASS^&url=login.asp&imageField.x=24&imageFie ld.y=2:95"。顯示探測(cè)出的密碼為86982480,如圖10所示。

      五、密碼探測(cè)防御措施及其面臨的安全問(wèn)題

      (一)采用行為驗(yàn)證和無(wú)感驗(yàn)證防止密碼探測(cè)

      為了防止惡意網(wǎng)絡(luò)攻擊和網(wǎng)絡(luò)刷單行為,早期采用圖形文字驗(yàn)證碼或簡(jiǎn)單的數(shù)學(xué)題等方式來(lái)識(shí)別提出訪問(wèn)請(qǐng)求的是機(jī)器還是人類(lèi),理論基礎(chǔ)是“只有人類(lèi)能識(shí)別圖像中的文字,完成數(shù)學(xué)運(yùn)算”。但隨著人工智能的快速發(fā)展,機(jī)器已經(jīng)能夠準(zhǔn)確識(shí)別圖像中的文字,完成簡(jiǎn)單的算數(shù)運(yùn)算。黑客可以采用人工方式或自動(dòng)識(shí)別方式來(lái)獲取驗(yàn)證碼。人工方式是密碼探測(cè)過(guò)程中,每測(cè)試一組密碼,將獲得的驗(yàn)證碼圖片發(fā)給一個(gè)人工解碼員,人工解碼員使用手機(jī)等終端識(shí)別驗(yàn)證碼,并將識(shí)別結(jié)果返回給黑客。這種方式下,黑客需要為人工解碼員支付服務(wù)費(fèi)。人工解碼服務(wù)一般由另一伙黑灰產(chǎn)業(yè)集團(tuán)經(jīng)營(yíng)。自動(dòng)解碼服務(wù)是黑客將圖片驗(yàn)證碼發(fā)送給自動(dòng)解碼系統(tǒng),解碼系統(tǒng)將識(shí)別結(jié)果返回給黑客主機(jī)。上述方式均可繞過(guò)圖文驗(yàn)證碼這道安全屏障。

      短信驗(yàn)證碼在一定程度上克服了圖文驗(yàn)證碼存在的不足,用戶登錄時(shí)輸入手機(jī)號(hào)碼,只有正確提交平臺(tái)發(fā)出的短信驗(yàn)證碼,才允許用戶登錄,這一措施比較有效地防止機(jī)器自動(dòng)批量登錄平臺(tái)。但是短信驗(yàn)證方式也可以人工自動(dòng)解碼,還面臨著短信被攔截的風(fēng)險(xiǎn)。同時(shí),對(duì)于用戶來(lái)說(shuō),每次登錄都要查看手機(jī)短信,也帶來(lái)不便捷的體驗(yàn)。

      目前,無(wú)感驗(yàn)證和行為驗(yàn)證越來(lái)越多地應(yīng)用于網(wǎng)絡(luò)平臺(tái)的登錄驗(yàn)證。無(wú)感驗(yàn)證是通過(guò)采集用戶的屏幕滑動(dòng),鍵盤(pán)輸入等行為數(shù)據(jù),通過(guò)對(duì)這些數(shù)據(jù)進(jìn)行統(tǒng)計(jì)分析來(lái)識(shí)別提交訪問(wèn)請(qǐng)求的是機(jī)器還是人類(lèi),甚至能根據(jù)使用習(xí)慣識(shí)別出具體人員信息,目前已有比較成熟的無(wú)感認(rèn)證產(chǎn)品。行為驗(yàn)證主要有拖動(dòng)式和點(diǎn)觸式驗(yàn)證,拖動(dòng)式就是提示用戶將滑塊拖動(dòng)到指定位置,點(diǎn)觸式是根據(jù)提示信息,依次點(diǎn)擊圖片中的文字或數(shù)字,進(jìn)而完成人機(jī)識(shí)別。在實(shí)際應(yīng)用當(dāng)中,可以將行為驗(yàn)證和無(wú)感驗(yàn)證結(jié)合應(yīng)用,大量用戶可以通過(guò)無(wú)感驗(yàn)證進(jìn)行識(shí)別,對(duì)這部分用戶來(lái)說(shuō)感覺(jué)不到驗(yàn)證過(guò)程。無(wú)感驗(yàn)證無(wú)法有效識(shí)別的部分登錄用戶,如新用戶或潛在的惡意用戶,可采用行為驗(yàn)證方式加以判斷。這種結(jié)合的驗(yàn)證方式在增強(qiáng)網(wǎng)絡(luò)防護(hù)的同時(shí),也帶來(lái)了便捷的用戶體驗(yàn)。

      (二)限制IP地址登錄失敗次數(shù)

      網(wǎng)絡(luò)服務(wù)器可以采用限制某一IP地址的登錄失敗次數(shù)來(lái)防止密碼探測(cè),網(wǎng)上銀行普遍采用這一措施防止密碼探測(cè)。這種方法是限制客戶的登錄次數(shù),如客戶連續(xù)登錄失敗三次,則將賬戶鎖定24小時(shí)。銀行采用的安全限制比較嚴(yán)格,一般的Web服務(wù)器在用戶連續(xù)登錄失敗后,會(huì)將賬戶鎖定幾分鐘,之后用戶可以再次嘗試登錄。這樣一個(gè)簡(jiǎn)單的防御機(jī)制可以有效解除密碼探測(cè)威脅。

      六、結(jié)語(yǔ)

      早期的探測(cè)技術(shù)是在一條TCP連接內(nèi)測(cè)試多組賬戶密碼對(duì),隨著操作系統(tǒng)的升級(jí)和漏洞修補(bǔ),這種方式已經(jīng)失效。Hydra采用的是在一條TCP連接內(nèi)只測(cè)試一組賬戶信息的方法,當(dāng)這條TCP連接被異常阻斷之后,立即產(chǎn)生一條新的TCP連接繼續(xù)測(cè)試。這種方式對(duì)一些中小規(guī)模Web、FTP、郵件服務(wù)器和網(wǎng)站系統(tǒng)比較有效,但當(dāng)網(wǎng)站采取了圖片驗(yàn)證碼、錯(cuò)誤登錄次數(shù)限制等措施后,這一技術(shù)也將失效。目前互聯(lián)網(wǎng)上出現(xiàn)了利用自動(dòng)解碼平臺(tái)和自動(dòng)代理切換技術(shù)來(lái)繞過(guò)驗(yàn)證碼和登錄次數(shù)的限制,已經(jīng)出現(xiàn)了這方面的實(shí)際案例,并造成較大影響,后續(xù)筆者將對(duì)這類(lèi)新型攻擊的檢測(cè)和取證技術(shù)加以研究。

      猜你喜歡
      解碼黑客報(bào)文
      基于J1939 協(xié)議多包報(bào)文的時(shí)序研究及應(yīng)用
      歡樂(lè)英雄
      多少個(gè)屁能把布克崩起來(lái)?
      《解碼萬(wàn)噸站》
      CTCS-2級(jí)報(bào)文數(shù)據(jù)管理需求分析和實(shí)現(xiàn)
      網(wǎng)絡(luò)黑客比核武器更可怕
      解碼eUCP2.0
      淺析反駁類(lèi)報(bào)文要點(diǎn)
      NAD C368解碼/放大器一體機(jī)
      Quad(國(guó)都)Vena解碼/放大器一體機(jī)
      集安市| 武隆县| 辛集市| 泰宁县| 禹城市| 阳东县| 玉山县| 娄底市| 福清市| 巨鹿县| 德钦县| 新和县| 盖州市| 梁河县| 安徽省| 青海省| 依安县| 凌源市| 安岳县| 平顺县| 井陉县| 肇庆市| 洪雅县| 广平县| 赤水市| 芦溪县| 叶城县| 公主岭市| 进贤县| 昌平区| 木兰县| 社会| 叶城县| 呼伦贝尔市| 塘沽区| 舞阳县| 苗栗市| 宁蒗| 东阳市| 昆山市| 常熟市|