1. 程式人生 > 其它 >如何使用HackRF做一個簡單的IMSI捕獲器

如何使用HackRF做一個簡單的IMSI捕獲器

關於IMSI

IMSI為國際使用者識別碼(International Mobile Subscriber Identity)的縮寫,是用於區分蜂窩網路中不同使用者的,在所在蜂窩網路中不重複的識別碼。IMSI可以用於在歸屬位置暫存器(HLR)和拜訪位置暫存器(VLR)中查詢使用者資訊,為了避免被監聽者識別並追蹤特定使用者,有些情形下手機與網路之間的通訊會使用隨機生成的臨時移動使用者識別碼(TMSI)代替IMSI。

如圖,IMSI由MCC(移動國家程式碼),MNC(行動網路程式碼)以及MSIN(移動使用者識別程式碼)組成,一般為15位。

準備工作

所需硬體

HackRF one

一臺電腦(Kali linux,其他一些發行版都可以)

安裝IMSI-catcher,gr-gsm,gnuradio及其他

安裝過程可以參考這裡,步驟基本相同。

在/root/.gnuradio中建立檔案config.conf並貼上以下內容:

最後安裝kalibrate-hackrf(可以不裝,不裝的話直接看下面)

確定頻率

如果安裝了kalibrate-hackrf:

cd kalibrate-hackrf
cd src
./kal -s GSM900 -g 40 -l 40

稍作等待,即出現下圖所示情況

開啟gr-gsm_livemon,選擇剛剛獲取的其中一個頻率並進行微調,直到終端顯示資料。

grgsm_livemon

出現數據就會像下圖一樣

如果沒有裝kalibrate-hackrf,那隻能從一開始給的頻率慢慢調了。

獲取IMSI

切換目錄

cd IMSI-catcher/

修改許可權

chmod u+x simple_IMSI-catcher.py

執行

./simple_IMSI-catcher.py

稍等片刻,即可顯示資訊

開啟wireshark可以檢視更詳細的資訊

sudo wireshark -k -Y 'gsmtap && !icmp' -i lo

另:根據LAC和cellId可進行基站定位,閱讀原文進入定位網站