GSM Hack(手机信号劫持)

HACK RF学习之旅记录4——HackRF嗅探GSM网络 参考文章 https://www.freebuf.com/articles/wireless/68736.html https://www.freebuf.com/articles/wireless/110773.html(比较新) https://www.cnblogs.com/k1two2/p/5804566.html(讲了解码) 标题1 准备环境过程 所用工具 1、hackrf-kalibr... 阅读详情
    写点很多人都感兴趣的东西.关于GSM通信网络监听的问题,在那一年广州黑市上出现相关设备就闹得沸沸扬扬.一时大众惶恐自危.有些所谓的资深专家就跳出来说"是不可能的,GSM网络是安全的".这可能是移动通信公司最大的危机.虽然那些专家说的话,我们可一笑置之.但也确实不见很简单的事,不是随便就可以实现的.
    记得几年前某次我正在说一个CASE的执行方案,说到关于监听SSL通信的相关数据.有个新来的程序员很白目,大声的提醒我SSL是加密的,这不可能实现......我很怕跟这些照本念书型的技术人员打交道,因为老师告诉他们1就是1,书本上告诉他们2就是2.他们自己怎么也不会去想"为什么不可能是3?"

    对于一个信息安全工作者,看待任何事物,都应该是"有罪论".这不是先入为主的思想.而是事物的本质.同样,GSM通信网络体系也是这样.暂且把那些资深专家的话和常规理论丢一边去.为了详细分析如何实现,我们先来学习些基本的知识.


(如果图片无法看全,可以在新窗口中打开图片,查看大图)

    这是一个简单的GSM通信网络系统结构方框图.我们暂且把他分为五个部分:MS、BSC、NSS、OSS、PSTN.下面来介绍和本文有关的几个部分.
MS:移动台(手机)
BSS:基站子系统模块
BTS:基站收发台
BSC:基站控制器
NSS:网络子系统模块
OMC:操作维护中心
MSC:移动交换中心
VLR:漫游用户位置储存器(后面会做详细介绍)
HLR:本地用户位置储存器(后面会做详细介绍)
AUC:鉴权中心(后面会做详细介绍)
EIR:设备标志储存器(后面会做详细介绍)
OSS:操作支持系统(也叫运营支撑系统) 和本文关系不大,就不做详细介绍了.主要为网络管理维护,计费和用户卡资料管理.当然如果你要做实地渗透,关系就大了.
PSTN:公共交换电话网,我们所用的坐机就属于这个网络.这基本是现今最大的网络,也是其他一些网络的基础.
    我们基本已对GSM网络有了个基本的了解.对于要进行空中线路侧劫持,我们还得对另外一个重要部分进行了解.那就是移动用户识别卡,也就是我们所说的SIM卡、手机卡.SIM卡里储存有四类数据,第一类是固定数据:国际移动用户识别号(IMSI)、鉴权密钥(KI)、鉴权和加密算法.第二类是暂存的网络数据:位置区域识别码(LAI)、移动用户暂时识别码(TMSI)、禁止接入的公共电话网代码.第三类是业务代码:个人识别码(PIN)、解锁码(PUK)、计费费率.和我们要进行的分析有关的重点是第一类和第二类数据.
    做完前面的介绍,我们现在开始进行GSM空中线路侧劫持实现分析.首先我们来看一下GSM的通信流程和详细的呼叫流程、信令流程.


(如果图片无法看全,可以在新窗口中打开图片,查看大图)

    这是一个(MS)手机呼叫(MS)手机请求建立通信的信令基本流程.整个过程从MS向BTS请求信道开始.首先MS将在随机接入信道(RACH)向BSS发送信道请求消息,以便申请一个专用信道(SDCCH),BSC为其分配相应的信道成功后,在接入允许信道(AGCH)中通过立即分配消息通知MS为其分配的专用信道,随后MS将在为其分配的SDCCH上发送一个层三消息---CM业务请求消息,在该消息中CM业务类型为移动发起呼叫,该消息被BSS透明的传送至MSC,MSC收到CM业务请求消息后,通过处理接入请求消息通知VLR处理此次MS的接入业务请求,(同时,由于在BSC和MSC之间用到了SCCP有连接服务,为建立SCCP连接,MSC还将向BSC回连接确认消息),收到业务接入请求后,VLR将首先查看在数据库中该MS是否有鉴权三参组,如果有,将直接向MSC下发鉴权命令,否则,向相应的HLR/AUC请求鉴权参数,从HLR/AUC得到三参组,然后再向MSC下发鉴权命令。MSC收到VLR发送的鉴权命令后,通过BSS向MS下发鉴权请求,在该命令中含有鉴权参数,MS收到鉴权请求后,利用SIM卡中的IMSI和鉴权算法,得出鉴权结果,通过鉴权响应消息送达MSC,MSC将鉴权结果回送VLR,由VLR 核对MS上报的鉴权结果和从HLR取得的鉴权参数中的结果,如果二者不一致,拒绝此次接入请求,此次呼叫失败;如果二者一致则鉴权通过,鉴权通过后,VLR将首先向MSC下发加密命令,然后通知MSC该MS此次接入请求已获通过,MSC通过BSS通知MS业务请求获得通过,然后MSC向MS下发加密命令,该命令内含加密模式,MS收到此命令并完成加密后,回送加密完成消息,到此MS完成了 整个接入阶段的工作。
