本發(fā)明屬于移動(dòng)互聯(lián)網(wǎng)安全領(lǐng)域,具體而言,本發(fā)明涉及一種基于時(shí)間特征的分析檢測(cè)中間人攻擊的方法和終端設(shè)備。
背景技術(shù):
隨著無(wú)線網(wǎng)絡(luò)技術(shù)的日益發(fā)展,傳統(tǒng)的有線接入越來(lái)越局限于IT運(yùn)營(yíng)企業(yè)和固定設(shè)施的接入,而在日常生活中,人們主要以無(wú)線接入方式為主??梢哉f(shuō),無(wú)線網(wǎng)絡(luò)已經(jīng)在人們平常的生活和工作中占據(jù)了非常重要的地位,今天的人們已經(jīng)不能離開(kāi)無(wú)線網(wǎng)絡(luò),人們的生活也越來(lái)越依賴(lài)于無(wú)線網(wǎng)絡(luò)。與此同時(shí),隨著無(wú)線網(wǎng)絡(luò)流量的增加,無(wú)線網(wǎng)絡(luò)承載了越來(lái)越多的私密信息,成為黑客和不法分子攻擊的對(duì)象,無(wú)線網(wǎng)絡(luò)通信的安全隱患日益明顯。
在現(xiàn)有的無(wú)線攻擊手段中,中間人攻擊成為最常見(jiàn)的攻擊方式。攻擊者通過(guò)插入到用戶和wifi熱點(diǎn)的通信鏈路之中,對(duì)用戶的網(wǎng)絡(luò)傳輸過(guò)程進(jìn)行竊聽(tīng),造成用戶敏感信息泄漏,甚至進(jìn)一步造成經(jīng)濟(jì)和名譽(yù)上的損失。中間人攻擊如此普遍的主要原因是該方式的簡(jiǎn)便易行,不要求攻擊者自備上網(wǎng)通道,只需要插入到用戶和熱點(diǎn)之間,即可對(duì)用戶發(fā)起攻擊,竊聽(tīng)用戶的通信內(nèi)容。目前,大多數(shù)熱點(diǎn)設(shè)備在斷網(wǎng)攻擊方面存在明顯的弱點(diǎn),使得攻擊者可以輕易斷開(kāi)用戶的當(dāng)前連接,使得這一問(wèn)題更加突出,攻擊者更容易得手。
針對(duì)這一問(wèn)題,目前已提出一些技術(shù)方案,用來(lái)對(duì)中間人問(wèn)題進(jìn)行檢測(cè),比如在SSID之外,加入熱點(diǎn)的MAC地址作為身份識(shí)別的加強(qiáng)措施,但不幸的是,MAC地址和SSID一樣,都是用戶可以輕易修改的身份標(biāo)識(shí),這使得現(xiàn)有方案面臨失效的風(fēng)險(xiǎn),迫切需要提出具有更加可靠的身份識(shí)別和安全評(píng)估方案,以便用戶在接入熱點(diǎn)之前對(duì)熱點(diǎn)的安全水平進(jìn)行比較可靠的評(píng)估。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明針對(duì)現(xiàn)有的方式的上述缺點(diǎn),提出一種基于時(shí)間分布特征檢測(cè)中間人攻擊的方法和終端設(shè)備,用以解決現(xiàn)有技術(shù)存在的鏈路容易被中間人攻擊的缺陷。與現(xiàn)有解決方法不同的是,本發(fā)明不是基于路由器自身的SSID、MAC等信息判斷身份,而是根據(jù)存在中間人的通信路徑的時(shí)間分布特征進(jìn)行判定。
本發(fā)明的實(shí)施例根據(jù)一個(gè)方面,提供了一種基于時(shí)間特征的分析檢測(cè)中間人攻擊的方法,分為訓(xùn)練和識(shí)別兩個(gè)階段,具體包括如下步驟:
A.訓(xùn)練階段
1)分別采集正常場(chǎng)景和存在中間人場(chǎng)景的數(shù)據(jù)包間隔數(shù)據(jù);
2)在上述數(shù)據(jù)的基礎(chǔ)上,計(jì)算得到可以對(duì)正常場(chǎng)景和非正常場(chǎng)景進(jìn)行合理區(qū)分的門(mén)限值;
B.識(shí)別階段
1)獲取目標(biāo)設(shè)備發(fā)送數(shù)據(jù)包的間隔信息;
2)對(duì)所述間隔信息進(jìn)行統(tǒng)計(jì)分析,得到典型數(shù)據(jù)值;
3)將典型數(shù)據(jù)值與門(mén)限值進(jìn)行比對(duì),判定所述數(shù)據(jù)包間隔時(shí)間所存在的場(chǎng)景為多跳或一跳,從而進(jìn)行相應(yīng)的安全處理。
優(yōu)選地,通過(guò)采集同一目標(biāo)設(shè)備的數(shù)據(jù)幀時(shí)間值,獲得目標(biāo)設(shè)備發(fā)送數(shù)據(jù)包的間隔信息。
優(yōu)選地,訓(xùn)練階段,通過(guò)數(shù)據(jù)過(guò)濾,剔除波動(dòng)過(guò)大的偶然數(shù)據(jù),以便得到更加合理準(zhǔn)確的門(mén)限值。
優(yōu)選地,獲取目標(biāo)設(shè)備發(fā)送數(shù)據(jù)包的間隔信息期間,確認(rèn)策略由正常的延遲確認(rèn)策略變更為立即確認(rèn)策略,以快速準(zhǔn)確地得到數(shù)據(jù)包的間隔信息。
優(yōu)選地,目標(biāo)設(shè)備的選擇基于靠近終端設(shè)備,以降低長(zhǎng)鏈路帶來(lái)的環(huán)境波動(dòng)影響,提高計(jì)算精度。
優(yōu)選地,目標(biāo)設(shè)備為DNS服務(wù)器。
優(yōu)選地,通過(guò)采集多次目標(biāo)設(shè)備的數(shù)據(jù)包,從而獲取目標(biāo)設(shè)備發(fā)送數(shù)據(jù)包的間隔信息,所述分析數(shù)據(jù)包括平局值和標(biāo)準(zhǔn)值。
優(yōu)選地,通過(guò)將分析數(shù)據(jù)與門(mén)限值進(jìn)行對(duì)比,以判定數(shù)據(jù)包為多跳或一跳。
優(yōu)選地,數(shù)據(jù)門(mén)限值可通過(guò)以下方法中的至少一種獲得:
1)理論計(jì)算,加上現(xiàn)實(shí)中存在的實(shí)際誤差進(jìn)行調(diào)整后獲得;
2)多次學(xué)習(xí)和訓(xùn)練獲得;
3)實(shí)地檢測(cè)獲取。
優(yōu)選地,如果數(shù)據(jù)包為一跳,則不存在中間人的安全隱患,如果所述數(shù)據(jù)包為多跳,則存在中間人的安全隱患。
另外,本發(fā)明還公開(kāi)了一種終端設(shè)備,其包括:
訓(xùn)練模塊,用于通過(guò)采集正常場(chǎng)景和存在中間人場(chǎng)景的數(shù)據(jù)包間隔信息,進(jìn)行數(shù)據(jù)處理,得到正常和非正常數(shù)據(jù)的門(mén)限值;
收集模塊,用于獲取目標(biāo)設(shè)備發(fā)送數(shù)據(jù)包的間隔信息;
分析模塊,用于對(duì)該目標(biāo)設(shè)備發(fā)送數(shù)據(jù)包的間隔信息進(jìn)行統(tǒng)計(jì)分析,得到分析數(shù)據(jù);
評(píng)估模塊,用于將該分析數(shù)據(jù)與該門(mén)限值進(jìn)行對(duì)比分析,判定該目標(biāo)設(shè)備發(fā)送數(shù)據(jù)包間隔時(shí)間所存在的場(chǎng)景為多跳或一跳,從而進(jìn)行相應(yīng)的安全處理。
本發(fā)明的實(shí)施例中,本發(fā)明通過(guò)采集數(shù)據(jù)傳輸幀,計(jì)算得到數(shù)據(jù)幀的傳輸間隔,并將該間隔值作為無(wú)線傳輸跳數(shù)識(shí)別的有效時(shí)間特征,用于判定中間人的存在概率,可以有效地抵御無(wú)線網(wǎng)絡(luò)環(huán)境中常見(jiàn)的中間人份攻擊問(wèn)題,提升了用戶在無(wú)線網(wǎng)絡(luò)環(huán)境中的安全水平,預(yù)防了經(jīng)濟(jì)損失,提高了安全性能。
本發(fā)明附加的方面和優(yōu)點(diǎn)將在下面的描述中部分給出,這些將從下面的描述中變得明顯,或通過(guò)本發(fā)明的實(shí)踐了解到。
附圖說(shuō)明
本發(fā)明上述的和/或附加的方面和優(yōu)點(diǎn)從下面結(jié)合附圖對(duì)實(shí)施例的描述中將變得明顯和容易理解,其中:
圖1為本發(fā)明基于時(shí)間分布特征檢測(cè)中間人攻擊的方法其中一實(shí)施例的流程示意圖。
具體實(shí)施方式
下面詳細(xì)描述本發(fā)明的實(shí)施例,所述實(shí)施例的示例在附圖中示出,其中自始至終相同或類(lèi)似的標(biāo)號(hào)表示相同或類(lèi)似的元件或具有相同或類(lèi)似功能的元件。下面通過(guò)參考附圖描述的實(shí)施例是示例性的,僅用于解釋本發(fā)明,而不能解釋為對(duì)本發(fā)明的限制。
本技術(shù)領(lǐng)域技術(shù)人員可以理解,除非特意聲明,這里使用的單數(shù)形式“一”、“一個(gè)”、“所述”和“該”也可包括復(fù)數(shù)形式。應(yīng)該進(jìn)一步理解的是,本發(fā)明的說(shuō)明書(shū)中使用的措辭“包括”是指存在所述特征、整數(shù)、步驟、操作、元件和/或組件,但是并不排除存在或添加一個(gè)或多個(gè)其他特征、整數(shù)、步驟、操作、元件、組件和/或它們的組。應(yīng)該理解,當(dāng)我們稱(chēng)元件被“連接”或“耦接”到另一元件時(shí),它可以直接連接或耦接到其他元件,或者也可以存在中間元件。此外,這里使用的“連接”或“耦接”可以包括無(wú)線連接或無(wú)線耦接。這里使用的措辭“和/或”包括一個(gè)或更多個(gè)相關(guān)聯(lián)的列出項(xiàng)的全部或任一單元和全部組合。
本技術(shù)領(lǐng)域技術(shù)人員可以理解,除非另外定義,這里使用的所有術(shù)語(yǔ)(包括技術(shù)術(shù)語(yǔ)和科學(xué)術(shù)語(yǔ)),具有與本發(fā)明所屬領(lǐng)域中的普通技術(shù)人員的一般理解相同的意義。還應(yīng)該理解的是,諸如通用字典中定義的那些術(shù)語(yǔ),應(yīng)該被理解為具有與現(xiàn)有技術(shù)的上下文中的意義一致的意義,并且除非像這里一樣被特定定義,否則不會(huì)用理想化或過(guò)于正式的含義來(lái)解釋。
本技術(shù)領(lǐng)域技術(shù)人員可以理解,這里所使用的“終端設(shè)備”、“終端設(shè)備設(shè)備”既包括無(wú)線信號(hào)接收器的設(shè)備,其僅具備無(wú)發(fā)射能力的無(wú)線信號(hào)接收器的設(shè)備,又包括接收和發(fā)射硬件的設(shè)備,其具有能夠在雙向通信鏈路上,進(jìn)行雙向通信的接收和發(fā)射硬件的設(shè)備。這種設(shè)備可以包括:蜂窩或其他通信設(shè)備,其具有單線路顯示器或多線路顯示器或沒(méi)有多線路顯示器的蜂窩或其他通信設(shè)備;PCS(Personal Communications Service,個(gè)人通信系統(tǒng)),其可以組合語(yǔ)音、數(shù)據(jù)處理、傳真和/或數(shù)據(jù)通信能力;PDA(Personal Digital Assistant,個(gè)人數(shù)字助理),其可以包括射頻接收器、尋呼機(jī)、互聯(lián)網(wǎng)/內(nèi)聯(lián)網(wǎng)訪問(wèn)、網(wǎng)絡(luò)瀏覽器、記事本、日歷和/或GPS(Global Positioning System,全球定位系統(tǒng))接收器;常規(guī)膝上型和/或掌上型計(jì)算機(jī)或其他設(shè)備,其具有和/或包括射頻接收器的常規(guī)膝上型和/或掌上型計(jì)算機(jī)或其他設(shè)備。這里所使用的“終端”、“終端設(shè)備”可以是便攜式、可運(yùn)輸、安裝在交通工具(航空、海運(yùn)和/或陸地)中的,或者適合于和/或配置為在本地運(yùn)行,和/或以分布形式,運(yùn)行在地球和/或空間的任何其他位置運(yùn)行。這里所使用的“終端”、“終端設(shè)備”還可以是通信終端、上網(wǎng)終端、音樂(lè)/視頻播放終端,例如可以是PDA、MID(Mobile Internet Device,移動(dòng)互聯(lián)網(wǎng)設(shè)備)和/或具有音樂(lè)/視頻播放功能的移動(dòng)電話,也可以是智能電視、機(jī)頂盒等設(shè)備。
下面根據(jù)附圖1,通過(guò)實(shí)施例,詳細(xì)介紹本發(fā)明公開(kāi)的基于時(shí)間分布特征檢測(cè)中間人攻擊的方法。
本發(fā)明的實(shí)施例中,根據(jù)存在中間人的通信路徑的時(shí)間分布特征進(jìn)行判定,其依據(jù)的基本原理如下:
正常的無(wú)線鏈路中,用戶和合法路由器之間只存在一跳,當(dāng)存在中間人攻擊時(shí),用戶和路由器之間多了一跳,會(huì)出現(xiàn)中間的無(wú)線數(shù)據(jù)包轉(zhuǎn)發(fā)等現(xiàn)象,這會(huì)導(dǎo)致在時(shí)延上的不一致。這一差異是由于攻擊者的轉(zhuǎn)發(fā)行為而存在的,無(wú)法徹底隱藏的,可以通過(guò)一定的技術(shù)方案檢測(cè)出來(lái),因此可以作為中間人識(shí)別的一個(gè)重要依據(jù)。
為此,本發(fā)明提出一種基于時(shí)間分布特征的中間人攻擊檢測(cè)方法,用于無(wú)線通訊中中間人攻擊的檢測(cè)和預(yù)防,在識(shí)別攻擊者的中間人攻擊方面具有一定效果。
其基本技術(shù)內(nèi)容如下:
獲取用戶發(fā)送數(shù)據(jù)包的間隔信息,以下簡(jiǎn)稱(chēng)包間隔
剔除可能存在的網(wǎng)絡(luò)波動(dòng)信息;
對(duì)采集到的包間隔數(shù)據(jù)進(jìn)行統(tǒng)計(jì)分析,得到包間隔數(shù)據(jù)的平均值;
根據(jù)得到的平均值與門(mén)限值進(jìn)行比對(duì),以便確認(rèn)該包是經(jīng)過(guò)兩個(gè)無(wú)線傳輸(兩跳)還是一個(gè)無(wú)線傳輸(一跳);
如果確認(rèn)該包經(jīng)過(guò)了兩跳,則可提示目前存在中間人的可能較大。
本技術(shù)中,能夠合理區(qū)分正常場(chǎng)景和非正常場(chǎng)景的門(mén)限值的設(shè)定較為關(guān)鍵,除去本實(shí)施例采用的實(shí)地檢測(cè)方式外,還可以通過(guò)如下兩種方式獲得:1)根據(jù)理論計(jì)算結(jié)果,在加上現(xiàn)實(shí)中存在的實(shí)際誤差進(jìn)行調(diào)整后得到;2)通過(guò)多次學(xué)習(xí)、訓(xùn)練獲取。
同時(shí),在典型值的設(shè)定過(guò)程中,可以根據(jù)檢測(cè)的具體需求,對(duì)判定結(jié)果的精度給出不同的判定閾值,既避免資源的無(wú)謂消耗,又避免可能存在的過(guò)大的誤差。
以下以具體一優(yōu)選實(shí)施例,對(duì)本發(fā)明的技術(shù)內(nèi)容進(jìn)行詳細(xì)的說(shuō)明:
為了確認(rèn)客戶端的網(wǎng)絡(luò)接入鏈路中存在的無(wú)線跳數(shù),我們需要選擇一個(gè)合適的參數(shù)把普通的單跳無(wú)線連接和多跳無(wú)線連接區(qū)分開(kāi)來(lái)。經(jīng)過(guò)研究和實(shí)際測(cè)試,我們發(fā)現(xiàn)數(shù)據(jù)包到達(dá)的時(shí)間間隔(以下稱(chēng)為包間隔)在單跳無(wú)線鏈路和多跳無(wú)線鏈路中存在明顯的區(qū)別,經(jīng)過(guò)必要的數(shù)據(jù)處理之后,可以作為檢測(cè)無(wú)線跳數(shù)的重要依據(jù)。
包間隔即為從同一設(shè)備(服務(wù)器或者AP)發(fā)來(lái)的連續(xù)兩個(gè)數(shù)據(jù)包之間的數(shù)據(jù)間隔。為了更加快速和準(zhǔn)確的測(cè)量這一數(shù)據(jù),我們?cè)诮K端臨時(shí)采取立即確認(rèn)策略,即收到對(duì)方發(fā)來(lái)的數(shù)據(jù)包之后馬上給予確認(rèn),發(fā)送ACK包,而非通常使用的延遲確認(rèn)策略,即連續(xù)收到兩個(gè)或更多的數(shù)據(jù)包之后再發(fā)送一個(gè)ACK包。
這樣,當(dāng)收到來(lái)自同一設(shè)備的兩個(gè)數(shù)據(jù)包分別為P1和P2時(shí),將馬上發(fā)出兩個(gè)確認(rèn)包A1和A2,則此時(shí)其包序列將為P1A1P2A2。如果P1和P2到達(dá)的時(shí)間分別是TP1和TP2,則這兩個(gè)包的包間隔可以計(jì)算表示為T(mén)P2-TP1
為盡量減少較長(zhǎng)傳輸鏈路可能帶來(lái)的環(huán)境波動(dòng)誤差,建議采用距離近一些的設(shè)備采集相應(yīng)的數(shù)據(jù)包間隔,本實(shí)施實(shí)例中采用DNS服務(wù)器作為目標(biāo)設(shè)備,主要原因有:1)DNS設(shè)備存在廣泛,已經(jīng)成為必需的網(wǎng)絡(luò)基礎(chǔ)設(shè)施;2)由于用戶一般采用運(yùn)營(yíng)商提供的就近DNS,服務(wù)器一般距離較近。另外,此選擇采用DNS服務(wù)器作為目標(biāo)設(shè)備,并不作為本發(fā)明內(nèi)容的具體限制。
具體計(jì)算方法如下:
在訓(xùn)練階段:
1)分別采集正常場(chǎng)景和存在中間人場(chǎng)景的數(shù)據(jù)包間隔數(shù)據(jù),并保存;
2)在上述數(shù)據(jù)的基礎(chǔ)上,首先剔除明顯的偏離點(diǎn),然后分別計(jì)算得到兩種場(chǎng)景下數(shù)據(jù)的平均值和標(biāo)準(zhǔn)差,正常場(chǎng)景下的平均值和標(biāo)準(zhǔn)差分別記為:u0,d0,非正常場(chǎng)景下的平均值和標(biāo)準(zhǔn)差分別記為:u1,d1;
3)計(jì)算門(mén)限值T的公式如下:
如果u1>u0,則
T=u0+(u1-u0)×d0/(d0+d1)
如果u1≤u0,則前期數(shù)據(jù)采集有誤,需要重新采集。
在檢測(cè)階段:
連續(xù)采集數(shù)據(jù)包,并根據(jù)上述公式計(jì)算得到相應(yīng)的包間隔值,為了達(dá)到較高的準(zhǔn)確度,可以設(shè)定一個(gè)數(shù)量下限,本實(shí)施實(shí)例中設(shè)定該值為100;
對(duì)這個(gè)100個(gè)包間隔值進(jìn)行數(shù)據(jù)清洗,剔除明顯不合理的值;
計(jì)算上述數(shù)據(jù)的平均值c;
將平均值c與門(mén)限值T進(jìn)行比對(duì),如果c≥T,則判定無(wú)線跳數(shù)較大概率為多跳,存在安全隱患。
對(duì)于專(zhuān)業(yè)人士,還可以根據(jù)該模型和檢測(cè)過(guò)程設(shè)計(jì)自己的算法和利用方法,典型地,比如門(mén)限值的獲取方法、采集數(shù)據(jù)包的個(gè)數(shù)、數(shù)據(jù)篩選的具體方法等,在具體環(huán)境中達(dá)到最好的效果,從而對(duì)存在中間人的無(wú)線鏈路的相關(guān)特征進(jìn)行更加全面分析。
本發(fā)明還公開(kāi)了一種終端設(shè)備,包括:
訓(xùn)練模塊,用于通過(guò)采集正常場(chǎng)景和存在中間人場(chǎng)景的數(shù)據(jù)包間隔信息,進(jìn)行數(shù)據(jù)處理,得到正常和非正常數(shù)據(jù)的門(mén)限值;
收集模塊,用于獲取目標(biāo)設(shè)備發(fā)送數(shù)據(jù)包的間隔信息;
分析模塊,用于對(duì)該目標(biāo)設(shè)備發(fā)送數(shù)據(jù)包的間隔信息進(jìn)行統(tǒng)計(jì)分析,得到分析數(shù)據(jù);
評(píng)估模塊,用于將該分析數(shù)據(jù)與所述門(mén)限值進(jìn)行對(duì)比分析,判定該數(shù)據(jù)包間隔時(shí)間所存在的場(chǎng)景為多跳或一跳,從而進(jìn)行相應(yīng)的安全處理。
該終端設(shè)備的具體運(yùn)行,可以參考上述方法實(shí)施例的方法步驟,這里不做詳細(xì)的描述。
以上所述僅是本發(fā)明的部分實(shí)施方式,應(yīng)當(dāng)指出,對(duì)于本技術(shù)領(lǐng)域的普通技術(shù)人員來(lái)說(shuō),在不脫離本發(fā)明原理的前提下,還可以做出若干改進(jìn)和潤(rùn)飾,這些改進(jìn)和潤(rùn)飾也應(yīng)視為本發(fā)明的保護(hù)范圍。