虽然现在已经开始普及4G、5G,但GSM嗅探仍然是学习路上的基础,在安装和使用grgsm模块时也可能遇到各种问题。

安装gr-gsm并进行嗅探

1 首先确保已经安装依赖环境,使用下面代码检查gnuradio,rtl-sdr,gr-osmosdr和libosmocore 是否安装完好。

sudo apt-get install gnuradio rtl-sdr gr-osmosdr libosmocore gnuradio-dev librtlsdr-dev libosmosdr-dev libosmocore-dev

2 检查需要的软件包,注意python-scipy是python中的库,所以使用pip3进行安装。如果期间出现其它包的缺失,也顺便

sudo apt-get install cmake libboost-all-dev libcppunit-dev swig doxygen liblog4cpp5-dev 
pip3 install python-scipy

3 获取gr-gsm并进行安装,此处如果出现cmake出现错误,就仔细检查以下报错,看是不是丢失了哪个包,如果丢失就进行安装。

git clone https://github.com/ptrkrysik/gr-gsm.git
cd gr-gsm
mkdir build
cd build
cmake ..
make
sudo make install

4 创建config文件~/.gnuradio/config.conf,这样gnuradio-companion才可以发现GRGSM自定义模块。大家可以先不自己创建,看是否能正常运行。

5 至此,按理说已经可以运行了,大家可以连接上HackRF One,然后在命令行输入以下指令,进行周围基站扫描。大家可以先不自己创建,看是否能正常运行,如果能正常运行,那么恭喜你,成功了。如果不行,那估计你会遇到和我一样的情况,也就是说python中并没有找到'grgsm'包。

Traceback (most recent call last):File "/usr/local/bin/grgsm_scanner", line 33, in <module>import grgsm
ModuleNotFoundError: No module named 'grgsm'

6 根据问题,我从官方GitHub的回复中找到了解决方法,并且一般出现在新版本的LINUX系统中,那么解决办法就是在命令行运行指令将存放grgsm的目录加入到python的目录中,并且在同一个窗口中进入目录~/gr-gsm/apps,使用手动的方法来运行后面的程序。在这里每次关闭窗口再次打开,都需要输入export代码将路径加入。

export PYTHONPATH=/usr/local/lib/python3/dist-packages/:$PYTHONPATH

7 运行grgsm_scanner,查找周围基站,这里要稍微等一段时间,不要着急,之后就可以定位到基站信息了,数据格式如下。

python3 ./grgsm_scannerARFCN:   **, Freq:  ***.*M, CID:  ****, LAC: *****, MCC: ***, MNC:   *, Pwr: -34

8 查找到基站的Freq之后,就可以进行嗅探了,使用grgsm_livemon进行监听了,如果出现如下数据,则证明频率选择较好,已经可以嗅探到数据了。

python3 grgsm_livemon -f 1828.6M25 06 21 00 05 f4 cc da 50 4e 23 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b2d 06 22 00 d8 dc 2e 89 cd da e8 ad 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b25 06 21 00 05 f4 df da 2a be 23 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b2d 06 3f 10 0e c2 75 77 03 e5 01 00 c6 24 82 34 40 2b 2b 2b 2b 2b 2b2d 06 3f 10 0e c2 75 77 03 e5 01 00 c6 24 82 34 40 2b 2b 2b 2b 2b 2b59 06 1a 8f 39 8f 40 00 00 00 00 00 00 00 00 00 00 00 00 7f b9 00 002d 06 3f 10 0e c2 75 77 03 e5 01 00 c6 24 82 34 40 2b 2b 2b 2b 2b 2b01 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b25 06 21 00 05 f4 e5 dc 40 9b 23 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b15 06 21 00 01 f0 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b25 06 21 00 05 f4 ec cc 8f f0 23 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b2d 06 22 00 cb dc 58 46 e3 da 0e 9e 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b15 06 21 00 01 f0 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b

9 使用wireshark对数据包抓包分析。安装wireshark,并运行。

apt-get install wiresharksudo wireshark -k -Y 'gsmtap && !icmp' -i lo

10 至此就可以看到抓到的包了,并可以进行分析,首先我尝试看了一下短信内容,当然,这个短信,是我自己手机接收到的。

总结

到这里就学会了简单的进行GSM消息的嗅探,并且可以看到下行的SMS信息内容。而使用GSM嗅探还可以实现IMSI-Catcher获取基站下手机的IMSI,甚至可以通过分析和密码破解来解码语音通话数据,这些将在后续的文章中相继放出。

