唐 楷 趙韋鑫 蔣宏宇 吳亞東,2 王 松,3
(1. 西南科技大學計算機科學與技術學院 四川綿陽 621010;2. 西南科技大學四川省軍民融合研究院 四川綿陽 621010; 3. 中國工程物理研究所電子工程研究所 四川綿陽 621010)
“偽基站”即假基站,能夠搜集以其為中心、一定半徑范圍內(nèi)的手機卡信息,利用GSM單向驗證漏洞偽裝成運營商的非法無線電通信設備,通過冒用銀行、運營商、國家機關或他人號碼的名義,強行向用戶發(fā)送詐騙、色情、賭博、廣告等短信息。不法人員利用偽基站發(fā)送短信,不僅干擾公共頻率資源,影響人們的正常通訊,而且通過群發(fā)短信的方式發(fā)送內(nèi)容不受控的短信息,嚴重侵害了社會秩序。
Hilas設計了一套私有網(wǎng)絡中短信詐騙檢測的專家系統(tǒng)[1],Borgaonkar等[2]建立了一套垃圾短信檢測的框架。主題模型通常被用來識別垃圾短信和垃圾短信主題,類似的工作如將其運用于垃圾郵件檢測上[3]。城市軌跡是垃圾短信監(jiān)測系統(tǒng)中一個重要的特征,其中對于軌跡去噪,卡爾曼濾波[9-10]能夠從一系列的不完全及包含噪聲的測量中估計動態(tài)系統(tǒng)的狀態(tài),Lee等[8]詳細介紹了卡爾曼濾波在軌跡數(shù)據(jù)上的運用。而停留點能從偽基站軌跡數(shù)據(jù)中提取出偽基站的停留點,文獻[11-12]中在用戶的GPS軌跡中利用了停留點技術進行旅游推薦。合并相似軌跡也是偽基站城市軌跡數(shù)據(jù)可視分析系統(tǒng)中重要的一個維度,Gaffney 等[13]提出了采用EM算法的方式聚合軌跡,Li等[14]提出了一種增量式軌跡聚類的方法來減少軌跡聚類的時間空間消耗。鄭宇等[4]也對城市數(shù)據(jù)中軌跡去噪、軌跡重要特征挖掘等問題上進行了很完善的總結(jié)。
偽基站數(shù)據(jù)常常是由用戶主動上報垃圾短信前最后連接到合法基站的位置時間和其接收到的垃圾短信內(nèi)容組成。但偽基站具有十分強的流動性,因此通過根據(jù)其近似位置和傳統(tǒng)的數(shù)據(jù)分析方法,仍然很難把握偽基站的活動規(guī)律。本文將采用可視法分析方法,從短信內(nèi)容和其時空活動信息開始挖掘,揭示偽基站的行為模式,旨在提出一套偽基站時空信息分析框架,為有關部門打擊偽基站提供有效的解決方案。
針對偽基站發(fā)送的垃圾短信的時空特征以及其文本特征,本文將從分析任務、數(shù)據(jù)處理和挖掘、時空特征可視分析三個方面對分析流程(如圖1所示)進行闡述。在數(shù)據(jù)處理部分,首先對垃圾短信進行數(shù)據(jù)清洗,根據(jù)短信相似度對短信進行聚類;另一方面對垃圾短信進行數(shù)據(jù)清洗、文本分詞、詞頻統(tǒng)計,對短信進行人工分類,根據(jù)分類結(jié)果和詞頻統(tǒng)計選擇具有分類意義的詞語,使用這些詞匯對短信進行分類,最后通過短信偽造的號碼和文本中設計的網(wǎng)址對短信的危害性進行評估。其次對于偽基站的時空數(shù)據(jù),通過數(shù)據(jù)清理,軌跡分段,分離不同偽基站等預處理方式來去除數(shù)據(jù)中的冗余和噪聲,經(jīng)過軌跡進行壓縮后,對其進行停留點分析、頻繁模式分析等軌跡數(shù)據(jù)模式挖掘。對處理后的數(shù)據(jù),根據(jù)其時空特征進行可視化,本文的分析任務是幫助分析人員探索偽基站的行為模式,幫助公安人員對偽基站進行打擊。
圖1 偽基站行為模式分析流程Fig.1 The process of analysing pseudo base station behaviour pattern
2.1.1 相似短信聚類
垃圾短信由于其目的單一明確,往往其短信內(nèi)容相似,很多短信只是標點符號不同、短信中插入的電話號碼、QQ、微信號不同或者對相同的事物采用了不同的措辭。
本文設計的方法能夠從這些短信中找到基短信,并將內(nèi)容少量不同的短信視為它的衍生短信。
算法如下:
Step 1: 通過去除掉短信中的標點符號,然后通過Jieba[15]對其進行分詞,再去除掉詞語集合中的停用詞,得到詞語集合Si。
(1)
最后將兩個權重相乘可計算其語義權重Ci,j=Fi,j×Ii,j。
Step 3:計算兩兩短信間的HL指數(shù)。其中短信x和y之間的差異度Hx,y:
(2)
式中,如果主導文字序列完全相同,Sx和Sy之間的差異率為0。通過差異度可以計算短信x和短信y之間的相似度HL指數(shù):
(3)
經(jīng)過該算法對13 000條短信進行相似聚類之后,只剩下3 000條基短信,大大縮減了之后的計算量以及人工工作量。
2.1.2 垃圾短信分類
偽基站團伙往往會同時發(fā)出不同類型的垃圾短信,一部分不法分子通過垃圾短信來進行違法活動宣傳,還有一部分不法分子通過這些短信來進行詐騙。不同類型的垃圾短信,對人們的危害程度各有不同,根據(jù)短信的特點以及危害程度,本文使用統(tǒng)計方法以及語言規(guī)則將垃圾短信分為廣告、詐騙、色情、謠言、賭博、其他6種類型。首先通過專家人工標注對少量短信進行分類,再通過研究其文本,對其進行分詞和詞頻統(tǒng)計,分析在某類別中出現(xiàn)詞頻較高且在其他類中出現(xiàn)較少的詞語,將其作為候選關鍵詞作為垃圾短信分類的依據(jù),從而使用關鍵詞匹配對短信進行分類(圖2)。
圖2 偽基站垃圾短信類型分布以及垃圾短信中最常假冒的號碼Fig. 2 The distribution of spam messages, and the most commonly counterfeited numbers in these messages
2.1.3 垃圾短信危害性評估
為了幫助相關部門最有效地打擊偽基站,本文對垃圾短信的危害性進行了評估,通過識別短信是否出現(xiàn)號碼、號碼是否和發(fā)送號碼相同以及短信中是否出現(xiàn)鏈接等特征,本文制定了垃圾短信危害度評估公式:
Degree=Wsource+Wlink+Wnumber
(4)
其中Wsource為偽造號碼的權重,Wlink為短信中鏈接的權重,Wnumber為短信中出現(xiàn)號碼的權重,該號碼的權重是基于對所有短信統(tǒng)計出其出現(xiàn)次數(shù)后除以短信總數(shù)來對此進行加權。通過最后得到的權值來區(qū)分出較嚴重的金融詐騙、虛假宣傳和推銷以及對用戶進行騷擾的程度。如果發(fā)送號碼偽造已知的銀行號碼或者運營商號碼,并且短信中出現(xiàn)鏈接的情況,該類短信將認為是危害性最為嚴重的類型。本文希望借助此評估方法幫助公安部門可以對危害性最大的垃圾短信偽基站進行優(yōu)先打擊。
偽基站軌跡數(shù)據(jù)具有時空有序性(偽基站軌跡數(shù)據(jù)是具有位置、時間、內(nèi)容的采樣數(shù)據(jù),其軌跡點蘊含了偽基站的時空特征)、采樣異頻性(由于偽基站數(shù)據(jù)是由不同用戶上報,軌跡活動存在隨機性和時間差距較大的特征)和數(shù)據(jù)質(zhì)量差(由于偽基站的位置無法被直接采樣,只能通過收到其發(fā)出短信的用戶的地址來估測,而對用戶有一定的精度影響)的特點。而偽基站軌跡作為追蹤基站的主要對象,預處理的效果將直接影響后期對偽基站軌跡數(shù)據(jù)進行數(shù)據(jù)挖掘和可視化的效果。同時,針對不同的挖掘目標,制定不同的預處理方案具有重要的作用。
2.2.1 偽基站軌跡去噪
偽基站的位置是將用戶主動上報垃圾短信前最后連接的合法基站的位置近似作為偽基站的位置。
經(jīng)過數(shù)據(jù)分析,偽基站中存在兩種不同的噪聲。一種是采樣數(shù)據(jù)中同一時間存在多個位置,造成原因可能如圖3所示,多個同一時間接受偽基站短信的用戶處于不同位置(偽基站覆蓋位置剛好跨越多個基站)。另一種是由軟硬件設備異常導致的錯誤采樣,例如移動對象進入室內(nèi)或其他干擾 GPS 接收信號而導致定位誤差。這些噪音點會極大影響軌跡數(shù)據(jù)挖掘和分析的結(jié)果,本文針對兩種情況定義了不同的軌跡數(shù)據(jù)清洗方法。
圖3 偽基站存在多種位置的示例圖Fig. 3 An example diagram where a pseudo base station exists in a variety of locations
對于同一時間存在多個位置這樣的情況,通過觀察數(shù)據(jù)中點的分布可以發(fā)現(xiàn)兩種情況在軌跡中都存在。針對該種噪音,本文通過根據(jù)軌跡分布排除超出軌跡1.5×IQR(四分位距)的數(shù)據(jù)點,然后求出剩余數(shù)據(jù)點組成凸包的質(zhì)心作為偽基站在當前時間點的位置(圖4)。
圖4 偽基站在同一時刻存在多個位置的分布情況和去除噪聲效果對比效果Fig. 4 The distribution of PBS at the same time and the contrast effect of trajectory denoising result
另一種情況是針對由軟硬件設備異常導致的錯誤采樣,在這個領域有很多相關工作,通過中值或均值濾波進行去噪[4],對于測量點Ai,對其的真值估計在其前(n-1)/2和后n/2個軌跡點的均值或中值中,其中n為滑窗大小。中值濾波和均值濾波的處理過程相似,但通過實驗發(fā)現(xiàn),滑動窗口的大小較大時,均值能更好地估計真值的大小,而在處理極端錯誤值時,中值濾波要比均值濾波具有更強的魯棒性。在去除密集軌跡的噪聲時,中值濾波和均值濾波都能很好地處理異常值,但在稀疏軌跡或者多個連續(xù)噪聲點時,這兩種濾波方式都不能取得比較好的效果。所以本文采用對兩者進行平均的方式,減少了異常值對于整體軌跡的影響(圖5)。
圖5 軌跡去除噪聲效果的對比Fig. 5 The comparison of trajectory denoising result
2.2.2 不同基站偽基站軌跡分離
一條短信可能由多個偽基站發(fā)出,這大大提高了數(shù)據(jù)分析難度,為了從偽基站大量的時空軌跡中抽取出基站實體,需要根據(jù)時間切片對軌跡進行分組,然后根據(jù)每個時間片的距離以及時間判斷其是否屬于一個基站,該算法流程如下:
Start:輸入經(jīng)過時間切片后的軌跡序列S,設P為序列S中的點
構建偽基站軌跡樹T
FORSiinS:
FORPjinSi:
IFjequal 1:
AddNode(T,Pj)
Reduce(T→LNs)
ELSE:
FORPkinT→LNs:
IF Dis(Pk,Pj)>D:
AddNode(Pk,Pj)
END IF
ELSE:
AddNode(T,Pj)
END FOR
END IF
END FOR
END FOR
End:輸出軌跡樹T
刪除掉長度小于最長序列長度一半的序列后,樹中每一個序列即一個基站的行為軌跡,之后的可視分析工作將建立在該分離過的偽基站行為軌跡。
2.2.3 時空軌跡數(shù)據(jù)結(jié)構
由于偽基站軌跡點定位精度有限,所以將地圖按一定約定劃分成網(wǎng)格,將偽基站的軌跡點視為偽基站在此范圍中活動??紤]分區(qū)的大小和分區(qū)的形狀對于系統(tǒng)的性能和下一步挖掘有意義停留點。本文通過地理編碼算法Geohash[5]得到一個分層的空間數(shù)據(jù)結(jié)構,將城市地圖劃分為76 m×76 m的網(wǎng)格單元。該數(shù)據(jù)結(jié)構(圖6)提供了任意精度,并且可以通過逐漸從編碼字節(jié)串末尾逐漸刪除字節(jié),以減小其大小(并逐漸失去精度)。由于逐漸的精度退化,相近的地方經(jīng)常出現(xiàn)相似的前綴。共享前綴越長,兩個地方越接近。
圖6 Geohash編碼方式Fig. 6 The way of geohash encoding
偽基站的行為模式將從基站的活躍時間區(qū)間、基站活躍地理位置、偽基站發(fā)送短信類型進行反映,發(fā)送不同類型垃圾短信的偽基站往往擁有不同的行為模式。
通過提取不同種類短信的時間特征,從圖7中可以發(fā)現(xiàn)色情短信經(jīng)常從晚上開始發(fā)送并且一直到午夜,而賭博和廣告這類短信主要在午間時段較為活躍。
通過提取不同種類短信的空間特征,發(fā)現(xiàn)詐騙類的短信更傾向與環(huán)繞整個北京城進行垃圾短信的散播,而色情類的短信更容易在賓館、火車站和地鐵站附近散播。
圖7 不同種類偽基站時間特征Fig. 7 Temporal characteristics of different pseudo base stations
通過對時間特征和空間的分析,能夠針對不同類型的偽基站制定不同的打擊方案,從而提高打擊效率。
偽基站在靜止和勻速運行狀態(tài)下都會產(chǎn)生大量的冗余點,其中偽基站在某一時間段駐留時間較長, 稱之為停留點(stay point)[6]。軌跡中這些點反映了偽基站一段時間的行為,例如停留休息、針對特定地點的投放,而這種地點能為警方抓捕相關罪犯有不少提示。
本文中的偽基站軌跡是由偽基站活動的點序列組成,每個點pi包括了pi.lng(經(jīng)度)、pi.lng(緯度)、pi.v(偽基站移動速度)、pi.t(測量時間)、pi.w(區(qū)域權重),因此:
traj=p1→p2→L→pk,其中pi.t≤pi+1.t。
Start: 停留軌跡StayTraj,區(qū)域權重W
StrayP→0
FORSiin StayTraj:
StayP←StayP+Si·WSi
END FOR
End: 停留點
從整體(圖8)來看,偽基站停留點在北京二環(huán)到三環(huán)的分布較多,其中朝陽區(qū)車站附近最為嚴重。而針對繞城式的偽基站活動和固定范圍活動的偽基站進行分析,發(fā)現(xiàn)繞城式的停留點較為分散,而且在非環(huán)路上的重復停留較少。對于固定范圍式的,可以發(fā)現(xiàn)其停留點僅在一個固定的范圍,且重復經(jīng)過同一停留點次數(shù)較多。
圖8 停留點分析Fig. 8 Stay-point analysis
基于偽基站行為分析方法,本文設計了PBSU偽基站行為模式可視分析系統(tǒng)(如圖9所示),該系統(tǒng)粗略分為5個模塊,分別是宏觀時間篩選器(A)、地理信息展示模塊(B)、熱度篩選+詳細列表(D)、細節(jié)時間篩選器(E)以及偽基站行徑散點圖(F),能夠?qū)镜男袨槟J竭M行多粒度分析,在地圖的右邊,是對短信的危害性進行評估后的結(jié)果,用戶能夠?qū)ζ溥M行點擊以查看該短信的具體信息。
宏觀時間篩選器能夠?qū)具M行篩選,將在地圖上顯示在該段時間活躍過的基站,地圖上用顏色對基站的類別進行了標注,當用戶點擊某條垃圾短信的時候,將會顯示其同屬一個基短信的所有短的活躍日期,使用灰色顯示同屬基短信的活躍時間,選擇某一個活躍日期,右邊的基站行徑散點圖和熱力線將會得到更新,用戶能夠?qū)ιⅫc圖進行點擊和框選操作,當用戶點擊某一個軌跡點時,將在地圖上顯示該軌跡點隸屬的整個軌跡信息,在用戶框選軌跡點之后,將會顯示所有框選中的散點的詳細信息。
本文選取的實驗數(shù)據(jù)來自2017年第四屆中國可視化與可視分析大會數(shù)據(jù)可視分析挑戰(zhàn)賽ChinaVIS Data Challenge 2017[7]中關于偽基站時空可視分析的競賽數(shù)據(jù)集。這個數(shù)據(jù)集提供了北京市被標
A為宏觀時間篩選器 B為地理信息展示模塊C為垃圾短信影響度排行 D為熱度篩選+詳細列表E為細節(jié)時間篩選器 F為偽基站行徑散點圖
記是偽基站發(fā)送的垃圾短信的樣本數(shù)據(jù),其時間跨度為2個月,共有300多行記錄。與只關注時空軌跡的傳統(tǒng)城市軌跡不同的是,該數(shù)據(jù)中同一內(nèi)容的垃圾短信軌跡可能屬于多個偽基站,也存在不同內(nèi)容的垃圾短信屬于同一個偽基站發(fā)出。同時與只由特定固定設備來檢測偽基站提供的數(shù)據(jù)相比,這份數(shù)據(jù)利用了龐大的用戶數(shù)據(jù),使偽基站短信的移動軌跡采樣更加豐富,能更加容易刻畫偽基站的時空特性。
通過對北京兩個月的垃圾短信數(shù)據(jù)進行分析,可以發(fā)現(xiàn)偽基站在空間特征上存在有不同的移動模式。有繞城型基站、小范圍移動基站和固定位置型的偽基站這3種主要的空間模式(圖10),其中繞城式基站常在北京的第二、三環(huán)城快速路上運行,存在時間和短信傳播量都較大;小范圍移動基站主要選擇如朝陽區(qū)一樣流動人口較多的地區(qū)運行,尤其在該地區(qū)地鐵站附近等地特別活躍;而固定位置型基站主要存在于旅游景區(qū)、賓館密集地區(qū),該類基站傳播信息的人群更加固定,所以活動性較小。
圖10 偽基站不同的移動模式Fig. 10 The different movement pattern of Pseudo base station
在數(shù)據(jù)中偽基站發(fā)出的垃圾短信也存在一定的時間特征。從圖11可看出,垃圾短信只有很短的生存周期,它可能活動只存在一到兩天或者間隔很久才再次出現(xiàn),也可能頻繁變換短信格式但內(nèi)容不變。第一種偽基站可能是團隊級的偽基站團伙,不僅為特定違法團隊服務,其可能為多個違法團隊提供服務,而第二種是由特定違法團隊組織,這樣的偽基站存在多日的活動,其行為更容易被檢測,便于警方抓捕。
圖11 同一條基短信下不同短信的活躍時間Fig. 11 The active time about multiple variants of one basic message
本文對偽基站發(fā)送的垃圾短信進行自然語言處理后進行聚類和分類,對垃圾短信移動軌跡進行了去噪、提取停留點、壓縮軌跡存儲等,并設計了可視分析系統(tǒng),該系統(tǒng)能夠?qū)镜男袨槟J竭M行探索,從而達到輔助打擊偽基站的效果。
[1] HILAS, CONSTANTINOS S. Designing an expert system for fraud detection in private telecommunications net-works[J]. Expert Systems with Applications 2009, 36(9):11559-11569.
[2] BORGAONKAR R, MARTIN A, PARK S, et al. White-stingray: evaluating IMSI catechers detection applications[C]// 11th USENIX Workshop on Of fensive Technologies, 2017.
[3] BERGHOLZ, ANDRé. Improved phishing detection using model-based features[C]// CEAS 2008——The Fifth Conference on Email and Anti-Spam August 20-22, 2008, Mountain View, California, USA DBLP, 2008.
[4] ZHENG Y. Trajectory data mining: An overview[J]. ACM Transaction on Intelligent Systems and Technology, 2015, (6): 1-41.
[5] Niemeyer, Gustavo. Geohash[Z]. 2008.
[6] LI Q, ZHENG Y. Mining user similarity based on location history quannan[C]// Proceedings of the 16th ACM SIGSPATIAL international conference on Ad vances in geographic information systems. Heidelberg: 2008: 34.
[7] China Vis2017. http://chinavis.org/2017/index_en.html/ 2017. 7.
[8] LEE W C, KRUMM J. Trajectory preprocessing[A]// Y ZHENG, X ZHOU Computing with Spatial Trajectories[M]. Springer: 2011,1-31.
[9] KALMAN R E. A new approach to linear filtering and prediction problems[J]. Transactions of the ASME-Journal of Basic Engineering, 1960, 82: 35-45.
[10] KALMAN R E, BUCY R S. New results in linear filter-ing and prediction theory[J]. Transactions of the ASME-Journal of Basic Engineering, 1961, 83: 95-107.
[11] ZHENG Y, XIE X. Learning travel recommenda-tions from user-generated GPS traces[J]. ACM Transactions on Intelligent Systems and Technology, 2011,2(1): 2-19.
[12] ZHENG Y, ZHANG L, MA Z, et al. Recommending friends and locations based on individual location history[J]. ACM Transaction on the Web, 2011, 5(1): 5-44.
[13] CADEZ, IGOR V, GAFFNEY S, et al. A general probabilistic framework for clustering individuals and objects[C]// ACM SIGKDD International Conference on Knowledge Discovery and Data Mining ACM. 2000:140-149.
[14] LI Z. Incremental clustering for trajectories[C]// International Conference on Database Systems for Advanced Applications Springer-Verlag. 2010:32-46.
[15] SUN J. Jieba中文分詞[EB/OL].https://github.com/fxsjy/jieba,2012[2016-04-20].