制作一個老舊C118的GSM便攜式測試設備


對於OsmocomBB也是被國內外大神玩得不亦樂乎。什么重定向攻擊,中間人攻擊。都是N年前的東西咯。當然鄙人不會這些。對於地下市場無非就是獲取對方短信小則“老。虎。機”,大則支付寶。某日翻了翻“咸”魚,居然還有存在。於是乎我決定討論下一個稍微算是有搞頭的玩法。本文涉及一些基礎編程和PCB設計以及SOLIDWORKS的3D建模。

其次下文只對軟硬件設計作為學習,各位大神就別噴我了。

有人說現在都4G,5G了,還用什么GSM網絡,這里就用到一個名為屏蔽器的東西了。仁者見仁,智者見智。

源代碼以及3D打印的文件見文末只用於學習研究。因為完整版我早已丟到天涯海角。

PCB設計:

整體思想及其簡單,用FE8.1芯片作為USB擴展分給4個CP2012供給C118使用,還有1個CP2012直接使用nanopi_duo的USB。CP2012在數據准備后會給DTR腳一個低電平,這里就是做到自動化的關鍵了,其次每個C118的電流單獨使用gpio控制。我用S9013三極管作為開關。這樣后面的程序就可以通過分析日志來控制C118了。nanopi_duo就不多說了,就是一電腦,通過WiFi連接到我手機上控制設備。

整一塊pcb設計有些坑需要注意的是USB分叉線,晶振,還有那個FE8.1的10uF電容的天坑!這粒小玩意必須離芯片足夠近,不然會導致芯片停止工作等等一些列問題。

還有就是FE8.1的地線通過磁珠過掉一部分干擾,這也是穩定運行的關鍵。

只要看到穩定的正玄波,那就可以了,為此打樣了N次,還用上高標准的沉金工藝~~!原理圖見文末。

程序編寫:

工欲善其事必先利其核心!

nanopi_duo的系統內核是不開啟對cp2012的支持的,這也就是為何接主板工作了系統卻不識別cp2012的主要問題。知道問題所在那好搞,我們下載linux的源碼。重新編譯個內核給它添加個CP2012的驅動不就行了。linux內核的具體編譯過程這里不討論..

USB Serial Converter support —>USB CP210x family of UART Bridge Controllers

make內核后把原有的給替換即可。

然后框架分為兩個主體,一是WEB用於用戶互交,二是C程序用戶啟動化以及抓包分析入庫…

主要講解下自動刷機檢測以及抓包分析的C程序片段,程序見文末。

函數FlashInitialization()為主要,檢測通過分析C118刷機日志是否字符串”starting up”,沒有那就gpio拉低重啟C118。直到刷機成功為止…

下面這個片段則是啟動5個ccch_scan來抓取GSM數據流,以及調用tshark對端口4729進行抓包切把內存保存下來用於等會的分析,

tshark會實時把抓到的數據過濾出gsm_sms包保存下來,程序只需要分析關鍵字抓取片段即可,比如關鍵字“SMS text”這就是短信內容的開頭。

以上就是兩個主體片段。

WEB設計我用了bootstrap,也是簡單易學,主要通過mysql記錄,庫里做標志位,這樣一樣即使關掉手機也不影響系統運行。

機器組裝:

像我這些偏執狂,對SOLIDWORKS的3D建模也是必須掌握的了,設計好后丟3D打印機了4小時出樣。同樣的設計文件見文末。

整機的主要涉及到一些射頻知識,就是對於把天線外置還沒什么,把天線內置則要重點考慮擺放位置了,多一個角度,少一個角度都影響信號的強弱。還有不能靠近高頻電路。

最底層放置鋰電池,以及電源管理,側面放置20mm散熱器以及i2c時間模塊,剩下就是nanopi_duo和五個C118了。過程一律帶過,看圖安裝。

視頻里屏蔽器的作用在於將3G4G網絡迫降到2G

源代碼:https://pan.baidu.com/s/1eTR1AZg

參考文獻:

http://bb.osmocom.org/trac/

http://osmocom.org/projects/baseband/wiki/GnuArmToolchain


免責聲明!

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



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