可以看出,如果我们要进行空中线路侧劫持,劫持者是处于MS和BTS之间的位置.聪明的朋友肯定可以想到我前面提过的SSL监听.是的,在SSL监听中我们是用(MIM)中间人攻击方式实现.同样,在这里也可以.GSM协议中最大的问题是单向鉴定.也就是基站要求鉴定手机,而手机根本不鉴定基站.通俗点说,手机是个有奶便是娘的孩子,只要一喂奶它就伸嘴咪奶喊娘.对于手机,劫持者冒充基站.对于基站,劫持者冒充手机.在转换中间,我们可以干任何我们想干的事.看到这里,有的朋友要说我明白了.其实不然,没那么简单.还有些问题我们没有考虑进去.
    我们再回过头来看完成接入阶段工作完成后的语音通信工作.当主叫手机拨打需要呼叫MSISDN号码,也就是被叫手机号码,或者是被叫手机呼入.在手机与基站的通信过程中,除了主叫过程中出现的被叫MSISDN号码以外.主叫手机是不发送本机的MSISDN号码的.被叫过程中,基站也不会向被叫手机发送被叫手机的MSISDN号码的.这一切都会被我们前面介绍到的SIM卡中的IMSI(国际移动用户识别码)所替代.也就是说,如果劫持者需要劫持某部指定号码的手机,是不可能的.你根本不知道所需要监听的手机是哪部?谁都不认识谁.MSISDN和IMSI的对应关系储存在HLR,只有它知道.劫持者要搞定这个问题,只有两个办法,一个是入侵MSC,向HLR查询其号码对应关系.另一个是事先去拿到被监听者的SIM卡,提取其中的IMSI,但这个提取过程,因为SIM卡芯片的安全算法保护,一般破解时间平均需要2到7个小时.当然,如果你有超级计算资源,这个时间可以再快点.
    下面是详细的鉴权过程图,可以清楚的看到我上面所说


(如果图片无法看全,可以在新窗口中打开图片,查看大图)

    头疼了吧.实际应用中肯定有困难的地方.但实际应用中也有对劫持者来说,好的一面.我们知道GSM协议通信中制定了加密体系的.但可笑的是,移动公司在绝大部分地区,根本没开加密模块.如果不是GSM采用了跳频技术,通信不是一直保持在一个频率上,我们用台频谱分析分析仪就可以监听了.虽然不是这种最理想的情况,也使劫持者在做中间人方式的空中线路侧劫持时,省了很多麻烦.
    最后还要说个坏情况.在有些情况下,手机与基站之间的通信,如呼叫,被叫,位置更新时.甚至IMSI都不会发送.只是用一个称做TMSI(临时识别码)代替.这个TMSI是由VRL分配,TMSI与IMSI的对应关系只有它知道.
    最终结论:GSM空中线路侧劫持是完全可以实现的.有一定的无线电基础,GSM协议知识,加上些并不昂贵的设备就可以实现.但要实际情况应用起来,还是有诸多困难.GSM空中线路侧劫持除了可以用来监听外,还可以用来大规模的IMSI盗取,甚至盗打电话或对被劫持者的跟踪。


非常感谢,红客的作者:源地址http://www.2cto.com/Article/201303/193916.html


HackRF One—GSM嗅探 虽然现在已经开始普及4G、5G,但GSM嗅探仍然是学习路上的基础,在安装和使用gr-gsm中也可能会遇到各种问题,在此对其进行总结。 python3 ./grgsm_scanner 阅读详情

