秦雨
摘 要:如何對(duì)手機(jī)用戶進(jìn)行合法有效的控制,在安全部門(mén)逐漸得到重視。最近,由世界知名的開(kāi)源組織GNU下屬的GNURadio小組開(kāi)發(fā)出一種開(kāi)源的基站項(xiàng)目,OpenBTS。使用OpenBTS,可以搭建一個(gè)安全監(jiān)管基站系統(tǒng),通過(guò)構(gòu)建新的GSM BCCH廣播信道消息,引導(dǎo)移動(dòng)終端與安全監(jiān)管進(jìn)行信息交互并提取用戶手機(jī)的身份信息。
關(guān)鍵詞:移動(dòng)通信;身份感知;基站;安全監(jiān)管
1 前言
GSM網(wǎng)絡(luò)作為當(dāng)今應(yīng)用最廣泛的系統(tǒng),對(duì)其通信過(guò)程中得信息安全監(jiān)管尤為重要。而傳統(tǒng)的監(jiān)管技術(shù)是通過(guò)核心網(wǎng)警用接口,由設(shè)備提供商和運(yùn)營(yíng)商提供合法偵聽(tīng)技術(shù),主要針對(duì)語(yǔ)音通話。如何對(duì)手機(jī)用戶進(jìn)行合法有效的控制,在有關(guān)安全部門(mén)逐漸得到重視。為了及時(shí)發(fā)現(xiàn)并掌握犯罪分子和恐怖分子的動(dòng)向,安全部分需要加強(qiáng)通信監(jiān)管,其中包含對(duì)移動(dòng)用戶的身份監(jiān)管,有效的掌握某些用戶的動(dòng)向。
近年來(lái),由世界知名的開(kāi)源組織GNU下屬的GNURadio小組開(kāi)發(fā)出一種開(kāi)源的基站項(xiàng)目,OpenBTS。該技術(shù)已經(jīng)在近幾年美國(guó)內(nèi)華達(dá)州一年一度的火人節(jié)上經(jīng)過(guò)測(cè)試,能夠支持4萬(wàn)人的移動(dòng)通信需求。OpenBTS的關(guān)鍵組件是USPR(Universal Software Radio Peripheral),可以經(jīng)由電腦軟軟件控制的射頻裝置由于技術(shù)上具備相當(dāng)?shù)撵`活性,搭建一個(gè)OpenBTS網(wǎng)絡(luò)不需要太大的空間。
2 移動(dòng)終端身份感知的方法
用戶手機(jī)的身份信息包括存儲(chǔ)在SIM卡里面的IMSI號(hào)和手機(jī)的IMEI(International Mobile Equipment Identity,國(guó)際移動(dòng)設(shè)備身份碼)號(hào),以及SIM卡在初次入網(wǎng)時(shí)由網(wǎng)絡(luò)運(yùn)營(yíng)商分配的MSISDN號(hào)。宋宇波等人在“A GSM/UMTS Selective Jamming System”[1]一文中提出一種利用OpenBTS和USRP提取用戶手機(jī)IMSI/IMEI號(hào)的方法。此方法雖然可以快速準(zhǔn)確的獲取用戶手機(jī)的IMSI和IMEI號(hào)身份信息,但是IMSI號(hào)以及IMEI號(hào)只是作為網(wǎng)絡(luò)內(nèi)部用戶手機(jī)身份的一種標(biāo)識(shí),在實(shí)際應(yīng)用中,與用戶密切相關(guān)的則是MSISDN,即用戶手機(jī)號(hào)碼。MSISDN號(hào)不僅是用來(lái)聯(lián)系用戶的唯一號(hào)碼,更作為一種用戶身份被廣大應(yīng)用系統(tǒng)利用,如移動(dòng)支付、身份認(rèn)證等。
GNURadio組織還提出一種破解手機(jī)操作系統(tǒng)的方案OsmocomBB。利用OsmocomBB,我們可以破解一款型號(hào)為C118的手機(jī)向基站臺(tái)發(fā)出指定信令。在身份感知過(guò)程中,我們參考GSM 04.08協(xié)議[2],我們首先利用OpenBTS得到被感知手機(jī)的IMSI號(hào)。然后可以用c118手機(jī)在呼叫其他手機(jī)的CM(Captain Mode)過(guò)程中使用被感知手機(jī)的IMSI號(hào)。這樣在被呼叫手機(jī)上來(lái)電顯示的就是被感知手機(jī)的MSISDN號(hào)碼,從而達(dá)到身份感知的目的。
3 多頻點(diǎn)覆蓋的主要方法
對(duì)于多個(gè)USRP的運(yùn)行主要準(zhǔn)備通過(guò)多進(jìn)程調(diào)度來(lái)實(shí)現(xiàn)。我們利用USRP作為硬件,使用OpenBTS作為軟件,組裝成偽基站,在一臺(tái)PC機(jī)上同時(shí)運(yùn)行兩套以上OpenBTS代碼以及USRP,并讓它們最終輸出結(jié)果匯總進(jìn)同一個(gè)數(shù)據(jù)庫(kù),從而達(dá)到多頻點(diǎn)身份監(jiān)管以及監(jiān)控的目的。與OpenBTS相關(guān)的有三個(gè)進(jìn)程(1) Transceiver,(2)OpenBTS,(3)Asterisk。其中,OpenBTS進(jìn)程是OpenBTS程序的主進(jìn)程,它通過(guò)啟動(dòng)tranceiver進(jìn)程來(lái)與最底層的USRP建立聯(lián)系。只要在一臺(tái)PC機(jī)上能夠啟動(dòng)兩個(gè)以上互不沖突的Tranceiver進(jìn)程,就能控制多個(gè)USRP對(duì)多個(gè)頻點(diǎn)的手機(jī)進(jìn)行身份感知與監(jiān)管。
4 多頻點(diǎn)身份數(shù)據(jù)管理的方法
Linux下開(kāi)源數(shù)據(jù)庫(kù)有著名的MySQL、postgreSQL、Sqlite等。其中應(yīng)用最廣泛的是MySQL。MySQL有以下幾個(gè)特點(diǎn):
(1)使用C和C++編寫(xiě),并使用了多種編譯器進(jìn)行測(cè)試,保證源代碼的可移植性。
(2)支持AIX、FreeBSD、HP-UX、Linux、Mac OS、NovellNetware、OpenBSD、OS/2 Wra等多種操作系統(tǒng),為多種編程語(yǔ)言提供了API。這些編程語(yǔ)言包括C、C++、Python、Java等。
(3)既能夠作為一個(gè)單獨(dú)的應(yīng)用程序應(yīng)用在客戶端服務(wù)器網(wǎng)絡(luò)環(huán)境中,也能夠作為一個(gè)庫(kù)而嵌入到其他的軟件中。
(4)提供多語(yǔ)言支持,常見(jiàn)的編碼如中文的GB 2312、BIG5,日文的Shift_JIS等都可以用作數(shù)據(jù)表名和數(shù)據(jù)列名。
我們可以將所有OpenBTS輸出數(shù)據(jù)錄入一個(gè)統(tǒng)一的數(shù)據(jù)庫(kù)進(jìn)行統(tǒng)一管理。利用MySQL在Linux操作系統(tǒng)下提供的數(shù)據(jù)庫(kù)API以及腳本編程就可以完成這個(gè)任務(wù)。
5 總結(jié)
在本文中我們深入研究了OpenBTS的程序架構(gòu),提出一種能夠使用多個(gè)USRP對(duì)多個(gè)頻點(diǎn)的手機(jī)進(jìn)行身份感知與監(jiān)管,并將結(jié)果存入同一個(gè)數(shù)據(jù)庫(kù),以達(dá)到同時(shí)覆蓋多個(gè)GSM 2G頻點(diǎn),對(duì)多個(gè)頻點(diǎn)下手機(jī)進(jìn)行身份感知的方法。使用OpenBTS,可以搭建一個(gè)安全監(jiān)管基站系統(tǒng),通過(guò)構(gòu)建新的GSM BCCH廣播信道消息,引導(dǎo)移動(dòng)終端與安全監(jiān)管進(jìn)行信息交互,從中修改移動(dòng)終端與基站交互的信令流程并提取用戶手機(jī)的身份信息。這個(gè)方法可以獲得附近手機(jī)的MSISDN號(hào)碼,從而使得安全部門(mén)對(duì)附近手機(jī)進(jìn)行身份感知以及管理。這樣安全部門(mén)可以將其用于追蹤犯罪份子手機(jī)的移動(dòng),從而更好地掌握犯罪分子的行蹤。
[參考文獻(xiàn)]
[1]宋宇波.A GSM/UMTS Selective Jamming System[C].Multimedia Information Networking and Security(MINES),2010;813-815.
[2]GSM 04.08[S].133-134.