Moto C118 基于 Osmocom-BB 和 OpenBTS 搭建小型GSM短信基站

此文章PDF文档下载地址:点击下载

0x00 写在前面

大家应该都听说过摩托罗拉C118配合Osmocom-BB实现GSM网络下的短信拦截功能吧,在14年左右新出了一种玩法就是Osmocom-BB的sylvain/testing分支固件可以配合OpenBTS,,借助周围信号强度较大的ARFCN伪造出一个新的基站信号。不过由于摩托罗拉C118的问题,无法实现语音通话功能只可以发送短信(默认只可以发送英文短信,修改源码可以实现发送中文短信)

以下内容将会指导你怎样用Osmocom-bb兼容的手机(如c115,c118,c123等)当作OpenBTS的无线收发机.

0x01 环境

已顺利编译运行过Osmocombb的可继续往下看,否则请参考官方链接优秀文章

首先安装libosmo-dsp库

先下载

$ git clone git://git.osmocom.org/libosmo-dsp.git

编译前需要安装fftw3

$ apt-get install libfftw3-3 libfftw3-dev libfftw3-doc

然后编译

$ cd libosmo-dsp
$ autoreconf -i
$ ./configure
$ make
$ make install

0x02 Osmocom-BB

采用sylvain/testing分支(具体可看WIKI

先下载

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

再切换分支编译

$ cd osmocom-bb
$ git checkout sylvain/testing

默认编译出的版本发送信号相关的功能是被注释掉的,用mobile启动layer23后会一直于搜信号的过程中,因为无法发送信号。

如果需要进行实网测试需要打开src/target/firmware/Makefile文件中的编译开关

把osmocom-bb/src/target/firmware下的Makefile中的DCONFIG_TX_ENABLE宏打开:

# Uncomment this line if you want to enable Tx (Transmit) Support.
#CFLAGS += -DCONFIG_TX_ENABLE

然后到src目录下编译

$ cd src make HOST_layer23_CONFARGS=--enable-transceiver

0x03 OpenBTS

这里使用的OpenBTS的版本是OpenBts-p2.8(嫌手动编译麻烦的可以找我要DEB安装的教程),首先安装依赖

$ sudo apt-get install autoconf libtool libosip2-dev libortp-dev libusb-1.0-0-dev g++ sqlite3 libsqlite3-dev erlang libreadline6-dev libncurses5-dev

下载源码

$ svn co http://wush.net/svn/range/software/public(svn版本必须 <= 1.7)

然后编译安装(有不懂的可以前往WIKI查看详细资料)

$ cd a53/trunk
$ make install

$ cd openbts/trunk
$ autoreconf -i
$ ./configure
$ make
$ mkdir /etc/OpenBTS
$ sqlite3 -init ./apps/OpenBTS.example.sql /etc/OpenBTS/OpenBTS.db ".quit"

$ mkdir -p /var/lib/asterisk/sqlite3dir
$ cd subscriberRegistry/trunk
$ make
$ sqlite3 -init subscriberRegistry.example.sql /etc/OpenBTS/sipauthserve.db ".quit"

$ cd smqueue/trunk
$ autoreconf -i
$ ./configure
$ make
$ sqlite3 -init smqueue/smqueue.example.sql /etc/OpenBTS/smqueue.db ".quit"

安装OpenBTS后按照WIKI的说明配置/etc/OpenBTS/OpenBTS.db

$ apt-get install sqlite3 sqliteman(ubuntu系统安装,Kali自带sqlitebrowser无需安装)

然后在终端内输入sqliteman启动软件,打开/etc/OpenBTS/目录下的OpenBTS.db文件

Control.GSMTAP.TargetIP = 127.0.0.1
GSM.Radio.NeedBSIC = 1
GSM.Radio.Band = 900
GSM.CellSelection.Neighbors =(留空)
GSM.RACH.MaxRetrans = 3
GSM.RACH.TxInteger = 8
GSM.Radio.C0 = (发射的频点,数值1-124之间)
Control.LUR.OpenRegistration =.*

0x04 刷入固件

用osmocon程序将trx.compalram.bin刷入手机

命令

$ sudo ./osmocon -p /dev/ttyUSB0 -m c123xor ../../target/firmware/board/compal_e88/trx.compalram.bin

0x05 开始执行

到OpenBTS/apps目录下,将transceiver重命名为transceiver.bak新建脚本文件transceiver内容如下

#!/bin/bash exec <your path to osmocom-bb>/src/host/layer23/src/transceiver/transceiver <ARFCN>

<your path to osmocom-bb>替换成你自己的路径,<ARFCN>替换成附近信号最强的ARFCN号

赋予执行权限

chmod +x transceiver

然后开4个终端窗口分别执行

$ cd openbts/trunk/apps
$ ./OpenBTS

$ cd subscriberRegistry/trunk
$ ./sipauthserve(开启注册服务)

$ cd smqueue/trunk/smqueue/
$ ./smqueue(开启短信功能)

$ cd openbts/trunk/apps
$ ./OpenBTSCLI(打开OpenBTS控制台)

如果一切运行顺利打开手机进入 设置-移动网络-网络运营商 即可看到我们创建的基站

在OpenBTSCLI的终端窗口可以输入 help 查看命令帮助

输入 tmsis 可以查看当前基站用户的IMSI

输入 sendsms IMSI 电话号码 短信内容  即可发送任意显示号码的短信

0x06 结语

一入GSM深似海,作者不是学通信的,只是业余爱好,第一次写文章投稿,文中不免纰漏和不妥之处,有任何建议或意见欢迎留言!

0x07参考资料

http://osmocom.org/projects/baseband/wiki/Transceiver
https://wush.net/trac/rangepublic/wiki/BuildInstallRun
https://wush.net/trac/rangepublic/wiki/DebOpenBTS
http://bb.osmocom.org/trac/blog/PHD2012
http://www.h-online.com/open/news/item/29C3-Budget-mobile-turns-into-GSM-base-station-1775204.html
http://blog.0x7678.com/2014/03/osmocombbopenbtsgsmcalypso.html

0x08效果演示

http://www.cnblogs.com/k1two2/p/5176030.html(此文章中含视频演示)

时间: 2024-08-29 13:21:20

Moto C118 基于 Osmocom-BB 和 OpenBTS 搭建小型GSM短信基站的相关文章

C118+Osmocom-bb+Openbts搭建小型基站

演示图片:   演示视频:   交流论坛:GsMsEc 交流Q群:

搭建亿万级别短信服务发送平台

写在开始 阿里云的小伙伴们,走过路过,千万不要错过.之所以起这么唬人的标题,其实就是想让路过的您点一下,顺便关注一下博主.当然你也可以默默地顶完文章然后转身就走人,但是动作一定要快,姿势必须要帅,深藏功名尘与土. 阿里大鱼 阿里大鱼去哪了,这么牛掰的名字,居然被阿里云抛弃了? 显然不是,进入短信后台.阿里云还是给了提示:原短信服务已停止开通. 感谢你对短信服务产品的支持,原短信服务(整合在消息服务内)已停止开通.请前往短信服务控制台,开通新短信服务. 很明显短信服务被整合到消息服务中去了,阿里大

求怎样做一个基于贝叶斯的android平台垃圾短信过滤系统

问题描述 求怎样做一个基于贝叶斯的android平台垃圾短信过滤系统 大家好,我目前想做一个基于贝叶斯概率模型的android平台垃圾短信过滤系统,在网上也找了一些关于这一方面的文章和论文,但大多讲的偏理论些,在系统实现的架构和细节上讲的很少.在结构设计上遇到一些问题:1.分类器训练是放在系统软件内部好些还是在外部训练好分类器在放入软件中?2.中分分词问题,有哪些好的分词器,网上查了查开源的分词器iKanalyzer不知这个分词器在android上运行占用内存资源会不会很大? 请大家给些意见,先

OpenRisc入门(9)-基于or1200最小sopc系统搭建(三)--串口

最近在弄openrisc,之前有人在弄,并且写了一篇master thesis,我已经上传了: http://download.csdn.net/detail/rill_zhen/5303401 下面的内容应该就是根据论文中的指导完成的,但是,不是我完成的,所以转载如下: 接上一篇(原创)基于or1200最小sopc系统搭建(二)--QuartuII工程及DE2平台下载现再为构建的or1200最小系统添加上串口.先进行仿真,再在DE2上验证,在hyperterminal上显示hello worl

OpenRisc入门(8)基于or1200最小sopc系统搭建(二)

QuartuII工程及DE2平台下载 最近在弄openrisc,之前有人在弄,并且写了一篇master thesis,我已经上传了: http://download.csdn.net/detail/rill_zhen/5303401 下面的内容应该就是根据论文中的指导完成的,但是,不是我完成的,所以转载如下: 接上一篇(原创)基于or1200最小sopc系统搭建(一)--搭建及仿真(DE2,DE2-70) 现在构建QuartusII工程. 建个工程目录or1200_sopc_quartus.在其

基于阿里云数加搭建企业级数据分析平台

摘要:本文的整理自2017云栖大会-上海峰会上阿里云大学的分享讲义,讲义主要分为三部分,分别是数据分析介绍,场景及解决方案,和搭建分析平台.数据分析是基于商业目的,有目的的进行收集.整理.加工和分析数据,提炼有价值信息的过程. 在2017云栖大会-上海峰会上,阿里云大学做了题为<基于阿里云数加搭建企业级数据分析平台>的分享.在大数据的时代背景下,数据分析显得尤为重要.数据分析是基于商业目的,有目的的进行收集.整理.加工和分析数据,提炼有价值信息的过程.从为什么要做数据分析及数据分析平台一般是什

基于Windows 7旗舰版搭建WinCE6.0开发环境的过程

      首先感谢JeffreyLi提供了更简便的安装WinCE6.0 R3的方法,今天验证过了,确实比我之前整理的<WinCE6.0 R3的安装步骤>方便很多,十分感谢!       为了方便大家参考,重新整理的安装步骤如下:  *         Please install the following software in order             Visual Studio 2005             Visual Studio 2005 Service Pack 

Enterprise Architect基于SVN多人协作环境搭建

Enterprise Architect基于SVN多人协作环境搭建 本文简单介绍基于TortoiseSVN搭建Enterprise Architect多人协作环境的方法. 一.软件安装 1.版本管理工具TortoiseSVN 安装时需选择"command line client tools",该选项默认安装时不会被选中,需手动选择. 2.设计工具Enterprise Architect 无特殊说明 二.svn协作搭建步骤 配置svn环境 1.在svn服务器上申请单独的目录取名存放设计文

GSM Hacking:使用BladeRF、树莓派、YatesBTS搭建便携式GSM基站

每次看到黑客在网上发布的那些GSM技术相关文章我都十分惊讶.然而在没有Software Defined Radios (SDRs)之前,玩GSM并不便宜,除此之外想要好好玩你得下大功夫. 拓展阅读 GSM BTS Hacking: 利用BladeRF和开源BTS 5搭建基站 极客DIY:如何构建一台属于自己的基站 在阅读多篇有关GSM基站的文章之后,我注意到有关GSM基站这个话题有许多的不一致或者是讲的不够细致. 基于这一点,我决定写下今天这篇文章,进行手把手教学. 在文章开始之前,我要感谢所有