GSM Sniffer 初探之小试牛刀[kali linux]

[注意:官方最新的脚本已经更新,此教程已经不适用,本博客已经发布最新教程(基于kali 2.0和官方最新文件)

咱们看戏之前先得搭好戏台,说下我这里的装备。

我这使用的装备是这样的:

摩托罗拉c118手机一部

2.5mm 3极耳机线一根

USB转TTL模块一个

笔记本一个(kali linux 1.0.9

至于装备哪里买?多少钱?淘宝店铺地址?这些问题,博主就不一一说明了,在这儿博主稍微提醒下。C118手机在某宝上30来块的样子,USB转TTL的模块选用cp2102的,也就在10块钱以内。耳机线也不到一块钱一根。当然如果想省时省力的话可以直接买现成的做好的刷机线,只是价格略贵,还不包邮。单独买就得自己焊了 ,不难。博主这里的耳机线就是自己焊接的,效果杠杠的。

说了半天,各位看官都急了吧,没JB你说个图?呐,做人呢,最重要的就是要开心咯。咱们来看图:)

第一张:摩托罗拉C118手机(买了两部测试

c118_2.jpg - 大小: 324.05 KB - 尺寸: 762 x 627 - 点击打开新窗口浏览全图

这里要提示下,用于gsm sniffer是不需要插入SIM卡的,我这里平时把它作为备用机,放了一张移动的卡,当然,也是为了测试sniffer的效果:)

第二张:已经接好的刷机线(USB转TTL模块 + 2.5mm 3极耳机线

usb2ttl_3.jpg - 大小: 161.76 KB - 尺寸: 734 x 259 - 点击打开新窗口浏览全图

博主在选择线的长度的时候稍有测试,刚开始使用了大约60cm的线,发现经常会出现数据传输失败,刷机失败,数据慢的问题。后来缩短到20cm后再也没出现那种问题,很稳定。如果经常出现刷机失败,而且插拔数据线都无果的情况下请检查是否是线的问题。关于接线顺序,我这因为已经用了热熔胶糊住了,看不太清楚。直接文字表述一下吧,我这用的三芯线里面有两根粗线(一红一白),一根细线(红),细红线接GND,白线接TX,粗红线接RX。

第三张:在一起TAT

all.jpg - 大小: 182.76 KB - 尺寸: 720 x 624 - 点击打开新窗口浏览全图

图看完,咱们开始各种倒腾了。文中所用到的文件博主已经打包上传到百度云,需要下载的请猛戳这里钥匙:vk7t

装备咱们准备齐全了,接下来打开我们的kali linux。我这儿使用的是1.0.9版本,其实1.0.5版本也行,没差别。首先我们需要安装一下我们必要的编译环境。因为Osmocom-bb嗅探平台是需要自己在本地编译的。所以编译环境一定要先整好,避免编译失败。注意,这里使用的系统是kali linux ,默认目录为/root,使用其他linux版本的童鞋请注意权限和目录

使用下面的命令来安装编译环境:

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
osmocomBB软件依赖GNU的一些包,所以先安装下依赖:
aptitude install libtool shtool automake autoconf git-core pkg-config make gcc

咱们来建立个工作目录叫armtoolchain,把下载下来的gnu-arm-build.2.sh这个文件复制进来,赋予其可执行权限。然后在armtoolchain目录下建立src文件夹,将newlib-1.19.0.tar.gz、binutils-2.21.1a.tar.bz2、gcc-4.5.2.tar.bz2这三个文件复制到src文件夹下,接着回到armtoolchain目录,执行脚本./gnu-arm-build.2.sh

会看到一个提示:

Press ^C now if you do NOT want to do this.

按下回车进入编译流程。大约过了30分钟,编译第一个流程结束。提示需要把路径加入环境变量。

我这的环境执行以下命令,童鞋们要按照自己的环境来。

echo "export PATH=\$PATH:/root/armtoolchain/install/bin">>/root/.bashrc
然后让环境变量生效,执行下面的命令:
source /root/.bashrc
接下来进入编译的第二阶段,我这里是直接把osmocombb的源码分支git到之前创建的armtoolchain目录下面进行编译安装。执行以下命令:
cd /root/armtoolchain 
git clone git://git.osmocom.org/osmocom-bb.git 
git clone git://git.osmocom.org/libosmocore.git
cd /root/armtoolchain/libosmocore 
autoreconf -i 
./configure 
make 
sudo make install
cd  /root/armtoolchain/osmocom-bb 
git checkout --track origin/luca/gsmmap
cd src 
make

等待编译完成我们这一阶段基本完成。

【嗅探部分↓↓↓↓↓↓

下面我们插入刷机线。使用lsusb命令查看USB设备,出现CP210x说明刷机线已经就绪。如图:

2.png - 大小: 130.01 KB - 尺寸: 901 x 207 - 点击打开新窗口浏览全图

cd /dev可以查看USB编号为ttyUSB0(如果使用了其他的USB转TTL模块的可能不一样,我用的是CP2102) ,确保C118手机已经处于关机状态,插入耳机插头。执行以下命令开始进行刷机:

cd armtoolchain/osmocom-bb/src/host/osmocon
./osmocon -p /dev/ttyUSB0 -m c123xor ../../target/firmware/board/compal_e88/layer1.compalram.bin

然后轻轻按一下手机的挂机键,出现如下效果图且手机屏幕显示Layer1字样则说明刷机成功,否则请检查刷机现是否插牢,接线顺序是否有错等。

刷机成功效果图:

3.png - 大小: 180.14 KB - 尺寸: 840 x 973 - 点击打开新窗口浏览全图

注意,此窗口全程不可以关闭,否则将无法继续下面的任何操作,下面的操作均需要的新建的窗口进行。

刷机成功后我们进入GC,sniffer阶段。这里我们打开三个终端,强烈推荐安装terminator多窗口同开。

三个窗口分别执行下面的命令

窗口1:[扫描基站,cell_log后面是大写的欧不是零]

cd ~/osmocom-bb/src/host/layer23/src/misc/
./cell_log -O

等待扫描结束,选择一个基站编号(ARFCN)

4.png - 大小: 158.52 KB - 尺寸: 834 x 973 - 点击打开新窗口浏览全图

窗口2:[开始监听]

cd ~/osmocom-bb/src/host/layer23/src/misc/
./ccch_scan -i 127.0.0.1 -a 基站编号
窗口3:[抓包分析]
wireshark -k -i lo -f 'port 4729'
四窗口同开的效果图如下:

5.png - 大小: 386.86 KB - 尺寸:  x  - 点击打开新窗口浏览全图

测试嗅探的截图如下:

8.png - 大小: 123.46 KB - 尺寸:  x  - 点击打开新窗口浏览全图

感谢Oic大牛提出文中的一些错误

注意:GSM sniffer只针对GSM有效,对于电信和联通的CDMA是无效的,所以监听的范围也很有限。

如果您觉得文章有帮助到您,请到 https://www.92ez.com/index.php?action=show&id=23403 进行打赏/捐赠,谢谢!
如果您觉得文章有帮助到您,请 使劲戳这里 进行打赏/捐赠,谢谢!
本文链接:https://www.92ez.com/?action=show&id=1
提示:技术文章有一定的时效性,请先确认是否适用你当前的系统环境。

关键词: gsm嗅探 , c118 , gsm sniffer

上一篇: 使用NFC Module For Arduino V1.0在linux下读取公交卡信息
下一篇: 全自动无线攻击装置【翻译】

相关文章
访客评论
#1
回复 Susue 2013-07-23, 8:54 AM
您好。我剛好有這方面的需要。不過我從github下載源文件,嘗試了demo,但是沒有成功。然後自己改了下,仍然未成功。不知道您能否給一份成功的demo讓我看看具體如何使用呢?麻煩啦。
我的郵箱是:1146402275@qq.com。
#2
回复 我就来问问题 2014-11-27, 5:10 PM
Osmocom-bb扫描基站的时候
cell_log.c:443 Measure from 0 to 124
cell_log.c:443 Measure from 512 to 885

到这就停住了 试了N次都这样 怎么破?
回复 GH05T 2015-01-27, 1:34 PM
@我就来问问题: 确定手机没问题?
回复 bbc250 2017-02-14, 12:09 PM
@GH05T: 确定没问题  我在虚拟机上的Ubuntu 14.04LTS x64上通过  顺利截取gsm_sms
但是我打算移植到ARM开源板上时  前面各种编译错误我都解决了 唯独这一步卡住了 也没错误信息 你的帖子下已经有俩人回复出现这个问题了
#3
回复 风~ 2015-01-09, 10:42 AM
测试成功,感谢博主。
回复 GH05T 2015-01-27, 1:34 PM
@风~: 谢谢支持
#4
回复 leaf 2015-01-10, 12:36 AM
教程很详细,实战过程才是最好的教程
回复 GH05T 2015-01-27, 1:34 PM
@leaf: 谢谢支持
#5
回复 phantomer 2015-01-24, 3:56 PM
博主在运行./gnu-arm-build.2.sh的时候有遇到过,*** Configuration arm-unknown-elf not supported
make: *** [configure-gcc] 错误 1


这个问题么?
回复 GH05T 2015-01-27, 1:33 PM
@phantomer: 这个应该是gcc版本问题吧
#6
回复 p1n3 2015-07-30, 10:58 AM
啊啊啊啊,出问题了
ubuntu 14.04 x64

-o doc/cpp.info /home/xxx/armtoolchain/src/gcc-4.5.2/gcc/doc/cpp.texi; \
    fi
/home/xxx/armtoolchain/src/gcc-4.5.2/gcc/doc/cppopts.texi:763: @itemx must follow @item
make[1]: *** [doc/cpp.info] 错误 1
#7
回复 websafe 2015-08-15, 5:22 PM
请教一下出现一下错误怎么解决?非常感谢!
ubuntu 14.10 32位系统

/home/root/armtoolchain/src/gcc-4.5.2/gcc/doc/cppopts.texi:763: @itemx must follow @item
Makefile:4052: recipe for target \\\'doc/cpp.info\\\' failed
make[1]: *** [doc/cpp.info] Error 1
make[1]: Leaving directory \\\'/home/root/armtoolchain/build/gcc-4.5.2/gcc\\\'
Makefile:5026: recipe for target \\\'all-gcc\\\' failed
make: *** [all-gcc] Error 2
回复 fqzc2333 2016-12-22, 12:14 PM
@websafe: 先卸载 texinfo  (apt  remove texinfo)
再运行 ./gnu-arm-build.2.sh
这就可以过gcc的编译 但是编译newlib还是需要的
这时再安装texinfo  (apt install texinfo)
再运行 ./gnu-arm-build.2.sh
可能是gcc和texinfo 有冲突 但是 texinfo在编译gcc又不是必须的,编译gcc 会检查是否存在texinfo 如果存在就使用。但是会报这个错(/gcc/doc/cppopts.texi:763: @itemx must follow @item )
就先卸载 texinfo 再运行一遍脚本编译gcc , 最后编译newlib是需要这个texinfo的, 这个时候再安装 ,再运行./gnu-arm-build.2.sh
可能没讲太清楚  请见谅  我是小白☺
回复 bbc250 2017-03-07, 3:28 PM
@fqzc2333: 上次用你这个方法在一个国产的开源派解决问题了   这次换了个树莓派3b编译  也是这个问题  你这个方法就不好使了
这个问题是gcc版本太低 对texinfo5.x支持不好  我也没有尝试texinfo4.*版本的    官网wiki上给出了第三版的shell脚本
gnu-arm-build.3.sh  这个版本我在raspbian 2017-01-11下编译成功了
回复 eyuan 2017-04-20, 9:05 AM
@bbc250: pi3 kali编译通过,同原因
#8
回复 GH05T 2015-08-21, 9:09 AM
@websafe 这个检查下gcc版本
#9
回复 lr3800 2015-10-16, 9:05 AM
~/桌面/armtoolchain/osmocom-bb/src/host/osmocon# ./osmocon -p /dev/ttyUSB0 -m c123xor ../../target/firmware/board/compal_e88/layer1.compalram.bin
bash: ./osmocon: 没有那个文件或目录

出现该错误是什么原因
回复 GH05T 2015-10-20, 8:37 AM
@lr3800: 编译成功了吗
回复 喜来乐147147 2016-01-13, 9:11 PM
@GH05T: 你好一只猿,我也想用这个软件,可我是小白,没有电脑基础,可以给一份你做好的软件吗,有偿帮忙,2192914947
#10
回复 喜来乐147147 2016-01-13, 9:12 PM
你好一只猿,我也想用这个软件,可我是小白,没有电脑基础,可以给一份你做好的软件吗,有偿帮忙,2192914947
#11
回复 chen 2016-03-03, 1:03 PM
最后一步power up死活出不来后面的了,等了2个  半小时了。。。
还在等。。。不知道是不是哪里出了问题,好奇怪。。
回复 GH05T 2016-03-07, 10:10 AM
@chen: 这种情况下说明你的手机死机了,你需要抠掉手机电池3秒后放回,重新按开机键刷机
#12
回复 追忆凯文 2016-07-12, 3:54 PM
请教个问题,每次使用都需要刷机吗?
怎么注册呀论坛账号呀
#13
回复 hxxh 2016-07-19, 4:27 PM
大神你好,我在刷机的时候
执行这个命令./osmocon -p /dev/ttyUSB0 -m c123xor ../../target/firmware/board/compal_e88/layer1.compalram.bin
找不到文件,后来查看文件,发现为osmocon.c  我又给他各种权限,用的语句为chmod +777  osmocon.c
再次运行的时候报错
./osmocon.c:行1: /0: 权限不够
./osmocon.c:行3: 未预期的符号 `C' 附近有语法错误
./osmocon.c:行3: `/* (C) 2010 by Harald Welte <laforge@gnumonks.org>
能帮忙看下嘛,谢谢了
回复 GH05T 2016-07-20, 3:14 AM
@hxxh: 你这应该是没有编译成功
回复 hxxh 2016-07-20, 9:11 AM
@GH05T: 我重新编译了一次还是不行呢,
#14
回复 hxxh 2016-07-26, 3:29 PM
大神你好,我在wireshark里面抓的包都是GSMT AP协议的,我看您演示的是GSM_SMS协议,这有什么区别呢,能否留个联系方式讨论下
回复 GH05T 2016-07-27, 12:13 PM
@hxxh: 过滤规则方便过滤短信
#15
回复 一阵风 2016-11-11, 8:28 PM
请问你执行cell_log扫描要多久的时间。我都等了十几分钟一直停在Measurement Done上面。
回复 bbc250 2017-02-14, 12:12 PM
@一阵风: 几秒钟就出现下一个提示信息了  你这个和我遇到的情况一样 我在x64上的虚拟机从没有在这一步卡过基本马上就有下一句信息了   但是我移植到ARM上编译的时候就会卡在这里   给我感觉还是编译的问题
回复 freeast 2017-08-09, 7:21 PM
@bbc250: 我没事也在ARM上编译过了,也是卡在这里,怎么也不扫描。在KALI64位下是可以的。
不知道各位兄弟解决了没有,有朋友一起玩么,一七二五四九五七一
发表评论

评论内容 (必填):