相关推荐

软件无线电安全之HackRF One初探

在这一小节中,我们初步了解了HackRF的接收和发送信号的功能。并通过指定操作进行了接收和发送,并以GPS欺骗实验为例,对HackRF One的信号发送有了一定程序的理解。在后续的小节中,我们会以GNU Radio相关实验为例深入了解HackRF One的信号接收和发送能力。

蛇矛实验室 1万+

HackRF 入门 -- GPS欺骗、GSM嗅探

附:http://s1nh.org/post/hackrf-quick-start/HackRF 入门 -- GPS欺骗、GSM嗅探 发表于 2017-03-17 |  分类于 信息安全 |  2上一节已经对HackRF升级了最新的固件,今天我们利用它做一些简单的实验。因为本人也是小白,所以本文并没有任何复杂的理论知识,只要会用Linux按照顺序一步一步操作都可以实验成功。0x01 GPS欺骗第一...

小白来搬家 2万+

第四周工作总结——Matlab生成iBeacon信号

1. 总述 上周工作zho

qiank10的专栏 3359

伪基站识别技巧(一)

不知道为什么,感觉伪基站又有些卷土重来的趋势,不想废话,先分享几个伪基站识别技巧,供拍砖交流。 0×01 了解伪基站 前几年协助某些部门做过伪基站的电子取证分析,在对批量伪基站设备和软件平台的分析时,发现虽然大多数伪基站使用者,在设置参数前都会先对周边基站的开放频点、MNC、LAC、CI等信息进行扫描,但有些选项却有趣地带有明显的掩耳盗铃风格,比如这个基...

weixin_34314962的博客 558

第八周工作总结——基于Gnuradio实现ibeacon接收机

1. 总述 该项目的最后一部分工作是

qiank10的专栏 5172

永不消逝的电波 -GSM空口信号的接收与解码

一开始接触软件无线电应该是从很早之前对RFID洗衣卡的解密开始的,后来接触人员定位,慢慢的打开了这样一扇大门。。。。 翻到之前做的GSM信号的接收解码,今天就对其过程做一个记录,也不是什么新颖的内容,权当是记录和回忆了。 对于GSM网络的相关内容,不是非常的熟悉,如有不正确的,欢迎批评指正。

Jack.Xu 专栏 1万+

使用HackRF在windows和linux下扫描GSM频道的程序,识别GMSK信号

使用HackRF板子在windows和linux下扫描GSM频道的程序,识别GMSK信号。程序是在控制台运行的。 使用Visual Studio 2010开发了一个在windows下扫描GSM频道的程序和识别GMSK程序。 开发环境是:Visual Studio 2010 开发语言是: C++

HackRF FM 发射机编写

