高 見, 袁得崳
(中國人民公安大學(xué)信息技術(shù)與網(wǎng)絡(luò)安全學(xué)院, 北京 100038)
基于WIFI探針的預(yù)警系統(tǒng)設(shè)計與研究
高 見, 袁得崳
(中國人民公安大學(xué)信息技術(shù)與網(wǎng)絡(luò)安全學(xué)院, 北京 100038)
進(jìn)入21世紀(jì)后,各類社會犯罪大量出現(xiàn),并且呈現(xiàn)出遠(yuǎn)程化、高智能化、高科技化等特點(diǎn)。WIFI技術(shù)的使用逐漸普及,如何通過WIFI技術(shù)發(fā)現(xiàn)潛在犯罪,并能對可能出現(xiàn)的犯罪事件進(jìn)行預(yù)警引起了警方的重點(diǎn)關(guān)注,是目前研究的熱點(diǎn)問題。通過分布式采集WIFI網(wǎng)絡(luò)中終端主動發(fā)送探針的數(shù)據(jù)包的MAC地址信息和SSID信息,對數(shù)據(jù)進(jìn)行匯總分析,達(dá)到對大人流的預(yù)警和指定終端的行為軌跡分析,并搭建了預(yù)警系統(tǒng),通過實驗數(shù)據(jù)驗證了預(yù)警系統(tǒng)的可行性和前瞻性。
WIFI; MAC; SSID; 探針; 預(yù)警
目前,大量的互聯(lián)網(wǎng)設(shè)備支持WIFI接入的功能,比如手機(jī),PAD,筆記本等。移動設(shè)備接入互聯(lián)網(wǎng)的方式一種是通過3G、4G網(wǎng)絡(luò),另一種是通過WIFI功能,由于WIFI高速、穩(wěn)定、免費(fèi)、便利的特點(diǎn),很多用戶喜歡通過WIFI的方式接入互聯(lián)網(wǎng),并且手機(jī)的WIFI功能經(jīng)常處于開放狀態(tài)。通過對WIFI認(rèn)證協(xié)議的研究,一些學(xué)者發(fā)現(xiàn),在WIFI通信過程的Probe request中包含了終端的MAC地址信息和SSID重要信息。
在移動終端接入WIFI網(wǎng)絡(luò)的時候,需要發(fā)送Probe request探針數(shù)據(jù)包,而這些數(shù)據(jù)包中包含了該終端之前接入過的SSID名稱以及終端的MAC地址信息,這種探測模式一般稱為主動發(fā)現(xiàn)模式。WIFI通信過程經(jīng)常會使用WPA和WPA2的加密方式,以保證終端和AP之間的數(shù)據(jù)包傳輸?shù)臋C(jī)密性,防止被第三方竊聽。然而在終端接入AP之前,終端需要去發(fā)現(xiàn)AP的存在,兩者需要發(fā)送一些數(shù)據(jù)包來標(biāo)識自身的存在,而前期的交互信息是明文,而且包含了終端的MAC地址信息和之前接入過的SSID信息。MAC地址信息可以唯一的標(biāo)識一臺終端設(shè)備,不同的廠商擁有自己的MAC地址段,可以通過MAC地址直接查詢該MAC地址對應(yīng)的終端設(shè)備廠商信息。因此,在手機(jī)識別的過程中,MAC地址可以作為其唯一性的標(biāo)識,不同的兩個手機(jī)MAC地址是不同的。
表1描述了部分廠商的MAC地址段信息,通過MAC地址的前6位,可以查詢到該MAC地址屬于哪個廠商生產(chǎn)。每個廠商對應(yīng)的MAC地址段可能有很多,表1中只列出了常用手機(jī)廠商的某個MAC地址段。
表1 常見的MAC廠商表
由于WIFI具有免費(fèi)、高速的特點(diǎn),越來越多的人更傾向于使用WIFI接入網(wǎng)絡(luò)。因此,相對于傳統(tǒng)的運(yùn)營商基站信息分布圖,WIFI分布圖更能反映出當(dāng)?shù)氐娜丝诿芏?。普通的WIFI接入點(diǎn)的覆蓋范圍比較小,從幾十米到幾百米不等,而對于基站,覆蓋范圍小至幾百米,大至幾公里,WIFI接入點(diǎn)更能說明手機(jī)終端的地理位置。圖1顯示了法國里昂最新的數(shù)據(jù)統(tǒng)計[1],圖1左圖中包含了大約3000個基站,其中覆蓋了2G、3G和LTE,在圖1右圖中包含了50000個WIFI接入點(diǎn)。
圖1 基站與AP的分布圖
(1)客戶端連接方式
IEEE802.11協(xié)議鏈接過程的一個重要部分是主動發(fā)現(xiàn)熱點(diǎn)并接入WLAN網(wǎng)絡(luò)。在這個過程中,首先是WLAN網(wǎng)絡(luò)的AP通過發(fā)送廣播包向外界公布該SSID,并發(fā)送Beacons幀數(shù)據(jù)包。WLAN網(wǎng)絡(luò)中的客戶端通過對收到的SSID進(jìn)行鑒別和對比,選擇最優(yōu)的,并發(fā)送請求連接的數(shù)據(jù)包,最后是認(rèn)證并連接到AP。
(2) Beacons探針
WLAN網(wǎng)絡(luò)中的客戶端通過Beacon探針來發(fā)現(xiàn)指定地區(qū)開放AP的SSID信息。WLAN中的路由器會周期性地廣播beacons數(shù)據(jù)包,在beacons中包含了AP的SSID信息和MAC地址信息[2-3]。
(3)IEEE 802.11 探針
客戶端掃描可用AP的方法可以分為兩種:主動掃描和被動掃描[4],如圖2所示。
圖2 協(xié)議認(rèn)證過程
①主動掃描:WLAN中的客戶端會主動地在掃描的頻道中發(fā)送探針,并等待AP的回應(yīng),不同的路由器回應(yīng)時間不等,大約在10ms左右。請求探針有兩種類型,直接探針和廣播探針。
直接探針:客戶端定期發(fā)送曾經(jīng)接入過的SSID的探針請求,如果擁有該SSID的AP收到請求,便會回應(yīng),其它AP不予回應(yīng)。直接探針中包含了終端的MAC地址信息和曾經(jīng)接入過的SSID信息。
圖3 主動掃描直接探針
廣播探針:在廣播探針中,客戶端會發(fā)送一個沒有SSID信息的探針請求,客戶端附近的所有路由器在收到該探針后,返回自己的SSID信息數(shù)據(jù)包。在廣播探針中只包含了終端的MAC地址信息。
圖4 主動掃描廣播探針
②被動掃描:在被動掃描模式,客戶端只是被動的在某個頻段監(jiān)聽附近AP廣播的beacon探針,通過對beacon探針中SSID的識別來決定是否接入,如圖5所示。
圖5 被動掃描
根據(jù)802.11協(xié)議本身的特點(diǎn),在移動終端打開WIFI功能的前提下,終端會發(fā)送Probe Request數(shù)據(jù)包,數(shù)據(jù)包中包含了終端的MAC地址信息和曾經(jīng)接入過的AP的SSID。因此本文設(shè)計了分布式WIFI探測系統(tǒng),以便獲取終端的MAC地址信息、時間信息、位置信息和SSID信息,并最終對所獲得數(shù)據(jù)進(jìn)行檢索和分析,從而達(dá)到預(yù)警的目的。
該系統(tǒng)包括終端采集器、后臺數(shù)據(jù)庫和數(shù)據(jù)分析系統(tǒng)3個部分,如圖6所示。
圖6 分布式WIFI主動探測系統(tǒng)
2.1 終端采集器
在實驗過程中,我們選擇OPENWRT路由器,該路由器可以將自己定制的操作系統(tǒng)刷入該設(shè)備,并作為終端采集器。這個設(shè)備用來獲取無線通訊過程中的數(shù)據(jù)包,并且收集經(jīng)過過濾篩選的信息。配置無線路由器最關(guān)鍵的就是要將配置好的無線路由器設(shè)置成監(jiān)聽模式,在該模式下路由器可以獲取所有嗅探到的數(shù)據(jù)包,并重點(diǎn)分析Probe Request探針,從這些探針請求中,獲取移動終端的MAC地址,同時生成一份SSID的列表。如表2所示,獲取的列表中有一些MAC地址是重復(fù)信息,比如16:A7:C6:FC:11:B3發(fā)送的Probe Request信息中包含SSID為“29EC”的信息。有些信息表明一個MAC地址接入過多臺路由器,比如58:44:98:B0:29:5D曾經(jīng)接入過SSID為“蘇寧易購許鎮(zhèn)店1”和“TH_XSSS_5G”兩個路由器。
表2 主動探針中包含的SSID信息
2.2 數(shù)據(jù)庫設(shè)計
采集端的數(shù)據(jù)傳輸?shù)胶笈_服務(wù)器上,需要將數(shù)據(jù)存儲在數(shù)據(jù)庫中,對于區(qū)域小、數(shù)據(jù)量少的WIFI數(shù)據(jù)可以使用MySQL,如果數(shù)據(jù)量大,可以使用Oracle和SQL Server。在數(shù)據(jù)庫中設(shè)計的主要表有4個,其中MAC信息表、SSID信息表和終端采集信息表為靜態(tài)表,存儲基礎(chǔ)信息;采集信息表為動態(tài)表,存儲采集信息。表格設(shè)計如表3所示。
表3 MAC信息表
MAC信息表中MACID是主鍵,為每個不同的MAC地址提供唯一標(biāo)識,MAC字段為MAC地址信息,MACMAN是MAC地址對應(yīng)的廠商信息。
表4 SSID信息表
如表4所示的SSID信息表中,SSIDID是主鍵,為采集到的每個SSID提供唯一標(biāo)識,SSIDNAME字段為路由器的SSID名字,可以重復(fù),GPSLAT和GPSLNG分別為對應(yīng)SSID的經(jīng)緯度。
表5 采集終端信息表
表5所示的采集終端信息表,記錄了所有采集終端的基本信息,CJNAME字段為采集終端的名字,GPSLAT和GPSLNG分別為采集終端的經(jīng)緯度。
表6 采集信息表
表6所示的采集信息表,動態(tài)記錄了所有采集終端采集的MAC地址信息,分別與MAC信息表和采集終端表的CJID和MACID外鍵關(guān)聯(lián),TIME為采集終端第一次采集到該MAC的時間。
3.1 大人流預(yù)警
2014年12月31日23時35分,很多游客市民聚集在上海外灘迎接新年,上海市黃浦區(qū)外灘陳毅廣場東南角通往黃浦江觀景平臺的人行通道階梯處有人跌倒,繼而引發(fā)多人摔倒、疊壓,致使擁擠踩踏事件發(fā)生,造成36人死亡,49人受傷。通過本文設(shè)計的預(yù)警系統(tǒng),可以統(tǒng)計平時每個終端采集器附近手機(jī)終端數(shù)量的均值,同時可以統(tǒng)計多個終端采集器所代表的某個區(qū)域的手機(jī)終端數(shù)量的均值。
在系統(tǒng)中,對人員聚集區(qū)設(shè)置閾值M,當(dāng)該區(qū)域中的所有采集器的采集終端數(shù)量大于M時,立即向當(dāng)?shù)嘏沙鏊A(yù)警,需增派警力維持秩序,預(yù)防踩踏事件。
如圖7所示,某區(qū)域由3個終端采集器覆蓋,S1,S2,S3采集的人數(shù)分別為N1,N2,N3,閾值為M,那么預(yù)警條件為:
圖7 大人流數(shù)據(jù)統(tǒng)計圖
因為每個采集器的覆蓋范圍有重疊,所以在計算區(qū)域人數(shù)的時候取各個采集器的并集。
3.2 案件預(yù)警
通過該預(yù)警系統(tǒng)可以預(yù)測同一作案人,某類案件的發(fā)生。假設(shè)某商場發(fā)生偷竊案件,該商場在終端采集器S1的覆蓋范圍,根據(jù)偷盜時間,可以獲得在該時間段內(nèi)出現(xiàn)的MAC地址集合為
US1={M1,M2,……,Mn}
其中Mn代表不同手機(jī)的MAC地址。
同類盜竊案件發(fā)生分別發(fā)生在S2,S3的覆蓋范圍,其對應(yīng)的MAC地址集合分別為
US2={M1,M2,……,Mn}
US3={M1,M2,……,Mn}
計算
KM=US1∩US2∩US3={Mi,Mj,…,Mk}
KM集合中的MAC地址代表這些MAC地址對應(yīng)的手機(jī)在多個盜竊案發(fā)生地均出現(xiàn)過,因此這些MAC地址手機(jī)的用戶為重點(diǎn)嫌疑對象。如圖8所示,3個偷竊案件所在采集終端范圍的交集是重點(diǎn)嫌疑對象,即圖8中深色的點(diǎn)。
圖8 案件發(fā)生地數(shù)據(jù)統(tǒng)計圖
當(dāng)該MAC再出現(xiàn)在某個采集終端區(qū)域內(nèi)時,系統(tǒng)給出預(yù)警,民警應(yīng)根據(jù)預(yù)測范圍重點(diǎn)防范可能出現(xiàn)的盜竊案件。
3.3 軌跡分析
通過預(yù)警系統(tǒng),可以對某個手機(jī)接入過的SSID進(jìn)行統(tǒng)計分析,并結(jié)合War Driving技術(shù)來確定該手機(jī)的軌跡。在實驗過程中,我們先在手機(jī)安裝War Driving APP在校園內(nèi)行走,獲取所有開放WIFI的SSID和它們的GPS信息,采集的SSID和GPS信息可以在Google Earth上直接導(dǎo)入。
對于指定的MAC地址,進(jìn)入某個采集終端的范圍后,可以獲得該手機(jī)曾經(jīng)接入過的SSID信息集合,通過該集合,結(jié)合之前的War Driving信息,就可以在地圖上標(biāo)注該手機(jī)經(jīng)常的活動軌跡,如圖9所示。
圖9 校園內(nèi)WIFI軌跡圖
除此之外,通過預(yù)警系統(tǒng),可以以采集終端的GPS信息作為參照點(diǎn),以某個手機(jī)進(jìn)入采集終端的時間為時間序列,進(jìn)而標(biāo)注特定手機(jī)的行為軌跡。這對于刑事案件在某一區(qū)域抓捕嫌疑人,以及鎖定犯罪嫌疑人的逃跑路線、逃跑范圍有重要意義。
通過對802.11協(xié)議族的分析,發(fā)現(xiàn)在建立連接初期,移動終端會暴露一些隱私信息,比如MAC地址和曾經(jīng)接入過的SSID名稱。在本文中提出了一種分布式的采集系統(tǒng),可以將部署在各區(qū)域的采集終端采集的數(shù)據(jù)最終匯總到中心數(shù)據(jù)庫服務(wù)器上。對數(shù)據(jù)庫中的數(shù)據(jù)進(jìn)行分析,并通過預(yù)警算法對不同類型的事件給出預(yù)警。此外,還提出了分布式預(yù)警系統(tǒng)的3種應(yīng)用場景:大人流預(yù)警、案件預(yù)警和軌跡分析。在下一步的工作過程中,將對互聯(lián)網(wǎng)的公共數(shù)據(jù)和公安的特定案件數(shù)據(jù)進(jìn)行關(guān)聯(lián)分析,研究預(yù)警模型,對社會上的潛在犯罪行為進(jìn)行預(yù)測。
[1] RAVENEAU P,STANICA R,F(xiàn)IORE M,et al. Urban-scale cellular offloading through Wi-Fi access points:A measurement-based case study[C]∥Research and Technologies for Society and Industry Leveraging a better tomorrow (RTSI),2015 IEEE 1st International Forum on. IEEE, 2015:132-137.
[2] CUNCHE M,KAAFAR M A,BORELI R. Linking wireless devices using information contained in Wi-Fi probe requests[J]. Pervasive & Mobile Computing,2014,11(4):56-69.
[3] MUSA A B M,ERIKSSON J. Tracking unmodified smartphones using wi-fi monitors[C]∥ACM Conference on Embedded Network Sensor Systems. 2012:281-294.
[4] CUNCHE M. I know your MAC Address: Targeted tracking of individual using Wi-Fi[J]. Journal of Computer Virology and Hacking Techniques,2014,10(4):219-227.
(責(zé)任編輯 于瑞華)
高 見(1982—), 男, 山東菏澤人, 博士, 講師。 主要研究方向為網(wǎng)絡(luò)安全、僵尸網(wǎng)絡(luò)。
D035.39