當前位置:
首頁 > 新聞 > 如何通過中間人攻擊嗅探SIM卡的流量通信

如何通過中間人攻擊嗅探SIM卡的流量通信

寫在前面的話


這篇文章我將介紹如何製作中間人(MitM)設置來嗅探SIM卡和後端伺服器之間的流量。雖然這不是一項新的研究,但我希望這將幫助一些沒有電信基礎的人學習移動數據嗅探和虛假基站的知識。但是我只會介紹使用2G和GPRS的SIM卡的方案。希望將來可以帶來更多關於3G,4G的文章吧!


為什麼


隨著越來越多的物聯網設備誕生,這些設備一般通過SIM卡連接到其伺服器。他們可以是很常見的東西,如咖啡機,智能手錶,智能眼鏡,汽車或重要醫療設備等更大的東西。如果您想要嗅探物聯網設備和後端伺服器之間的流量,這篇文章可以幫你。

目標


為了對移動數據流量進行中間人攻擊。我們需要使用USRP硬體製作了一個簡單的偽基站。


要求


我在文中提到的用於進行此設置的設備。當然還有許多其他代替品。所以我沒有任何聲稱這是最好的方法!


硬體


1.USRP B210)(帶天線和電纜usb3連接到PC)


2.智能手機/或舊的GSM手機。在IoT pentest場景的情況下,我們在此處使用IoT設備。


3.一張SIM卡


4.一台筆記本電腦


軟體

1.OpenBTS


2.SipauthServ


3.Smqueue(可選)


4.Asterisk(可選)


5.操作系統 - Ubuntu 16.04


什麼是OpenBTS



OpenBTS.org是一個開源軟體項目,致力於製作電信協議和傳統的複雜的專有硬體系統,具有互聯網協議和靈活的軟體架構。OpenBTS軟體是一個Linux應用程序,它使用軟體定義的無線電向用戶設備提供標準的3GPP空中介面,同時將這些設備作為SIP端點呈現給Internet。這構成了一種新型無線網路的基礎,該網路有望擴大對未服務和服務不足市場的覆蓋範圍,同時釋放創新平台,包括為新興網路技術提供支持,例如針對物聯網的網路技術。(點擊閱讀原文查看參考)


建立偽基站


首先要做的是運行OpenBTS。我按照參考材料從源代碼構建OpenBTS。通常會有一些缺少的依賴項需要修復。除此之外,構建OpenBTS不需要特定的設置。首先,我們主要需要兩個服務,即OpenBTS本身和SipauthServe。從源代碼構建OpenBTS和SipauthServe後,啟動終端中的兩個服務。在上面的參考中,還有其他組件,如Smqueue和Asterisk,它們使呼叫和SMS功能正常工作。但由於我們的重點主要是移動數據(這裡是GPRS),我們在這裡不關心設置這些組件。


運行OpenBTS


1.使用USB將USRP設備連接到計算機。


2.就我而言,我新建了一個虛擬機,我在其中構建了所有必需的軟體,移植起來很方便。但在使用虛擬機時,要確保具有USB轉發功能。在virtualbox中,您應該要啟用USB>設備> Ettus Research USRP B210(或類似的名稱。如果您不知道正確的名稱,請執行dmesg以確定。)


3.uhd_usrp_probe:使用此命令,用於Linux的USRP硬體驅動程序外設報告實用程序,一旦檢測到設備,將下載B210的固件。


4.運行SipauthServe:

home/dev/subscriberRegistry/apps$ sudo ./sipauthserve

5.運行OpenBTS:

home/dev/openbts/apps$ sudo ./OpenBTS

6.運行OpenBTSCLI

home/dev/openbts/apps$ sudo ./OpenBTSCLI

配置基站


在上面的步驟中,您會注意到我們運行了OpenBTSCLI。這主要是為了配置我們的OpenBTS。

下面是OpenBTSCLI中主要配置:


1.允許任何電話無需任何身份驗證即可連接到基站。無論其提供商。

OpenBTS> config Control.LUR.OpenRegistration

2.啟用GPRS

OpenBTS> config GPRS.Enable

3.啟用IP轉發

echo 1 > /proc/sys/net/ipv4/ip_forward

4.設置iptables:原文詳細介紹了整個GPRS和IPtables設置。


讓手機連接到基站


智能手機需要更改某些設置才能使其連接到基站。如果是物聯網設備,需要設置更多東西,因為在物聯網設備中幾乎沒有選項來配置「移動網路」。我們稍後會談到這一點。


設置Android手機


(在iPhone上基本相似。)


1.啟用2G。這將從4G下調至2G:設置>蜂窩網路>首選網路類型> 2G

2.添加APN:設置>蜂窩網路>接入點名稱。添加時,請確保將MCC和MNC設置為與SIM卡相同的值。在德國,MCC為262.跨國公司將根據提供商進行更改。APN和Name值可以是任何值。此外,將身份驗證保持為none。



3.搜索我們的基站並手動連接到它:設置>蜂窩網路>搜索網路。通常它顯示為包括MCC和MNC值的數字。



如果您看到該消息,即您的手機已在網路上註冊,則可以通過檢入OpenBTSCLI來確認:

OpenBTS> tmsis

這將顯示註冊到基站的SIM卡的IMSI。IMSI是SIM卡的私有標識符。具有IMSI的攻擊者可以識別和跟蹤訂戶的網路。


移動數據嗅探


GPRS正常工作後,您應該可以在手機中實際看到「LTE」或移動數據符號的位置看到符號「G」。嘗試在智能手機的瀏覽器中搜索某些內容。這會超級慢。


*參考來源:

insinuator

,周大濤編譯,轉載請註明來自FreeBuf.COM


喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 FreeBuf 的精彩文章:

命令執行WAF繞過技巧總結
CrackMapExec:一款針對大型Windows活動目錄(AD)的後滲透工具

TAG:FreeBuf |