用了GNURADIO FM发射之后,一直以来想写个HackRF Windows下的发射机程序,但是苦于对IQ调制的理解一直没有动手, 前端时间在github网站上看到了一份关于HACKRF FM的源码(https://github.com/hateonion/hackrfMultiTransfer),于是调试了了发现不能运行,所以重新燃起了我写这个程序的希望。 原作者的源码是基于Footbal

只用自己的方式呈现精彩 7576

hackRF+香蕉派+linux系统开发信号数据采集样例

提供了香蕉派linux系统下,hackRF的开发工程样例,包括hackRF的配置控制方法,数据采集收发,工程为QT工程。可以作为一个开发demo,通过学习这个demo可以很快的掌握香蕉派linux系统下,hackRF的开发方法

静默短信接收者功能

静默短信 接收者 拦截短信 SharedPreferences 配合另一个GPS服务类使用。

Portapack应用开发教程(十) 猎狐功能和RSSI数值显示

视频参见:https://www.bilibili.com/video/BV1Y541147Sv 可以看到当我在analog audio的app里,在nfm模式下,我可以点击RSSI按钮,这时候发出的声音会变为根据信号强弱而计算出的音调,这种音调是符合无线电测向运动的。只要在天线口装一个定向天线就可以用这种方式做无线电测向了。 猎狐代码其实本身就已经隐藏在nfm解调里了,我只是把那些注释掉的代码重新加了回来。真正我自己加的是RSSI数值显示功能。 因为有时候光靠声音辨别不够准确,我自己增加了一个RSS

老邵的开源世界 1300

hackrf-tools for windows

使用vs2013编译的hackrf-tools工具,可在windows下刷hackrf

GSM劫持+短信嗅探是什么,如何防范指南

一夜醒来,放在枕边的手机收到几十条银行短信。银行卡,支付宝里的钱全部被人转走,甚至还替你借了网商贷,不单止辛苦多年的积蓄全都没有了,还欠了银行一屁股债,这不是小说里的情节,最近这样的手机盗刷案件在国内频繁发生… 下一个没准就是你 本文篇幅有点长,但如果你不想辛苦打拼几十年的财产被人一夜盗走,请耐心看下去,并按文章末尾推荐的方式赶紧做好手机和资金账户的防范措施! 近日里,微博一位...

梦想小筑 1万+

HackRF+One+使用手册.pdf

HackRF+One+使用手册 HackRF+One+签 软件无线电 HackRF One是一个完全开源的软件无线电硬件,频率从10MHZ到6GHZ范围,采样带宽最大20MHZ,8BIT采样,USB 2.0通讯。 下图介绍HackRF One硬件构造:

Windows 11 上 WSL2 安装 Ubuntu 22.04 保姆级教程(含桌面环境配置)

本文提供在Windows 11上通过WSL2安装Ubuntu 22.04并配置桌面环境的详细教程。涵盖WSL2核心安装、性能调优、Xfce桌面环境部署以及开发环境集成,帮助开发者构建高效、无缝的Windows-Linux混合开发工作站。

Jerry的专栏 634

GSM劫持+短信嗅探 “半夜盗刷”

【PConline资讯】“一觉醒来,手机里多了上百条验证码,而账户被刷光还背上了贷款”——近期犯罪分子利用“GSM劫持+短信嗅探”的方式盗刷网友账户的事件成为网络热点。那么,该如何防范这种短信嗅探犯罪呢?安全专家指出,最简单的一招就是睡觉前关机,手机关机后就没有了信号,短信嗅探设备就无法获取到你的手机号。 在主流App中,许多账户登录及资金操作都可以通过手机号码加短信验证码的方式实现,对于用...

0729Liang 5765

uniapp 基于单选框多选框实现上拉触底多选/单选、回显

showPickerCheckbox弹层显示 label和value 类似下拉框的label和value一个意思 键和值。结果:可以传接口(接口只能post请求) 可以搜索 下面是结果图片展示 单选多选都可以。fieldValue回显传的值 传的是字符串 数组的话[1,2]转为1,2格式传入。mode是控制的单选还是多选 true为多选默认值 其余参数 单选多选一样。fieldName字段名 确定后会返回该字段名 根据字段名找对应的传入值。问题:在uniapp上 实现分页多选的操作。下面是组件的完整代码。

2301_76607997的博客 2936

HackRF 代码讲解 (一)

HackRF是比较早期的一款SDR设备,凭借其相对低廉的价格加上半双工收发能力,在国内的SDR市场中占比很高。这款设备的优点是软硬件全部开源,加上芯片也比较常见,因此出现了不少国产版本,降低了使用门槛。虽然,目前出现了各种各样性能更高的SDR设备,如LimeSDR、BladeRF、FreeSRP等,但是这些设备的结构和工作原理都与HackRF类似,板子上一般都带有射频芯片(HackRF分为变频芯片

老邵的开源世界 2万+

深入解析Unity3D中PostLateUpdate突然占用大量时间的原因

在Unity3D的生命周期中,是一个在LateUpdate之后被调用的方法。它通常用于处理一些需要在所有更新(包括物理更新和动画更新)之后进行的逻辑。由于它在游戏循环的后期阶段被调用,因此它通常用于处理与渲染直接相关的任务,如相机调整、UI更新等。突然占用大量时间的问题可能由多种原因引起,包括复杂的逻辑处理、频繁的资源加载、不恰当的渲染优化、插件或第三方库的副作用以及内存泄漏或垃圾回收等。为了解决这个问题,开发者需要仔细审查和优化中的代码,同时利用Unity提供的工具来监控和分析游戏性能。

Yori_22的博客 981

西门子S7-1200PLC与FANUC机器人进行PROFINET IO通信的具体方法和步骤详解

西门子S7-1200PLC与FANUC机器人进行PROFINET IO通信的具体方法和步骤详解

Robot_PLC_HMI_Automation 1万+
上一篇: warning C4819: 该文件包含不能在当前代码页(936)中表示的字符。请将该文件保存为 Unicode 格式以防止
newbix
博客等级 码龄15年 5粉丝 4原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值