IMSI-catcher:可发现附近手机敏感信息的工具
严正声明:该工具主要是为了让大家更好的了解GSM网络的工作原理而设计开发的,请不要用于恶意目的!
前言
IMSI-catcher是一个可以帮助你发现附近手机的IMSI号码,国家,品牌和运营商等信息的工具。
你需要准备的设备
一台PC电脑
1个带有天线的USB DVB-T key(RTL2832U)(大概在15美元以内),或是一部OsmocomBB手机一个HackRF设备。
设置
git clone https://github.com/Oros42/IMSI-catcher.git
# or wget https://github.com/Oros42/IMSI-catcher/archive/master.zip && unzip -q master.zip
sudo apt install python-numpy python-scipy python-scapy
对于Debian Testing (10) 和 Ubuntu 18.04+ gr-gsm 的安装,请参阅:https://osmocom.org/projects/gr-gsm/wiki/Installation
对于老版本的Debian 和 Ubuntu的安装命令如下 :
sudo add-apt-repository -y ppa:ptrkrysik/gr-gsm
sudo apt update
sudo apt install gr-gsm
如果gr-gsm设置失败,请参照:https://github.com/ptrkrysik/gr-gsm/wiki/Installation 进行设置。
Debian:https://tracker.debian.org/pkg/gr-gsm
运行
使用旧版本的gr-gsm
打开2个终端。
在终端1中输入:
sudo python simple_IMSI-catcher.py --sniff
你可以添加-h参数显示可用选项。
在终端2中,搜索频率:
grgsm_scanner
使用grgsm_livemon命令嗅探你搜索到的频率:
grgsm_livemon -f <your_frequency>M
例如:
grgsm_livemon -f 938.2M
运行后应该会产生类似以下输出:
15 06 21 00 01 f0 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b
25 06 21 00 05 f4 f8 68 03 26 23 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b
49 06 1b 95 cc 02 f8 02 01 9c c8 03 1e 57 a5 01 79 00 00 1c 13 2b 2b
...
你可以根据需求更换不同的频率。
gr-gsm >= 0.41.2-1
同样,打开2个终端。
在终端1中输入:
python simple_IMSI-catcher.py
你可以添加-h参数显示可用选项。
在终端2中输入:
python scan-and-livemon
这个过程可能需要几分钟的时间。因为,它需要运行grgsm_scanner来查找附近的基站,并请求grgsm_livemon_headless接收信号。
或是先找到附近基站的频率。
grgsm_scanner
接着,使用grgsm_livemon命令嗅探你搜索到的频率:
grgsm_livemon -f <your_frequency>M
例如:
grgsm_livemon -f 938.2M
运行后应该会产生类似以下输出:
15 06 21 00 01 f0 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b
25 06 21 00 05 f4 f8 68 03 26 23 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b 2b
49 06 1b 95 cc 02 f8 02 01 9c c8 03 1e 57 a5 01 79 00 00 1c 13 2b 2b
...
你可以根据需求更换不同的频率。
完成以上操作后,下面我们要做的就是等待结果。大概一分钟左右的时间,我们就能够在终端1中看到IMSI号码。如果一分钟后没有出现任何内容,那么请更改你的频率。
相关文档:https://fr.wikipedia.org/wiki/Global_System_for_Mobile_Communications
例如法国的频率为:9.288e+08 Bouygues
查看捕获到的数据包:
sudo wireshark -k -Y '!icmp && gsmtap' -i lo
可选项
获取有关信号塔的信息:
sudo python find_cell_id.py
获取Immediate Assignment信令:
sudo python immediate_assignment_catcher.py
查找频率
除了可以使用上面提到的grgsm_scanner来查找频率,你也可以使用像kalibrate-hackrf这样的工具来查找:
sudo apt-get install automake autoconf libhackrf-dev
git clone https://github.com/scateu/kalibrate-hackrf
cd kalibrate-hackrf/
./bootstrap
./configure
make
sudo make install
运行
kal -s GSM900
kal: Scanning for GSM-900 base stations.
GSM-900:
chan: 14 (937.8MHz + 10.449kHz) power: 3327428.82
chan: 15 (938.0MHz + 4.662kHz) power: 3190712.41
参考资料:
Gr-Gsm 设置:https://github.com/ptrkrysik/gr-gsm/wiki/Installation
频率:http://www.worldtimezone.com/gsm.html(https://fr.wikipedia.org/wiki/Global_System_for_Mobile_Communications)
MNC:https://en.wikipedia.org/wiki/Mobile_Network_Code
Scapy:http://secdev.org/projects/scapy/doc/usage.html
IMSI:https://fr.wikipedia.org/wiki/IMSI
Realtek RTL2832U:https://osmocom.org/projects/sdr/wiki/rtl-sdr(http://doc.ubuntu-fr.org/rtl2832u)http://doc.ubuntu-fr.org/rtl-sdr
IMSI-catcher:可发现附近手机敏感信息的工具的更多相关文章
- 4款Github泄漏敏感信息搜索工具简单比较
gitrob Ruby开发,支持通过postgresql数据库https://github.com/michenriksen/gitrob weakfilescan Python开发,多线程,猪猪侠开 ...
- 如何利用GitHub搜索敏感信息
如何利用GitHub搜索敏感信息 背景: 最近总是能听到同事说在GitHub上搜到某个敏感信息,然后利用该信息成功的检测并发现某个漏洞,最后提交到对应的SRC(安全应急响应中心)换点money.顿时心 ...
- 车牌、手机、身份证、等敏感信息 屏蔽 替换 、中文转unicode编码 函数
应工作要求,需要对展示的内容进行敏感信息替换.琢磨的一些时间,编写的函数匹配率还是比较高的. 顺便说下思路,使用的是正则匹配替换和字符串替换.函数可以再改进. 先把需要匹配的内容写好相应的正则,然后进 ...
- 【转】Android应用开发allowBackup敏感信息泄露的一点反思
转载:http://blog.csdn.net/yanbober/article/details/46417531 1 背景 其实这篇文章可能有些小题大作,但回过头想想还是很有必要的,有点阴沟里翻船的 ...
- Android应用开发allowBackup敏感信息泄露的一点反思
1 背景 [工匠若水 http://blog.csdn.net/yanbober 转载烦请注明出处.尊重劳动成果] 事实上这篇文章可能有些小题大作,但回过头想想还是非常有必要的,有点阴沟里翻船的感觉. ...
- 【转】android 安卓APP获取手机设备信息和手机号码的代码示例
http://blog.csdn.net/changemyself/article/details/7421476 下面我从安卓开发的角度,简单写一下如何获取手机设备信息和手机号码 准备条件:一部安卓 ...
- Spring拓展接口之BeanFactoryPostProcessor,占位符与敏感信息解密原理
前言 开心一刻 一只被二哈带偏了的柴犬,我只想弄死隔壁的二哈 what:是什么 BeanFactoryPostProcessor接口很简单,只包含一个方法 /** * 通过BeanFactoryPos ...
- android 安卓APP获取手机设备信息和手机号码的代码示例
下面我从安卓开发的角度,简单写一下如何获取手机设备信息和手机号码 准备条件:一部安卓手机.手机SIM卡确保插入手机里.eclipse ADT和android-sdk开发环境 第一步:新建一个andro ...
- 逆向路由器固件之敏感信息泄露 Part2
之前的文章中详细介绍了各种解包路由器固件的工具.解包之后就获得了固件中的文件.下一步就是分析文件寻找漏洞了.这次分析的目标是Trendnet路由器,分析的漏洞是一个远程获取路由器权限的漏洞. 初步分析 ...
随机推荐
- SQLPrompt 6.3.0.354 完美破解 安装于 SQL Server 2012/2014
SQL SERVER 2012格式化 SQL SERVER 2014格式化 SQLPrompt_6.4.0.641 破解版 百度云下载 迅雷下载 百度网盘下载 SQL Prompt 是一款拥有SQL智 ...
- vue-cli2.0项目的搭建
1.第一步:安装vue-cli 命令行输入cmd或按住shift鼠标右键打开powershell 输入命令 npm install --global vue-cli 按enter键 2.第二步:创建项 ...
- Vue项目过程中遇到的小问题
1.给router-link添加点击事件 <router-link to="" @click.native=""></router-link& ...
- vue警告: component lists rendered with v-for should have explicit keys
warning信息:component lists rendered with v-for should have explicit keys. See https://vuejs.org/guide ...
- iOS-AES算法总结
AESCipher.h #import <Foundation/Foundation.h> @interface AESCipher : NSObject /** 加密算法 @param ...
- java中内存泄露有几种?如何分析泄露原因
一.Java内存回收机制 不论哪种语言的内存分配方式,都需要返回所分配内存的真实地址,也就是返回一个指针到内存块的首地址.Java中对象是采用new或者反射的方法创建的,这些对象的创建都是在堆(Hea ...
- Java语言资源国际化步骤
语言资源国际化步骤: 1. 定义资源文件(如:language),需要使用命令native2ascii命令进行转码:(native2ascii是jdk中的转码工具,在jdk的bin目录下) 2 ...
- windons下一些软件的地址
idea http://download.jetbrains.8686c.com/idea/ideaIC-2018.3.1.exe
- 《CAP定理》
分布式系统的最大难点,就是各个节点的状态如何同步.CAP 定理是这方面的基本定理,也是理解分布式系统的起点. 分布式系统的三个指标 这三个指标不可能同时做到——这个结论就叫做 CAP 定理. Part ...
- 剑指offer(5)——从尾到头打印链表
题目: 输入一个链表的头结点,从尾到头反过来打印出每个结点的值.结点定义如下: public class ListNode { int val; ListNode next = null; ListN ...