◆洪道友 楊仕海 翟振興
“偽基站”電子數據取證實戰分析
◆洪道友 楊仕海 翟振興
(重慶市公安局江北區分局 重慶 400021)
近年來,不法分子利用“偽基站”實施違法犯罪活動日趨頻繁。利用“偽基站”發布非法廣告、實施電信詐騙等違法犯罪活動,不僅損害公民個人利益,而且嚴重擾亂國家通訊秩序,必須嚴厲打擊。本文介紹了“偽基站”的工作原理,結合實際案例描述“偽基站”電子數據取證的相關過程,重點介紹“偽基站”通信日志、軟件數據庫及相關文檔的提取方法,并總結“偽基站”取證的個人經驗。
電子數據取證;“偽基站”;實戰分析
近年來,不法分子利用“偽基站”,或冒用公眾服務號碼進行電信詐騙、或強制推銷非法廣告等違法犯罪活動。該類案件的發生危害到通訊安全,同時威脅到人民財產安全,必須嚴厲打擊。2014年以來,公安部等九部委開展整治專項活動,嚴厲打擊利用“偽基站”實施各類違法活動[1]。
1.1 “偽基站”概念
“偽基站”即假基站,其設備一般由USRP主機和筆記本電腦組成,通過短信群發器、短信發信機等相關設備能夠搜索以其為中心、一定半徑范圍內的手機卡信息。利用2G移動通信的缺陷,通過偽裝成運營商的基站,冒用他人號碼強行向用戶手機發送詐騙、廣告推銷等短信息。
1.2 “偽基站”特點
犯罪嫌疑人一般將“偽基站”設備放置車內,在人流密集區域群發非法短信,達到推銷非法廣告或者詐騙等目的。短信內容大致分兩類:第一類“不定向群發”型,即選擇人流密集區,向“偽基站”覆蓋范圍內的所有手機群發送短信,短信內容大多偽造銀行、公檢法官方號碼發送詐騙信息;第二類是“定向攻擊型”,即不法分子找出某個手機號作定向攻擊,通常以該號碼的名義向其親朋好友、同事等關系網定向發送短信,實施指向性詐騙。不法分子往往掌握該手機號關聯的相關個人信息,因此實施起來更具迷惑性,受害人更容易上當受騙。
利用“偽基站”實施作案有兩個突出特點:1、投入少,成本低,操作簡易。購買偽基站配件或者整套設備成本低,并且容易上手。低廉的犯罪成本卻帶來客觀的經濟利益。2、隱蔽性、機動性強,查處難度大。“偽基站”一般隱藏在出租房、流動汽車或者流動提包,不易發現[2]。
1.3 “偽基站”工作原理

圖1 “偽基站”工作原理示意圖
“偽基站”的工作原理就是利用GSM 網絡規范先天不足,其采用單向鑒權認證,即手機不鑒權網絡的合法性,僅在網絡側對手機進行鑒權,導致手機無法有效辨別移動基站的真偽。不法分子利用手機在GSM 移動狀態下的自主選擇算法,“誘使”手機選擇至他的小區中,甚至采用大功率的無線信號發射手段,強迫用戶終端(手機)在“偽基站”中進行登記,從而獲得用戶的信息,如IMSI、手機號碼和IMEI 等,不法分子進而利用“偽基站”惡意發送垃圾廣告短信。圖1 為“偽基站”工作原理示意圖[3]。
1.4 “偽基站”系統原理
常見的“偽基站”運行的操作系統是Ubuntu,運行的web系統是OpenBTS,數據庫為Mysql,Web服務器為Apache,“偽基站”基本架構包含:發信軟件,Openbts,GNU Radio,USRP和功放天線。
組成結構如圖2所示。

圖2 “偽基站”組成結構
(1)USRP(Universal Software Radio Peripheral,通用軟件無線電外設)旨在使普通計算機能像高帶寬的軟件無線電設備一樣工作。從本質上講,它充當了一個無線電通訊系統的數字基帶和中頻部分。
(2)GNU Radio是完全開源的軟件無線電結構平臺,它可以用來設計和仿真,也可以用來連接真實的無線電系統。
(3)OpenBTS(Open Base Transceiver Station),基站。
(4)GSMS,短信發送軟件。用戶通過該軟件操作面板的“添加”、“刪除”、“暫停”、“開始發送”等按鈕進行短信業務的添加、刪除、暫停和發送。
(5)Apache,網絡服務器。“偽基站”通常建一個網絡服務器,選擇某種數據庫(通常為mysql)。服務器在運行過程中將相關數據保存至數據庫中。
2.1 校準“偽基站”設備系統時間
由于犯罪嫌疑人可能采用租用“偽基站”設備,或者多人團伙作案等犯罪方式,造成“偽基站”設備存在多個使用者的情況。因此,校準“偽基站”設備系統時間,對于區分是否是由不同犯罪嫌疑人造成的用戶中斷至關重要。
2.2 提取后臺數據庫“gsms”
檢查配置文件“config.php”,該文件通常位于目錄“varusropenbtsConf”下,文件信息詳見圖3。網站服務器使用的數據庫類型為“mysql”,數據庫名為“gsms”,數據庫用戶名為“root”,用戶密碼為“nb250+38”。
數據庫“gsms”有1個數據表“gsm_business”,該表存儲“偽基站”短信發送任務的詳細內容。gsm_business表存儲的每條發送任務包含如下信息:發送任務id,發送任務時顯示號碼,任務名稱,創建任務時間,發送數量,實際發送任務的數量,任務內容和任務狀態。

圖3 “config.php”配置文件內容
可使用命令“mysqldump -uroot -p gsms > gsms_backup.sql;”備份數據庫。數據庫備份后,可通過十六進制編輯器和SQLite查看器來檢查數據庫相關內容。
2.3 IMSI記錄的檢驗
IMSI,國際移動用戶識別碼,儲存在SIM卡中,是區分移動用戶的一組唯一標識。IMSI由15位數字組成,包括國家代碼(MCC,中國代號460)、網絡代碼(MNC,移動代號00/02,聯通代碼01)和 用戶識別代碼(MSIN)三部分。
在“偽基站”取證中與鑒定IMSI記錄相關的數據主要包括:桌面txt文件、send.data、OpenBTS.log、syslog和TMSI.db。上述五類文件的相關情況詳見表1。

表1 與鑒定IMSI記錄相關文件
(1)文本類型:桌面txt文檔,send.data
分析“varusropenbtsLibActionBusinessAction.class.php”的運行代碼(詳見圖4),GSMS短信發送軟件在運行過程中,產生兩組發送任務的數據文件。一組是位于系統桌面以“業務名稱_業務id”命名的文本文件,文件內容包含多條4600 開頭的15 位IMSI 串號。該文件作為“偽基站”IMSI的數量判定的重要依據。另外一組則位于“var/usr/openbts”目錄下的“send.data”。文件內容的每一行為由發送任務的業務ID和目標手機的IMSI號組成。該文件作為統計目標手機的參考。

圖4 BusinessAction.class.ph中的getsentcount函數
(2)數據庫文件:TMSI.db
TMSI.db包括數據表TMSI_TABLESMS和SMS_SENT。TMSI_TABLESMS表記錄IMSI及TMSI的對應關系。SMS_SENT記錄發送次數,可能為空。該數據庫TMSI.db一般只作為統計受影響手機數的參考。
(3)日志文件:OpenBTS.log和syslog
OpenBTS.log,詳細記錄了OpenBTS的運行日志,包括目標手機的接入、發送至目標手機及踢出目標手機等一系列操作日志。該文件可以作為統計受影響手機數的重要依據。syslog文件的提取方式與OpenBTS.log相同。下面以OpenBTS.log為例,重點介紹對該日志文件進行提取和分析的過程。
使用命令“cat Openbts.log |grep id = IMSI=4600”,以“IMSI=4600”作為關鍵字搜索IMSI相關數據記錄(詳見圖5),該數據作為目標手機的數量。可使用命令“cat Openbts.log |grep id = IMSI=4600 |wc -l”,統計IMSI數量(未去重)。

圖5 提取及統計IMSI號
使用命令“Cat Openbts.log |grep ‘addsms’”,提取發送短信任務的記錄,如圖6所示。可使用命令“cat Openbts.log |grep id = IMSI=addsms |wc -l”,統計發送短信業務數。

圖6 提取短信內容
短信內容為二進制,需要對其進行轉化為Unicode。轉化方法:以python語言編制腳本代碼,將2進制轉為16進制(代碼如圖7所示),并將16進制轉Unicode(代碼如圖8所示),轉化后顯示結果如圖9所示。

圖7 將二進制轉化為16進制的代碼

圖8 將16進制轉化為unicode的代碼

圖9 短信內容轉化后顯示結果
(1)“偽基站”作案,通常情況下只有主機和天線,沒有顯示器。因此在取證過程中自備顯示器和電源適配器。
(2)“偽基站”作案,其操作系統往往帶有一鍵恢復、一鍵刪除等功能。因此,在現場取證過程中,應對現場原始證據的拍照、備份等,防止相關信息和電子數據的滅失。
(3)提取與案件相關的隱藏文檔和已刪除文檔,往往這兩類文檔也可能提供破案線索。因此,在取證過程中注意并重視這類文檔,確保重要證據不遺漏。
(4)不斷提高技術水平,提升檢驗鑒定能力,確保檢驗的數據能有效轉化為關鍵電子證據。同時在電子取證過程中確保數據在獲取、存儲、使用過程中保證完整性。
筆者結合“偽基站”取證案例,介紹了“偽基站”的相關概念及其工作原理,重點陳述“偽基站”通信日志、軟件數據庫及相關文檔的提取方法,具有較好實用價值。隨著“偽基站”反取證技術的不斷變化,必將對現有的電子證據取證方法提出更高的要求。這也將是筆者下一步研究重點。
[1]最高人民法院,最高人民檢察院,公安部等.關于依法辦理非法生產銷售使用“偽基站”設備案件的意見.公通字(2014)13號文件.
[2]李璐,戴芬,劉洪偉,崔媛媛,李璐.“偽基站”案件電子數據取證實戰探索.電信網技術,2016.
[3]馬俊,劉燕.淺析“偽基站”原理及查找方法,監測檢測,2015.