HackRF One—GSM嗅探相关推荐

  1. (转载)一加6/6t nethunter 完美内核与app

    (转载自https://github.com/johanlike/Oneplus6-or-6T-Nethunter-Kernel/blob/master/README.md) 大家好我来自中国的菜鸟极 ...

  2. 刷固件Layer1到手机FLASH(硬刷)

    开头: 注意:本文章并不是做GSM 嗅探必须的,平时我们刷机叫软刷是刷到内存里面的,断电就消失了,这个是硬刷,刷到flash里面的,断电不消失,开机就运行的. 本文章经过作者实测可行,这只是单个应用程 ...

  3. 《黑客大曝光:移动应用安全揭秘及防护措施》一2.2 攻击与对策

    本节书摘来自华章出版社<黑客大曝光:移动应用安全揭秘及防护措施>一书中的第2章,第2.2节,作者 (美)Neil Bergman ,更多章节内容可以访问云栖社区"华章计算机&qu ...

  4. 【开源夏令营优秀开题报告】专题之二 - 嵌入式与智能硬件类合集

    CSDN开源夏令活动已经正式进入第一实习阶段,我们遴选出部分优秀提案开题报告进行展示.本文是嵌入式与智能硬件类开题报告展示. 编者按:CSDN开源夏令活动,已经正式进入第一实习阶段,我们遴选出了部分提 ...

  5. GSM Hacking Part① :使用SDR扫描嗅探GSM网络

    GSM Hacking Part① :使用SDR扫描嗅探GSM网络 0×00 写在开头 近期,发现Crazy Danish Hacker在YouTuBe发布了一个挺不错的教程视频:使用SDR嗅探监听G ...

  6. 使用SDR扫描嗅探GSM网络(劫持手机信号)

    © kali.中国 小白   /  2022-1-15 22:05  /   0 人收藏 保留作者信息 禁止商业使用(站长自定义文字)环境搭建 OS:[color=var(--focus-color) ...

  7. GSM劫持+短信嗅探是什么,如何防范指南

    一夜醒来,放在枕边的手机收到几十条银行短信.银行卡,支付宝里的钱全部被人转走,甚至还替你借了网商贷,不单止辛苦多年的积蓄全都没有了,还欠了银行一屁股债,这不是小说里的情节,最近这样的手机盗刷案件在国内 ...

  8. GSM BTS Hacking: 利用BladeRF和开源BTS 5搭建基站

    GSM BTS Hacking: 利用BladeRF和开源BTS 5搭建基站 引文 如果你已经购买了Nuand(官方)BladeRF x40,那么就可以在上面运行OpenBTS并可以输入一些指令来完成 ...

  9. GnuRadio Hacking②:使用SDR嗅探北欧芯片无线键盘鼠标数据包

    0×00 前言 上半年的时候安全公司Bastille Networks(巴士底狱)安全研究员发现大多数无线鼠标和接收器之间的通信信号是不加密的,黑客可对一两百米范围内存在漏洞的无线键鼠进行嗅探甚至劫持 ...

最新文章

  1. 感知哈希算法(perceptual hash algorithm),
  2. 信息系统项目管理师-组织级项目管理与大型项目管理知识点
  3. python assert断言的用法
  4. WCF - 服务实例管理模式
  5. k8s往secret里导入证书_K8S之Secret
  6. 小米羊城通余额不足服务器维护,再不怕羊城通余额不够了!地铁站现自助补票“神器”...
  7. C++ 四种类型转换
  8. dns 服务器 linux_在Linux上构建自己的DNS服务器
  9. 为什么python工程师掌握这些就够了_Python学到什么程度才可以去找工作?掌握这4点足够了!...
  10. linux进程管理——进程管理相关命令
  11. git分布式版本管理系统和github平台
  12. phinx数据库脚本迁移工具
  13. 【Unity】制作简易三维场景
  14. 基于QT的音视频采集推流实时传输播放数据发布系统 文档+项目源码+答辩PPT
  15. Ubuntu 源(教育网,IPv6)
  16. 来聊一聊广告主“又爱又恨”的EDM营销那档子事儿!
  17. 【规范】C/C++注释格式
  18. DL | TensorFlow代码调试
  19. docker搭建fdfs实现缓存图片视频
  20. 【毕设选题推荐】机器人工程专业毕设选题推荐

热门文章

  1. C++ 中的静态绑定和动态绑定
  2. 阿里巴巴天猫java_【阿里巴巴】阿里巴巴天猫超市Java研发工程师
  3. IPv6地址格式表示
  4. 让你听见的 HTML5
  5. HTTP状态码(超详细)
  6. 【RL】Markov decision process马尔可夫决策过程(MDP)
  7. 人脸比对软件_上海市动态人脸识别终端
  8. .h文件和.hpp区别
  9. 短视频剪辑小技巧,少用平剪很重要,教你剪出受人欢迎的短视频
  10. iis php ttfb,IIS高且不稳定的TTFB