利用kali嗅探周圍發送的短信


設備清單:

  1. 摩托羅拉 C118 (25塊)
  2. FT232RL USB TO TTL (30元)
  3. 摩托羅拉 Motorola C118專用數據連接線 (10塊)
  4. MiniUSB 鏈接線(10元,這個大家手里應該都有)

如下圖:

淘寶購買地址就放在文章結尾吧.

外圍設備是上面那些,現在還需要一台PC以及裝有Linux操作系統的虛擬機,當然PC上面直接裝的linux更好

還有一個主角:OsmocomBB

這里稍微介紹下OsmocomBB,OsmocomBB是GSM協議棧(Protocols stack)的開源實現,全稱是Open source mobile communication Baseband.

目的是要實現手機端從物理層(layer1)到layer3的三層實現。

但是目前來看,真正的物理層(physical layer)並沒有真正的開源實現,暫時也沒看到實施計划。只有物理層控制。

因為真正的物理層是運行在baseband processor的DSP core上,涉及到許多信號處理算法的實現,而且還要牽扯很多硬件RF的東西。

額好吧,上面這段OsmocomBB介紹文字來自百度~~

我自己的實驗環境為:

os x 10.9 + VirtualBox + Ubuntu 12.04 (32位)

操作系統各個平台都無所謂,我想大多數都用虛擬機來測的,所以建議使用Ubuntu 12.04 至少按照我這里介紹的做下來應該不會出錯。

虛擬機里面如何安裝Ubuntu 12.04我這里幾不操作了,網上教程一大堆。

首先我們安裝交叉編譯環境:

1. 用戶目錄下建立source/arm

2. 進入arm目錄再創建三個目錄 build、 install 、src

3. 進入src目錄分別下載這三個文件包:

http://ftp.gnu.org/gnu/gcc/gcc-4.5.2/gcc-4.5.2.tar.bz2

http://ftp.gnu.org/gnu/binutils/binutils-2.21.1a.tar.bz2

ftp://sources.redhat.com/pub/newlib/newlib-1.19.0.tar.gz

4. 下載 gnu-arm-build.2.sh 文件到arm目錄 http://bb.osmocom.org/trac/raw-attachment/wiki/GnuArmToolchain/gnu-arm-build.2.sh

目錄結構如圖所示:

編譯前需要安裝相應的庫文件執行如下命令:

1

sudo apt-get install build-essential libgmp3-dev libmpfr-dev libx11-6 libx11-dev texinfo flex bison libncurses5 libncurses5-dbg libncurses5-dev libncursesw5 libncursesw5-dbg libncursesw5-dev zlibc zlib1g-dev libmpfr4 libmpc-dev

安裝完

在arm根目錄執行如下命令:

1

chmod +x gnu-arm-build.2.sh ./ gnu-arm-build.2.sh

解釋下這兩條命令的意思,chmod +x 是給與 gnu-arm-build.2.sh 可執行權限 , ./ gnu-arm-build.2.sh 是執行它

執行 gnu-arm-build.2.sh后會提示你是否繼續,ctrl+c 則取消,直接回車。如下圖所示:

完成后會看到arm/install目錄結構如圖所示:

我們需要將 arm/install/bin目錄加入環境變量中,注意這里最好直接填寫絕對路徑

獲取絕對路徑命令,在arm/install/bin目錄下執行pwd命令。如下圖

加入環境變量的方法用vi打開 ~/.bashrc 在最后一樣加入 export PATH=$PATH:/home/creturn/source/arm/install/bin

注意$PATH:冒號后面接的是你自己的絕對路徑,有的同學不會用vi的話我就把具體命令寫出來

1

cd 回車 #切換到主目錄 vi ./.bashrc #打開文件 shift+g #按shift和g 跳轉到最后一樣 o #輸入小寫字母o換行並進入插入模式,然后把上面需要加入的代碼加入進去 esc # 按esc鍵進入命令模式 :wq #按冒號然后輸入回車編輯完成

為照顧linux新手對寫點東西,汗~~

重新打開終端或者直接執行source ~/.bashrc 讓環境變量生效

在終端中輸入arm然后按tab鍵,如果出現 arm-開頭的如下圖所示就說明編譯環境搞定了:

好了累了半死才把編譯環境搞定,接下來下載 OsmocomBB 源碼

在source目錄下執行下面兩條命令:

1

git clone git://git.osmocom.org/osmocom-bb.git git clone git://git.osmocom.org/libosmocore.git

先編譯osmocom核心庫文件,進入libosmocore 執行如下命令:

1

autoreconf -i ./configure make sudo make install

然后進入osmocom/src下目錄

git checkout –track origin/luca/gsmmap 切換到這個分支

執行make命令

如果不出意外你所需軟件環境和固件都編譯好了。Ubuntu12.04 默認能夠識別FT232R所以不用裝驅動。

接下來鏈接硬件, FT232RL USB TO TTL 和 摩托的數據線鏈接注意上面對應的標識接入GND、RX、TX 所以不用擔心接錯,我也第一次摸板子。

鏈接完成后需要注意,如果鏈接正常下載板上面的藍色的燈和紅色的燈都要亮,不然肯定是接觸不良,

我之前由於接觸不良導致固件寫入一半就會停止,或者包其他錯誤。所以這里需要特別注意。

插入硬件后在虛擬機菜單中把接入下載板子的usb接口分配給虛擬機如圖:

在終端中輸入lsusb 如果驅動正常就能看到usb-serial

看下分配前和分配后的區別如下圖:

接下來我們寫入固件到手機中,這里需要說明的一點,很多人說是刷入固件,導致很多人誤認為是刷機,其實只是把

固件加載到手機raw中執行而已,所以也不要擔心輸入固件后手機就不能用了。

切換到 osmocom-bb/src/host/osmocon/目錄 執行如下命令:

1

/osmocon -m c123 -p /dev/ttyUSB0 ../../target/firmware/board/compal_e88/layer1.compalram.bin

這里同樣需要說明下有的 -m 后面接的是 c123xor 區別是是否檢測數據總和

注意上面命令需要在關機下執行,然后短按開機鍵,注意不要長按不然就開機了

如果不出意外就能看到如下圖:

這里需要提醒下,由於買的手機都是二手的,所以接口處有可能會有松動,所以如果看到數據寫入被取消就多試幾次

調整下接口看看是否有松動,我機會每次都要試4-5次才能正常寫入固件,看到staring up 基本就成功了,同事可以看到

手機上面也顯示了 Layer 1 osmocom-bb 字樣

1

接下來在 /osmocom-bb/src/host/layer23/src/misc/ 目錄執行 ./cell_log

輸出日志信息,在里面可以看到基站信息

找到類似信息

cell_log.c:248 Cell: ARFCN=117 PWR=-62dB MCC=460 MNC=01

如下圖:

記住ARFCN后面的編號

然后在同樣目錄下輸入下面命令把數據流導入本地4729端口

1

./ccch_scan -i 127.0.0.1 -a 117 # 注意這里的117就是上面的ARFCN后面的編號

如下圖:

接下來用wireshark 抓包,輸入如下命令:

1

sudo wireshark -k -i lo -f 'port 4729'

然后在wireshark里面過濾gsm_sms協議數據,里面就包含了短信數據


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM