專利名稱:一種確定mitm攻擊的方法、裝置及系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及網(wǎng)絡(luò)安全技術(shù)領(lǐng)域,尤其是涉及一種確定中間人(MITM, Man-in-themiddle-attacks)攻擊的方法,裝置及系統(tǒng)。
背景技術(shù):
遠(yuǎn)程桌面協(xié)議(RDP,Romote Desktop Protocol)是普遍應(yīng)用于微軟操作系統(tǒng)中的一種遠(yuǎn)程桌面協(xié)議,遠(yuǎn)程桌面功能允許網(wǎng)絡(luò)中的用戶連接到遠(yuǎn)程的計算機(jī)上對遠(yuǎn)程計算機(jī)
進(jìn)行管理。如圖I所示的系統(tǒng)架構(gòu),包括客戶端101、位于客戶端側(cè)的數(shù)據(jù)交換設(shè)備(如圖I所 示的交換機(jī)102)、路由轉(zhuǎn)發(fā)設(shè)備103、位于服務(wù)端側(cè)的交換機(jī)104以及服務(wù)端。基于該系統(tǒng)架構(gòu),設(shè)備管理員通過遠(yuǎn)程桌面對目標(biāo)設(shè)備進(jìn)行運(yùn)行維護(hù)管理操作。設(shè)備管理員通過遠(yuǎn)程桌面登陸到目標(biāo)設(shè)備(如圖I所示的位于服務(wù)端側(cè)的服務(wù)器105),然后對目標(biāo)設(shè)備進(jìn)行管理。但是在這個過程中,如圖2所示,就可能受到中間人攻擊的威脅,受到中間人攻擊的遠(yuǎn)程登陸會話的會話信息會完全暴露,比如按鍵信息,回顯信息等等,中間人也可以獲得設(shè)備管理員權(quán)限,從而非法登陸到目標(biāo)設(shè)備,非法操控目標(biāo)設(shè)備。比如設(shè)備管理員A在遠(yuǎn)程登陸到目標(biāo)設(shè)備的過程中,黑客成功發(fā)動中間人攻擊,將這個遠(yuǎn)程桌面會話完全解密,獲得這個設(shè)備管理員的登陸賬號和密碼,當(dāng)設(shè)備管理員A退出目標(biāo)設(shè)備,黑客馬上就能獲悉設(shè)備管理員已經(jīng)退出,然后黑客就能使用通過中間人攻擊獲取的賬號密碼以設(shè)備管理員的身份非法登陸到目標(biāo)設(shè)備,查看目標(biāo)設(shè)備中存儲的敏感信息?,F(xiàn)有技術(shù)中,一般采用服務(wù)器認(rèn)證方式來防止中間人攻擊,服務(wù)器認(rèn)證的原理是指在會話過程中,在非對稱密鑰交換的環(huán)節(jié)中加入服務(wù)器認(rèn)證環(huán)節(jié),在非對稱協(xié)商過程中,客戶端除接收服務(wù)端的公鑰和隨機(jī)數(shù)之外,還會接收到服務(wù)端發(fā)來的服務(wù)器驗(yàn)證信息,該服務(wù)器驗(yàn)證信息可以服務(wù)端身份信息,當(dāng)服務(wù)器認(rèn)證不成功時,客戶端將整個會話斷開,從而避免網(wǎng)絡(luò)受到中間人攻擊。采用服務(wù)器認(rèn)證方式僅能夠事前防范,即對中間人攻擊起到防范作用,而無法事中發(fā)現(xiàn),當(dāng)網(wǎng)絡(luò)中存在中間人攻擊時,該方式無法檢測已存在的中間人攻擊,另外,由于設(shè)備自身原因,如版本低等因素會導(dǎo)致誤檢的發(fā)生,從而降低了 MITM檢測的準(zhǔn)確性。綜上所述,現(xiàn)有技術(shù)中提出的技術(shù)方案,僅能夠?qū)χ虚g人攻擊起到防范作用,不能夠主動的確定出網(wǎng)絡(luò)中是否存在中間人攻擊,使得網(wǎng)絡(luò)的安全性較差。
發(fā)明內(nèi)容
本發(fā)明實(shí)施例提供了一種確定MITM攻擊的方法,裝置及系統(tǒng),能夠?qū)ITM攻擊進(jìn)行主動檢測,并且較好地提高了確定MITM攻擊的準(zhǔn)確性,從而提高網(wǎng)絡(luò)安全性。一種確定MITM攻擊的方法,包括在接收到客戶端發(fā)來的遠(yuǎn)程桌面協(xié)議RDP連接請求時,將所述RDP連接請求轉(zhuǎn)發(fā)給服務(wù)端;并獲得服務(wù)端發(fā)來的第一 RDP連接響應(yīng)請求,其中,所述第一 RDP連接響應(yīng)請求中包含服務(wù)端生成的非對稱加密公鑰;將所述獲得的第一 RDP連接響應(yīng)請求中包含的非對稱加密公鑰替換為預(yù)設(shè)的第一身份識別公鑰,形成第二RDP連接響應(yīng)請求并發(fā)送給客戶端,其中客戶端根據(jù)接收到的第二 RDP連接響應(yīng)請求中包含的非對稱加密公鑰和預(yù)設(shè)的第一身份識別公鑰,確定是否存在MITM攻擊。一種確定MITM攻擊的裝置,包括轉(zhuǎn)發(fā)模塊,用于在接收到客戶端發(fā)來的遠(yuǎn)程桌面協(xié)議RDP連接請求時,將所述RDP連接請求轉(zhuǎn)發(fā)給服務(wù)端;獲得模塊,用于獲得服務(wù)端發(fā)來的第一 RDP連接響應(yīng)請求,其中,所述第一 RDP連接響應(yīng)請求中包含服務(wù)端生成的非對稱加密公鑰;發(fā)送模塊,用于將所述獲得的第一 RDP連接響應(yīng)請求中包含的非對稱加密公鑰替換為預(yù)設(shè)的第一身份識別公鑰,形成第二 RDP連接響應(yīng)請求并發(fā)送給客戶端,其中客戶端根據(jù)接收到的第二 RDP連接響應(yīng)請求中包含的非對稱加密公鑰和預(yù)設(shè)的第一身份識別公鑰,確定是否存在MITM攻擊。一種確定中間MITM攻擊的系統(tǒng),包括至少一個客戶端服務(wù)器、至少一個檢測代理 服務(wù)器和至少一個服務(wù)端服務(wù)器,包括所述客戶端,用于發(fā)送遠(yuǎn)程桌面協(xié)議RDP連接請求;以及接收檢測代理服務(wù)器發(fā)來的第二 RDP連接響應(yīng)請求,根據(jù)接收到的第二 RDP連接響應(yīng)請求中包含的非對稱加密公鑰和預(yù)設(shè)的第一身份識別公鑰,確定是否存在MITM攻擊;所述檢測代理服務(wù)器,用于在接收到客戶端發(fā)來的遠(yuǎn)程桌面協(xié)議RDP連接請求時,將所述RDP連接請求轉(zhuǎn)發(fā)給服務(wù)端;并獲得服務(wù)端發(fā)來的第一 RDP連接響應(yīng)請求,其中,所述第一 RDP連接響應(yīng)請求中包含服務(wù)端生成的非對稱加密公鑰;將所述獲得的第一 RDP連接響應(yīng)請求中包含的非對稱加密公鑰替換為預(yù)設(shè)的第一身份識別公鑰,形成第二 RDP連接響應(yīng)請求并發(fā)送給客戶端;所述服務(wù)端服務(wù)器,用于接收檢測代理服務(wù)器轉(zhuǎn)發(fā)的RDP連接請求,并對所述第一 RDP連接響應(yīng)請求進(jìn)行處理,生成包含非對稱加密公鑰的第一 RDP連接響應(yīng)請求并發(fā)送。采用上述技術(shù)方案,將服務(wù)端發(fā)來的第一 RDP連接響應(yīng)請求中包含的非對稱加密公鑰替換為預(yù)設(shè)的第一身份識別公鑰,形成第二 RDP連接響應(yīng)請求并發(fā)送給客戶端,后續(xù)客戶端根據(jù)接收到的第二 RDP連接響應(yīng)請求中包含的非對稱加密公鑰和預(yù)設(shè)的第一身份識別公鑰,確定網(wǎng)絡(luò)中是否存在MITM攻擊。將服務(wù)端發(fā)來的第二 RDP連接響應(yīng)請求中包含的非對稱加密公鑰主動替換為預(yù)設(shè)的第一身份識別公鑰之后,再發(fā)送給客戶端,客戶端可以根據(jù)解析出來非對稱加密公鑰和預(yù)設(shè)的第一身份識別公鑰,確定網(wǎng)絡(luò)中是否存在MITM攻擊,相對于現(xiàn)有技術(shù)中提出的服務(wù)器認(rèn)證防范MITM攻擊的方式,本發(fā)明實(shí)施例這里提出的技術(shù)方案,能夠?qū)ITM攻擊進(jìn)行主動檢測,準(zhǔn)確確定出當(dāng)前網(wǎng)絡(luò)環(huán)境是否存在中間人攻擊,并且確定網(wǎng)絡(luò)中是否存在MITM攻擊時,不需要斷開網(wǎng)絡(luò)的會話傳輸鏈路,客戶端和服務(wù)端能夠進(jìn)行正常會話,從而提高網(wǎng)絡(luò)安全性,保證機(jī)密信息不被泄露。
圖I為現(xiàn)有技術(shù)中,提出的基于RDP進(jìn)行數(shù)據(jù)傳輸?shù)南到y(tǒng)結(jié)構(gòu)示意圖;圖2為現(xiàn)有技術(shù)中,提出的存在基于RDP進(jìn)行數(shù)據(jù)傳輸?shù)南到y(tǒng)存在MITM攻擊時的系統(tǒng)結(jié)構(gòu)不意圖;圖3為本發(fā)明實(shí)施例一中,提出的確定MITM攻擊的系統(tǒng)結(jié)構(gòu)組成示意圖;圖4為本發(fā)明實(shí)施例二中,提出的確定MITM攻擊的方法流程圖;圖5為本發(fā)明實(shí)施例二中,提出的確定MITM攻擊的裝置結(jié)構(gòu)示意圖6為本發(fā)明實(shí)施例三中,提出的確定MITM攻擊的方法流程圖。
具體實(shí)施例方式針對現(xiàn)有技術(shù)中存在的防范MITM攻擊的方法,僅能夠?qū)χ虚g人攻擊起到防范作用,不能夠主動的確定出網(wǎng)絡(luò)中是否存在中間人攻擊,使得網(wǎng)絡(luò)的安全性較差的問題,本發(fā)明實(shí)施例這里提出的技術(shù)方案,通過將服務(wù)端發(fā)來的第一 RDP連接響應(yīng)請求中包含的非對稱加密公鑰主動替換為預(yù)設(shè)的第一身份識別公鑰,形成第二 RDP連接響應(yīng)請求并發(fā)送給客戶端,后續(xù)客戶端根據(jù)接收到的第二 RDP連接響應(yīng)請求中包含的非對稱加密公鑰和預(yù)設(shè)的第一身份識別公鑰,確定網(wǎng)絡(luò)中是否存在MITM攻擊。能夠?qū)ITM攻擊進(jìn)行主動檢測,準(zhǔn)確確定出當(dāng)前網(wǎng)絡(luò)環(huán)境是否存在中間人攻擊,并且確定網(wǎng)絡(luò)中是否存在MITM攻擊時,不需要斷開網(wǎng)絡(luò)的會話傳輸鏈路,客戶端和服務(wù)端能夠進(jìn)行正常會話,從而提高網(wǎng)絡(luò)安全性,保證機(jī)密信息不被泄露。下面將結(jié)合各個附圖對本發(fā)明實(shí)施例技術(shù)方案的主要實(shí)現(xiàn)原理具體實(shí)施方式
及 其對應(yīng)能夠達(dá)到的有益效果進(jìn)行詳細(xì)地闡述。實(shí)施例一 本發(fā)明實(shí)施例一這里提出一種確定MITM攻擊的系統(tǒng),其中,基于RDP傳輸數(shù)據(jù)的網(wǎng)絡(luò)中,MITM的攻擊原理為在基于RDP傳輸數(shù)據(jù)的網(wǎng)絡(luò)中,RDP會話通訊過程中,數(shù)據(jù)傳輸是經(jīng)過加密處理的,但是在會話初始,即RDP協(xié)議一開始協(xié)商過程中,需要基于一次非對稱加密解密算法,來交換用于加密會話的對稱加密密鑰。具體地,協(xié)商過程為首先是客戶端向服務(wù)端發(fā)送遠(yuǎn)程登陸請求,服務(wù)端收到請求之后會發(fā)送響應(yīng)信息給客戶端,所述響應(yīng)信息中攜帶一個公鑰響應(yīng)數(shù)據(jù)包,在公鑰響應(yīng)數(shù)據(jù)包中包含非對稱加密算法中使用的公鑰和一個對稱加密密鑰因子1(為便于闡述和區(qū)分,將對稱加密密鑰因子賦予標(biāo)識信息),網(wǎng)絡(luò)入侵者通過MITM技術(shù),是通過捕獲響應(yīng)信息中攜帶的公鑰響應(yīng)數(shù)據(jù)包,獲得公鑰響應(yīng)數(shù)據(jù)包中包含的公鑰和對稱加密密鑰因子1,然后把公鑰響應(yīng)數(shù)據(jù)包中包含的公鑰和對稱加密密鑰因子I存儲,在存儲完成之后,網(wǎng)絡(luò)入侵者基于MITM技術(shù),使用一個偽裝的并且事先知道私鑰的公鑰替換掉公鑰響應(yīng)數(shù)據(jù)包中包含的公鑰,形成偽造的公鑰響應(yīng)數(shù)據(jù)包,將偽造的公鑰響應(yīng)數(shù)據(jù)包發(fā)送到客戶端,客戶端收到偽造的公鑰響應(yīng)數(shù)據(jù)包之后,客戶端生成對稱加密密鑰因子2,然后使用接收到的偽造的公鑰對對稱加密密鑰因子2進(jìn)行加密,加密之后發(fā)送到服務(wù)端,此時,網(wǎng)絡(luò)入侵人員基于MITM技術(shù),再次捕獲客戶端發(fā)送給服務(wù)端的數(shù)據(jù),由于已經(jīng)存儲了偽造公鑰的私鑰,使用私鑰對加密后的對稱加密密鑰因子2進(jìn)行解密就能得到明文的對稱加密密鑰因子2,然后結(jié)合之前獲得的對稱加密密鑰因子I就能計算出RDP會話密鑰,得到RDP會話密鑰之后就可以解密整個RDP會話、或者鍵盤輸入、用戶名賬號密碼等信息。基于上述MITM攻擊的原理,如圖3所示,本發(fā)明實(shí)施例一這里提出的確定MITM攻擊的系統(tǒng)中,包括至少一個客戶端服務(wù)器101、位于客戶端側(cè)的用于傳輸數(shù)據(jù)的交換機(jī)102、用于轉(zhuǎn)發(fā)數(shù)據(jù)的路由設(shè)備103、位于服務(wù)端的用于傳輸數(shù)據(jù)的交換機(jī)104,以及至少一個服務(wù)端服務(wù)器105、檢測代理服務(wù)器106,還有假設(shè)已經(jīng)存在的MITM105。其中客戶端,用于發(fā)送遠(yuǎn)程桌面協(xié)議RDP連接請求;以及接收檢測代理服務(wù)器發(fā)來的第二 RDP連接響應(yīng)請求,根據(jù)接收到的第二 RDP連接響應(yīng)請求中包含的非對稱加密公鑰和預(yù)設(shè)的第一身份識別公鑰,確定是否存在MITM攻擊。具體地,所述客戶端,具體用于對接收到的第二 RDP連接響應(yīng)請求進(jìn)行解析,得到所述第二 RDP連接響應(yīng)請求中包含的非對稱加密公鑰;判斷解析得到的非對稱加密公鑰是否和預(yù)設(shè)的第一身份識別公鑰匹配;如果是,確定網(wǎng)絡(luò)中不存在MITM攻擊;如果否,確定網(wǎng)絡(luò)中存在MITM攻擊。檢測代理服務(wù)器,用于在接收到客戶端發(fā)來的遠(yuǎn)程桌面協(xié)議RDP連接請求時,將所述RDP連接請求轉(zhuǎn)發(fā)給服務(wù)端;并獲得服務(wù)端發(fā)來的第一 RDP連接響應(yīng)請求,其中,所述第一 RDP連接響應(yīng)請求中包含服務(wù)端生成的非對稱加密公鑰;將所述獲得的第一 RDP連接響應(yīng)請求中包含的非對稱加密公鑰替換為預(yù)設(shè)的第一身份識別公鑰,形成第二 RDP連接響應(yīng)請求并發(fā)送給客戶端。其中,檢測代理服務(wù)器還用于在接收客戶端發(fā)來的RDP連接請求之前,建立監(jiān)聽RDP應(yīng)用端口的第一套接字。具體地,RDP應(yīng)用端口是RDP的默認(rèn)端口,例如3389端口。以 及在將RDP連接請求轉(zhuǎn)發(fā)給服務(wù)端之前,建立連接服務(wù)端的第二套接字。進(jìn)一步地,為保證數(shù)據(jù)傳輸?shù)陌踩?,檢測代理服務(wù)器在獲得服務(wù)端發(fā)來的第一RDP連接響應(yīng)請求之后,斷開和服務(wù)端的RDP連接。具體地,預(yù)設(shè)的第一身份識別公鑰是根據(jù)非對稱密鑰文件解析得到的,其中,所述非對稱密鑰文件是根據(jù)預(yù)先設(shè)置的非對稱密鑰生成的。二者可以配對使用,為便于闡述,本發(fā)明實(shí)施例這里提出的技術(shù)方案中,將二者做出區(qū)分。服務(wù)端服務(wù)器,用于接收檢測代理服務(wù)器轉(zhuǎn)發(fā)的RDP連接請求,并對所述第一 RDP連接響應(yīng)請求進(jìn)行處理,生成包含非對稱加密公鑰的第一 RDP連接響應(yīng)請求并發(fā)送。實(shí)施例二基于上述實(shí)施例一提出的確定MITM攻擊的系統(tǒng)架構(gòu),本發(fā)明實(shí)施例二這里提出一種確定MITM攻擊的方法流程圖,如圖4所示,具體處理流程如下述步驟41,接收客戶端發(fā)來的RDP連接請求。其中,在基于RDP傳輸數(shù)據(jù)的網(wǎng)絡(luò)中,客戶端需要與服務(wù)端進(jìn)行連接,此時客戶端發(fā)送RDP連接請求。具體地,在步驟41之前,還可以先建立監(jiān)聽RDP應(yīng)用端口的第一套接字述RDP應(yīng)用端口可以RDP的默認(rèn)端口,例如3389端口。步驟42,在接收到客戶端發(fā)來的RDP連接請求時,將所述RDP連接請求轉(zhuǎn)發(fā)給服務(wù)端。其中,在將RDP連接請求轉(zhuǎn)發(fā)給服務(wù)端之前,還可以建立連接服務(wù)端的第二套接字。步驟43,獲得服務(wù)端發(fā)來的第一 RDP連接響應(yīng)請求。其中,服務(wù)端對接收到的RDP連接請求進(jìn)行響應(yīng)的處理之后,反饋第一 RDP連接響應(yīng)請求。其中,所述第一 RDP連接響應(yīng)請求中包含服務(wù)端生成的非對稱加密公鑰。具體地,非對稱加密公鑰可以是服務(wù)端的標(biāo)識信息。較佳地,為保證數(shù)據(jù)傳輸?shù)陌踩裕诓襟E43之后,還可以斷開和服務(wù)端的RDP連接。步驟44,將所述獲得的第一 RDP連接響應(yīng)請求中包含的非對稱加密公鑰替換為預(yù)設(shè)的第一身份識別公鑰,形成第二 RDP連接響應(yīng)請求并發(fā)送給客戶端。步驟45,客戶端根據(jù)接收到的第二 RDP連接響應(yīng)請求,確定是否存在MITM攻擊。其中,客戶端對接收到的第二 RDP連接響應(yīng)請求進(jìn)行解析,得到所述第二 RDP連接響應(yīng)請求中包含的第一身份識別公鑰。判斷解析得到的非對稱加密公鑰是否和預(yù)先設(shè)置的第一身份識別公鑰配對;如果是,確定網(wǎng)絡(luò)中不存在MITM攻擊;如果否,確定網(wǎng)絡(luò)中存在MITM攻擊。具體地,所述預(yù)設(shè)的第一身份識別公鑰可以是根據(jù)非對稱密鑰文件解析得到的,其中,所述非對稱密鑰文件是根據(jù)預(yù)先設(shè)置的非對稱密鑰生成的。具體實(shí)施中,需要準(zhǔn)備一對非對稱密鑰,生成非對稱密鑰文件之后,后續(xù)對這個非對稱密鑰文件進(jìn)行解析,可以得到公鑰和私鑰。 相應(yīng)地,本發(fā)明實(shí)施例二這里還提出一種確定MITM攻擊的裝置,如圖5所示,包括轉(zhuǎn)發(fā)模塊501,用于在接收到客戶端發(fā)來的遠(yuǎn)程桌面協(xié)議RDP連接請求時,將所述RDP連接請求轉(zhuǎn)發(fā)給服務(wù)端。獲得模塊502,用于獲得服務(wù)端發(fā)來的第一 RDP連接響應(yīng)請求,其中,所述第一 RDP連接響應(yīng)請求中包含服務(wù)端生成的非對稱加密公鑰。發(fā)送模塊503,用于將所述獲得的第一 RDP連接響應(yīng)請求中包含的非對稱加密公鑰替換為預(yù)設(shè)的第一身份識別公鑰,形成第二 RDP連接響應(yīng)請求并發(fā)送給客戶端,其中客戶端根據(jù)接收到的第二 RDP連接響應(yīng)請求中包含的非對稱加密公鑰和預(yù)設(shè)的第一身份識別公鑰,確定是否存在MITM攻擊。具體地,所述預(yù)設(shè)的第一身份識別公鑰是根據(jù)非對稱密鑰文件解析得到的,其中,所述非對稱密鑰文件是根據(jù)預(yù)先設(shè)置的非對稱密鑰生成的。具體地,上述發(fā)送模塊503,具體用于將第二 RDP連接響應(yīng)請求發(fā)送給客戶端之后,指示客戶端對接收到的第二 RDP連接響應(yīng)請求進(jìn)行解析,得到所述第二 RDP連接響應(yīng)請求中包含的第一身份識別公鑰;判斷解析得到的非對稱加密公鑰是否和預(yù)設(shè)的第一身份識別公鑰匹配;如果是,確定網(wǎng)絡(luò)中不存在MITM攻擊;如果否,確定網(wǎng)絡(luò)中存在MITM攻擊。具體地,上述裝置還包括第一建立模塊,用于建立監(jiān)聽RDP應(yīng)用端口的第一套接字。其中,所述RDP應(yīng)用端口是RDP的默認(rèn)端口。具體地,上述裝置還包括第二建立模塊,用于建立連接服務(wù)端的第二套接字。具體地,上述裝置還包括斷開模塊,用于斷開和服務(wù)端的RDP連接。實(shí)施例三進(jìn)一步地,在上述實(shí)施例一和實(shí)施例二的基礎(chǔ)之上,基于圖3所示的系統(tǒng)架構(gòu),本發(fā)明實(shí)施例三這里以一具體實(shí)例來對本發(fā)明實(shí)施例這里提出的確定MITM攻擊的方法做出詳細(xì)闡述,如圖6所示,其具體處理過程如下述預(yù)先設(shè)置一對非對稱密鑰作為檢測代理服務(wù)器的身份認(rèn)證信息,生成非對稱密鑰文件之后,客戶端和檢測代理服務(wù)器均使用這個非對稱密鑰文件,具有該身份認(rèn)證信息的檢測代理服務(wù)器是合法的接入設(shè)備,例如可以時服務(wù)器的標(biāo)識信息、也可以是其他人為設(shè)置的編碼信息等等。根據(jù)設(shè)置的非對稱密鑰生成非對稱密鑰文件之后,客戶端和檢測代理服務(wù)器均使用該生成的密鑰文件,即客戶端和檢測代理服務(wù)器在正常工作時,對該生成的密鑰文件進(jìn)行解析,得到公鑰和私鑰。檢測代理服務(wù)器可以建立一個具備監(jiān)聽功能的套接字(Socket),用于監(jiān)聽RDP的默認(rèn)端口,例如監(jiān)聽3389端口。本發(fā)明實(shí)施例這里提出的確定MITM攻擊的技術(shù)方案中,對MITM進(jìn)行主動檢測,確定網(wǎng)絡(luò)中是否存在MITM攻擊,因此在系統(tǒng)部署過程中,可以按照蜜罐的方式進(jìn)行部署。通過RDP默認(rèn)端口,客戶端建立一個用于和檢測代理服務(wù)器連接的套接字,套接字建立之后,客戶端想檢測代理服務(wù)器發(fā)送傳輸控制層連接請求,當(dāng)客戶端服務(wù)器和檢測代理服務(wù)器連接成功(即具體實(shí)施過程中,客戶端服務(wù)器成功Ping通檢測代理服務(wù)器之后,客戶端構(gòu)造應(yīng)用層RDP協(xié)議的連接請求數(shù)據(jù)包,即發(fā)送RDP連接請求。如圖6所示,具體處理過程如下述步驟61,客戶端向檢測代理服務(wù)器發(fā)送RDP連接請求?!?br>
其中,在RDP連接請求傳輸過程中,由上述實(shí)施例一中闡述的MITM攻擊的原理可知,該RDP連接請求并不會被篡改。步驟62,檢測代理服務(wù)器接收到客戶端發(fā)來的RDP連接請求,檢測代理服務(wù)器建立用于和服務(wù)端服務(wù)器連接的套接字,完成檢測代理服務(wù)器和服務(wù)端服務(wù)器之間的連接。步驟63,套接字建立完成之后,檢測代理服務(wù)器將客戶端發(fā)來的RDP請求發(fā)送給服務(wù)端服務(wù)器。步驟64,服務(wù)端服務(wù)器接收到RDP請求之后,對接收到的RDP請求進(jìn)行相應(yīng)處理,并發(fā)送處理結(jié)果給客戶端。即發(fā)送RDP連接響應(yīng)請求。其中,RDP連接響應(yīng)請求中包含服務(wù)端服務(wù)器生成的非對稱加密公鑰和隨機(jī)數(shù)。步驟65,檢測代理服務(wù)器獲得服務(wù)端服務(wù)器發(fā)來的RDP連接響應(yīng)請求(即本發(fā)明實(shí)施例這里提出的第一 RDP連接響應(yīng)請求),為了保證服務(wù)端服務(wù)器中存儲的數(shù)據(jù)的安全性,可以斷開與服務(wù)端服務(wù)器的連接。具體地,檢測代理服務(wù)器斷開與服務(wù)端服務(wù)器的連接,具體實(shí)現(xiàn)方式可以但不限于采用下述兩種方式第一種方式檢測代理服務(wù)器向服務(wù)端服務(wù)器發(fā)送斷開連接消息,服務(wù)端服務(wù)器接收到斷開連接消息之后,斷開和檢測代理服務(wù)器之間的RDP連接。第二種方式檢測代理服務(wù)器在接收到服務(wù)端服務(wù)器發(fā)來的RDP響應(yīng)消息之后,斷開與服務(wù)器的RDP連接。步驟66,檢測代理服務(wù)器對接收到的RDP連接響應(yīng)請求進(jìn)行解析,獲得RDP連接響應(yīng)中包含的服務(wù)端生成的非對稱加密公鑰。步驟67,將獲得的服務(wù)端生成的非對稱加密公鑰替換為能夠識別該檢測代理服務(wù)器身份的身份認(rèn)證信息(即本發(fā)明實(shí)施例這里提出的第一身份認(rèn)證識別公鑰),將該信息作為替換后的非對稱加密公鑰。具體地,由于在系統(tǒng)初始條件下,植入了密鑰文件,因此,在做非對稱加密公鑰替換時,較佳地,可以將服務(wù)端服務(wù)器生成的非對稱加密公鑰替換為能夠從植入的非對稱密鑰文件中解析出來的密鑰,并且該密鑰能夠識別檢測代理服務(wù)器的身份信息。例如,將服務(wù)端生成的非對稱加密公鑰替換為由植入的非對稱密鑰文件中解析出的第一身份識別公鑰。
步驟68,將進(jìn)行密鑰替換后的RDP連接響應(yīng)請求發(fā)送給客戶端服務(wù)器。其中,將由服務(wù)端生成的非対稱加密公鑰替換為第一身份識別公鑰后的RDP連接響應(yīng)(即本發(fā)明實(shí)施例這里提出的第二 RDP連接響應(yīng)請求)發(fā)送給客戶端服務(wù)器。若此時網(wǎng)絡(luò)中存在MITM攻擊,根據(jù)上述實(shí)施例一中闡述的MITM攻擊原理可知,此時,MITM會捕獲該進(jìn)行密鑰替換后的RDP連接響應(yīng)請求。并在捕獲后,將檢測代理服務(wù)器的身份信息篡改棹,然后再發(fā)送給客戶端 。例如,進(jìn)行密鑰替換后的RDP連接響應(yīng)中包含檢測代理服務(wù)器的標(biāo)識信息,即密鑰替換后的RDP連接響應(yīng)包含的信息可以是檢測代理服務(wù)器的標(biāo)識信息+隨機(jī)數(shù)。中間篡改以后,變?yōu)槠渌麡?biāo)識信息+隨機(jī)數(shù),然后將篡改后的RDP連接響應(yīng)發(fā)送給客戶端。步驟69,客戶端服務(wù)器接收到第二 RDP連接響應(yīng)請求后,對接收到的第二 RDP連接響應(yīng)請求進(jìn)行解析,判斷網(wǎng)絡(luò)中是否存在MITM。其中,客戶端服務(wù)器接收到RDP連接響應(yīng)請求之后,進(jìn)行解析,獲得RDP連接響應(yīng)請求中包含的身份認(rèn)證信息(即進(jìn)行密鑰替換后的第一身份識別公鑰),將獲得的身份認(rèn)證信息和預(yù)先設(shè)置的身份認(rèn)證信息進(jìn)行比對,若比對結(jié)果一致,則確定網(wǎng)絡(luò)中不存在MITM攻擊,反之,確定客戶端服務(wù)器和檢測服務(wù)器的網(wǎng)絡(luò)之間存在MITM攻擊。具體地,預(yù)先設(shè)置的身份認(rèn)證信息,是客戶端服務(wù)器在運(yùn)行時,對植入的密鑰文件進(jìn)行解析得到的。相對于現(xiàn)有技術(shù)中提出的服務(wù)器認(rèn)證防范MITM攻擊的方式,本發(fā)明實(shí)施例這里提出的技術(shù)方案,能夠?qū)ITM攻擊進(jìn)行主動檢測,準(zhǔn)確確定出當(dāng)前網(wǎng)絡(luò)環(huán)境是否存在中間人攻擊,并且確定網(wǎng)絡(luò)中是否存在MITM攻擊吋,不需要斷開網(wǎng)絡(luò)的會話傳輸鏈路,客戶端和服務(wù)端能夠進(jìn)行正常會話,較好地保證了基于RDP傳輸數(shù)據(jù)的網(wǎng)絡(luò)的安全性。本領(lǐng)域的技術(shù)人員應(yīng)明白,本發(fā)明的實(shí)施例可提供為方法、裝置(設(shè)備)、或計算機(jī)程序產(chǎn)品。因此,本發(fā)明可采用完全硬件實(shí)施例、完全軟件實(shí)施例、或結(jié)合軟件和硬件方面的實(shí)施例的形式。而且,本發(fā)明可采用在一個或多個其中包含有計算機(jī)可用程序代碼的計算機(jī)可用存儲介質(zhì)(包括但不限于磁盤存儲器、CD-ROM、光學(xué)存儲器等)上實(shí)施的計算機(jī)程序產(chǎn)品的形式。本發(fā)明是參照根據(jù)本發(fā)明實(shí)施例的方法、裝置(設(shè)備)和計算機(jī)程序產(chǎn)品的流程圖和/或方框圖來描述的。應(yīng)理解可由計算機(jī)程序指令實(shí)現(xiàn)流程圖和/或方框圖中的每一流程和/或方框、以及流程圖和/或方框圖中的流程和/或方框的結(jié)合??商峁┻@些計算機(jī)程序指令到通用計算機(jī)、專用計算機(jī)、嵌入式處理機(jī)或其他可編程數(shù)據(jù)處理設(shè)備的處理器以產(chǎn)生ー個機(jī)器,使得通過計算機(jī)或其他可編程數(shù)據(jù)處理設(shè)備的處理器執(zhí)行的指令產(chǎn)生用于實(shí)現(xiàn)在流程圖ー個流程或多個流程和/或方框圖ー個方框或多個方框中指定的功能的裝置。這些計算機(jī)程序指令也可存儲在能引導(dǎo)計算機(jī)或其他可編程數(shù)據(jù)處理設(shè)備以特定方式工作的計算機(jī)可讀存儲器中,使得存儲在該計算機(jī)可讀存儲器中的指令產(chǎn)生包括指令裝置的制造品,該指令裝置實(shí)現(xiàn)在流程圖ー個流程或多個流程和/或方框圖ー個方框或多個方框中指定的功能。這些計算機(jī)程序指令也可裝載到計算機(jī)或其他可編程數(shù)據(jù)處理設(shè)備上,使得在計算機(jī)或其他可編程設(shè)備上執(zhí)行一系列操作步驟以產(chǎn)生計算機(jī)實(shí)現(xiàn)的處理,從而在計算機(jī)或其他可編程設(shè)備上執(zhí)行的指令提供用于實(shí)現(xiàn)在流程圖ー個流程或多個流程和/或方框圖一個方框或多個方框中指定的功能的步驟。盡管已描述了本發(fā)明的優(yōu)選實(shí)施例,但本領(lǐng)域內(nèi)的技術(shù)人員一旦得知了基本創(chuàng)造性概念,則可對這些實(shí)施例作出另外的變更和修改。所以,所附權(quán)利要求意欲解釋為包括優(yōu)選實(shí)施例以及落入本發(fā)明范圍的所有變更和修改。 顯然,本領(lǐng)域的技術(shù)人員可以對本發(fā)明進(jìn)行各種改動和變型而不脫離本發(fā)明的精神和范圍。這樣,倘若本發(fā)明的這些修改和變型屬于本發(fā)明權(quán)利要求及其等同技術(shù)的范圍之內(nèi),則本發(fā)明也意圖包含這些改動和變型在內(nèi)。
權(quán)利要求
1.一種確定中間人MITM攻擊的方法,其特征在于,包括 在接收到客戶端發(fā)來的遠(yuǎn)程桌面協(xié)議RDP連接請求時,將所述RDP連接請求轉(zhuǎn)發(fā)給服務(wù)端;并 獲得服務(wù)端發(fā)來的第一 RDP連接響應(yīng)請求,其中,所述第一 RDP連接響應(yīng)請求中包含服務(wù)端生成的非對稱加密公鑰; 將所述獲得的第一 RDP連接響應(yīng)請求中包含的非對稱加密公鑰替換為預(yù)設(shè)的第一身份識別公鑰,形成第二 RDP連接響應(yīng)請求并發(fā)送給客戶端,其中客戶端根據(jù)接收到的第二RDP連接響應(yīng)請求中包含的非對稱加密公鑰和預(yù)設(shè)的第一身份識別公鑰,確定是否存在MITM攻擊。
2.如權(quán)利要求I所述的方法,其特征在于,所述預(yù)設(shè)的第一身份識別公鑰是根據(jù)非對稱密鑰文件解析得到的,其中,所述非對稱密鑰文件是根據(jù)預(yù)先設(shè)置的非對稱密鑰生成的。
3.如權(quán)利要求I所述的方法,其特征在于,所述客戶端根據(jù)接收到的第二RDP連接響應(yīng)請求中包含的非對稱加密公鑰和預(yù)設(shè)的第一身份識別公鑰,確定是否存在MITM攻擊,包括 客戶端對接收到的第二 RDP連接響應(yīng)請求進(jìn)行解析,得到所述第二 RDP連接響應(yīng)請求中包含的非對稱加密公鑰; 判斷解析得到的非對稱加密公鑰是否和預(yù)設(shè)的第一身份識別公鑰匹配; 如果是,確定網(wǎng)絡(luò)中不存在MITM攻擊; 如果否,確定網(wǎng)絡(luò)中存在MITM攻擊。
4.一種確定中間人MITM攻擊的裝置,其特征在于,包括 轉(zhuǎn)發(fā)模塊,用于在接收到客戶端發(fā)來的遠(yuǎn)程桌面協(xié)議RDP連接請求時,將所述RDP連接請求轉(zhuǎn)發(fā)給服務(wù)端; 獲得模塊,用于獲得服務(wù)端發(fā)來的第一 RDP連接響應(yīng)請求,其中,所述第一 RDP連接響應(yīng)請求中包含服務(wù)端生成的非對稱加密公鑰; 發(fā)送模塊,用于將所述獲得的第一 RDP連接響應(yīng)請求中包含的非對稱加密公鑰替換為預(yù)設(shè)的第一身份識別公鑰,形成第二 RDP連接響應(yīng)請求并發(fā)送給客戶端,其中客戶端根據(jù)接收到的第二 RDP連接響應(yīng)請求中包含的非對稱加密公鑰和預(yù)設(shè)的第一身份識別公鑰,確定是否存在MITM攻擊。
5.如權(quán)利要求4所述的裝置,其特征在于,所述預(yù)設(shè)的第一身份識別公鑰是根據(jù)非對稱密鑰文件解析得到的,其中,所述非對稱密鑰文件是根據(jù)預(yù)先設(shè)置的非對稱密鑰生成的。
6.如權(quán)利要求4所述的裝置,其特征在于,所述發(fā)送模塊,具體用于將第二RDP連接響應(yīng)請求發(fā)送給客戶端之后,指示客戶端對接收到的第二 RDP連接響應(yīng)請求進(jìn)行解析,得到所述第二 RDP連接響應(yīng)請求中包含的非對稱加密公鑰;判斷解析得到非對稱加密公鑰是否和預(yù)設(shè)的第一身份識別公鑰匹配;如果是,確定網(wǎng)絡(luò)中不存在MITM攻擊;如果否,確定網(wǎng)絡(luò)中存在MITM攻擊。
7.一種確定中間MITM攻擊的系統(tǒng),其特征在于,包括至少一個客戶端服務(wù)器、至少一個檢測代理服務(wù)器和至少一個服務(wù)端服務(wù)器,包括 所述客戶端,用于發(fā)送遠(yuǎn)程桌面協(xié)議RDP連接請求;以及接收檢測代理服務(wù)器發(fā)來的第二 RDP連接響應(yīng)請求,根據(jù)接收到的第二 RDP連接響應(yīng)請求中包含的非對稱加密公鑰和預(yù)設(shè)的第一身份識別公鑰,確定是否存在MITM攻擊; 所述檢測代理服務(wù)器,用于在接收到客戶端發(fā)來的遠(yuǎn)程桌面協(xié)議RDP連接請求時,將所述RDP連接請求轉(zhuǎn)發(fā)給服務(wù)端;并獲得服務(wù)端發(fā)來的第一 RDP連接響應(yīng)請求,其中,所述第一 RDP連接響應(yīng)請求中包含服務(wù)端生成的非對稱加密公鑰;將所述獲得的第一 RDP連接響應(yīng)請求中包含的非對稱加密公鑰替換為預(yù)設(shè)的第一身份識別公鑰,形成第二 RDP連接響應(yīng)請求并發(fā)送給客戶端; 所述服務(wù)端服務(wù)器,用于接收檢測代理服務(wù)器轉(zhuǎn)發(fā)的RDP連接請求,并對所述第一 RDP連接響應(yīng)請求進(jìn)行處理,生成包含非對稱加密公鑰的第一 RDP連接響應(yīng)請求并發(fā)送。
8.如權(quán)利要求7所述的系統(tǒng),其特征在于,所述客戶端,具體用于對接收到的第二RDP連接響應(yīng)請求進(jìn)行解析,得到所述第二 RDP連接響應(yīng)請求中包含的非對稱加密公鑰;判斷解析得到的非對稱加密公鑰是否和預(yù)設(shè)的第一身份識別公鑰匹配;如果是,確定網(wǎng)絡(luò)中不存在MITM攻擊;如果否,確定網(wǎng)絡(luò)中存在MITM攻擊。
9.如權(quán)利要求7所述的系統(tǒng),其特征在于,所述預(yù)設(shè)的第一身份識別公鑰是根據(jù)非對稱密鑰文件解析得到的,其中,所述非對稱密鑰文件是根據(jù)預(yù)先設(shè)置的非對稱密鑰生成的。
全文摘要
本發(fā)明公開了一種確定中間人MITM攻擊的方法、裝置及系統(tǒng),該方法包括在接收到客戶端發(fā)來的RDP連接請求時,將所述RDP連接請求轉(zhuǎn)發(fā)給服務(wù)端;并獲得服務(wù)端發(fā)來的第一RDP連接響應(yīng)請求,其中,所述第一RDP連接響應(yīng)請求中包含服務(wù)端生成的非對稱加密公鑰;將所述獲得的第一RDP連接響應(yīng)請求中包含的非對稱加密公鑰替換為預(yù)設(shè)的第一身份識別公鑰,形成第二RDP連接響應(yīng)請求并發(fā)送給客戶端,其中客戶端根據(jù)接收到的第二RDP連接響應(yīng)請求中包含的非對稱加密公鑰和預(yù)設(shè)的第一身份識別公鑰,確定是否存在MITM攻擊。從而能夠?qū)ITM攻擊進(jìn)行主動檢測,并且較好地提高了確定MITM攻擊的準(zhǔn)確性,從而提高網(wǎng)絡(luò)安全性。
文檔編號H04L29/06GK102957704SQ20121044882
公開日2013年3月6日 申請日期2012年11月9日 優(yōu)先權(quán)日2012年11月9日
發(fā)明者李鎮(zhèn)鵬 申請人:北京神州綠盟信息安全科技股份有限公司, 北京神州綠盟科技有限公司