[翻译]Hacking 101 to mobile data
这篇文章主要介绍如何创建MitM(中间人攻击),用于嗅探SIM卡和后端服务器之间的流量。虽然这不是什么新的研究,但我还是希望这篇文章可以帮助到那些没有技术背景的人,如何使用移动数据嗅探和伪基站。如今我们有很多带有SIM卡的物联网设备可以连接到后端,适用场景广。
本文先以SIM使用2G和GPRS的最简单的场景举例,以后或许还有关于3G,4G的文章。
动机
如今,大多数 LoT设备都是通过SIM卡与后端相连。这些LoT设备可以是任何简单的小东西,比如:咖啡机、智能手表、智能眼镜,或是大一点的物品,汽车、医疗设备等等。如果你想监听这些loT设备与后端之间的流量通信,这篇文章就再合适不过了。
目标
为了实现移动数据流量的MitM攻击,首先要使用USRP硬件制作一个简单的伪基站。
要求
这是本次实验所用到的设备。
硬件
1、 USRP B210(带天线和电缆(USB 3)连接到PC)
2、 智能手机或旧GSM手机,本次实验使用loT设备
3、 SIM卡
4、 笔记本电脑
软件
1、OpenBTS
2、SipauthServ
3、Smqueue (可选——如果你想发短信)
4、Asterisk (可选——如果你想打电话)
6、OS – Ubuntu 16.04
Human ability
使用Google搜索,阅读,写作和耐心开始,停止,踢球,重新开始,停止,暂停,喝咖啡,开始,停止...... ..循环。
什么是OpenBTS

图1:OpenBTS概述(http://openbts.org/about)
OpenBTS.org是一个开源软件项目,致力于通过互联网协议和灵活的软件架构来制作电信协议和传统复杂的专有硬件系统。OpenBTS软件是一种Linux应用程序,它使用软件定义的无线电向用户设备呈现标准的3GPP空中接口,同时将这些设备作为SIP端点呈现给互联网。这构成了新型无线网络的基础,该网络承诺将覆盖范围扩大至未服务和服务不足的市场,同时释放创新平台,包括为新兴网络技术提供支持,例如针对物联网的新兴网络技术。[参考]
建立伪基站

图2:安装
第一件事就是运行OpenBTS。
源代码:
我遵循这个链接从源代码构建OpenBTS。通常会有一些缺失的依赖项需要修复。除此之外,没有建立OpenBTS所需的具体设置。首先,我们主要需要两个服务,即OpenBTS本身和SipauthServe。从源代码构建OpenBTS和SipauthServe后,在终端中启动这两个服务。在上面的链接中,还有其他组件,例如Smqueue和Asterisk,这是使呼叫和SMS功能正常工作所必需的。但是,由于我们的重点主要是移动数据(这里是GPRS),所以我们不关心在这里设置这些组件。但尝试使其运作仍然很有趣。
运行OpenBTS
- 使用USB 3电缆将USRP设备连接到电脑
- 我搭建了一台虚拟机,里面构建了所有必需的软件,以便轻松移植。如果你也使用虚拟机,请确保它具有USB 3转发的可能性。在virtualbox中,你可以启动USB > Devices > Ettus Research USRP B210(或类似的名字)。
- uhd_usrp_probe:此命令用于linux的USRP硬件驱动程序外设报告实用程序,一旦它检测到设备,它将下载B210的固件
- 运行SipauthServe
home/dev/subscriberRegistry/apps$ sudo ./sipauthserve
注意:上传附件及图片大小不得大于30M。
⚠️ 版权声明:
本博客所有内容(含教程、源码、工具)仅供个人技术学习与研究交流使用,严禁商用、倒卖、二次分发及非法用途。
未经作者书面授权,任何组织或个人不得转载、复制或用于其他平台,违者将追究相关责任。
