伪基站和空中信息拦截

背景:2010年12月,Security Research Labs实验室的KarstenNohl和OsmocomBB项目程序员SylvainMunaut在Chaos Communication Congress黑客大会上展示了通过普通手机作为网络“嗅探器”,使用普通电脑和开源软件OsmocomBB,成功拦截附近的GSM用户的通话和短信内容。

其实不管是gsm,3g、lte,都可以空口拦截。只不过gsm协议栈开源了,屌丝也可以玩了。

前期准备:

1.Moto C123:用于网络嗅探的普通手机,并替换Rx和Tx滤波器(网购http://shop.sysmocom.de/)

2.OsmocomBB:GSMLayer1到Layer3协议栈,开源软件,http://bb.osmocom.org/trac/

3.固件:基带芯片驱动相关固件,OsmocomBB提供,http://bb.osmocom.org/trac/wiki/firmware

以下省略1000字。。。。

鉴权演进过程:

鉴权原理:

1、GSM篇

在GSM网络中,SIM卡和网络侧配合完成用户鉴权,以此防止未经授权的接入,保护运营商和合法用户双方的利益。GSM鉴权过程主要涉及AUC、HLR、MSC/VLR、MS和SIM卡。

每个用户在GSM网中注册登记时,被分配给一个客户电话号码(MSISDN,就是通常的手机号)和客户身份识别码(IMSI)。IMSI通过SIM写卡机写入客户的SIM卡中,同时在写卡机中又产生了一个对应此IMSI的唯一客户鉴权密钥Ki,它被分别存储在客户的SIM卡和网络侧AUC中。在AUC中还有个伪随机码发生器,用于产生一个伪随机数RAND。在GSM规范中还定义了A3、A8和A5算法,分别用于鉴权和加密过程。

GSM网络侧和SIM卡上存储相同的用户密钥Ki,用户开机准备接入网络,移动终端发送IMSI(IMSI是GSM系统分配给移动用户的唯一的识别号)给MSC/VLR,VLR将首先查看在数据库中该MS是否有鉴权三参组,如果有,将直接向MSC下发鉴权命令,否则,向相应的HLR/AUC请求鉴权参数,从HLR/AUC得到三参组,其中包括RAND,然后再向MSC下发鉴权命令。MSC收到VLR发送的鉴权命令后,通过BSS向MS下发鉴权请求,MS收到鉴权请求后,利用SIM卡通过A3/A8算法计算出SRES和加密密钥Kc,通过鉴权响应消息送达MSC,MSC将鉴权结果回送VLR,由VLR核对MS上报的鉴权结果和从HLR取得的鉴权参数中的结果,如果二者不一致,拒绝此次接入请求。

鉴权流程如图所示,使用A3算出应该返回的鉴权数据,使用A8算出加密密钥,用于空中接口的信息加密。

.

也可以看这个图:

GSM已经采取了一些安全措施,但依然存在一些问题,主要体现在以下方面。

(1)单向鉴权

只能网络对卡鉴权,卡无法鉴权网络。不能对抗主动攻击(如伪基站攻击),非法设备(如基站)可以伪装成合法的网络设备,欺骗用户,窃取用户信息。

(2)加密

GSM系统中的加密不是端到端的,只是在无线信道部分即MS和BTS之间进行加密,这给攻击者提供了机会。

在GSM系统中,加密算法是固定不变的,没有更多的密钥算法可供选择,缺乏算法协商和密钥协商的过程。

在移动通信中,终端和网络间的大多数信令信息是非常敏感的,需要得到完整性保护。而在GSM网络中,没有考虑数据完整性保护的问题,如果数据在传输的过程中被篡改也难以发现。

2、3G篇

与GSM鉴权相比,3G鉴权不但有网络鉴权用户的功能,还增加了用户鉴权网络的功能和完整性保护功能。另外,3G鉴权还增加了密钥的长度,使用更加强壮的加密算法和完整性算法。

AKA(Authentication and Key Agreement,认证和密钥协商协议)是3G系统中用来实现用户终端与网络端的鉴权机制,流程如图所示。

这个图就不详细描述了,主要是就是实现了双向鉴权,解决伪基站。

3、结论

gsm由于单项鉴权,所以有伪基站的问题,3G及以后网络是双向鉴权,可以解决。

4、空中拦截的问题。。。

不管是2G、3G、LTE网络设计时都设计了空中加密,但都没有开启。由于各方面原因吧。

如果不开启,理论上无论哪种网络都可以被拦截,不是GSM特定问题。

解决思路:

1、运营商开启空口加密

2、业务提供商https

3、短信或者语音实现端对端加密或者业务短信实现客户端到平台加密。

时间: 2024-10-31 22:28:58

伪基站和空中信息拦截的相关文章

机房测试11:信息拦截 (tarjan缩点+正反拓扑)

题目: 分析: 这道题真的毒瘤,思想很简单,但是细节很多.. 题意:找到从1~n的必经点(每条信息都能获取),且不在一个点数>=2 的强连通分量中(恰好获取一次). 先将有向图缩点,转换成一张有向无环图. 然后对缩点后的图进行正反拓扑,求出必经点. 再看必经点是否在一个点数>=2的强联通分量中. 正反拓扑过程: fs[u]表示从起点到u的路径条数,ft[u]表示从终点到u的路径条数 由乘法原理可知,若一个点满足:fs[u]*ft[u]==fs[t] 这个点是必经点. 细节: 1. 对于存在自环

Charles拦截请求

一.通过Charles抓包,可拦截请求并篡改交互信息 1.可篡改客户端向服务器发起的请求信息(服务器收到的是假消息) 2.可篡改服务器返回给客户端的响应结果(客户端看到的是假消息) 二.篡改用户请求 1.在浏览器中输入请求,在Charles中会生成一个目录,选择最后一个节点,右键->Breakpoints 2.在浏览器中刷新该页面,Charles会跳转到Breakpoints列表 3.篡改请求信息后,点击底部Execute按钮 4.返回浏览器查看服务器返回结果,返回的页面信息为7545798.h

Android中Xposed框架篇---修改系统位置信息实现自身隐藏功能

一.前言 前文已经介绍了Xposed框架的基本使用规则,本文主要来介绍一个实际案例就是如何通过这个框架来修改系统的地理位置信息来实现隐藏功能,在如今社交工具的发展特别是微信,他有一个实时位置共享功能,那么对于那些不是单身狗的同学来说可能会有些蛋疼,哪天媳妇要查岗发送位置,结果你不在她期望的位置这时候就尴尬了,而且朋友圈在分享内容的时候可以选择当前位置,有的屌丝就像我一样没钱但是又想到处旅游,那么这时候咋们就可以一本正经的装个逼了. 二.定位原理 看到上面说的那么多,感觉这个功能必须要搞起来了,好

WebApi 消息拦截

最近公司要求对WebApi 实现服务端信息的监控(服务端信息拦截),由于本人之前没有做过这方便的相关项目所以在做的过程中也是困难重重,探索的过程也是非常痛苦的,好歹最终也算实现了这个功能.所以将这个分享出来供大家相互学习. 要实现webapi的信息拦截其实相对于wcf 和webservice ,我个人觉得算是最简单的一个,本人对这几个服务也不是非常的熟悉,个人技术也有限,所以有不对的地方大家可以提意见,但是千万别喷哈 首先创建一个类:MsgRecordFilterAttribute 该类继承Ac

ASP.NET MVC 异常Exception拦截器Fillter

异常信息的处理在程序中非常重要, 在asp.net mvc中提供异常属性拦截器进行对异常信息的处理,异常拦截器也没有什么的,只是写一个类,继承另一个类(System.Web.Mvc.FilterAttribute)和一个接口(System.Web.Mvc.IExceptionFilter),实现接口里面OnException方法. 代码实例: 异常拦截器类: 1 using System; 2 using System.Collections.Generic; 3 using System.Li

springboot 过滤器、拦截器、消息转换器、切片执行顺序 及区别

request 请求 -->1:过滤器 doFilter2:拦截器 preHandle3:消息转换器 readInternal4:AOP before5:Controller6:Response7:AOP after8:消息转换器 writeInternal9:拦截器 postHandle 过滤器:可以拿到原始的Http请求和响应的信息,只能获得其请求和响应携带的参数,但是却拿不到真正处理请求的控制器和方法的信息拦截器: 可以拿到原始Http请求和响应的信息 也可拿到请求的方法的信息切片 :可拿

2015移动安全病毒年报

第一章   2015年病毒和仿冒应用发展分析 在移动互联网高速发展的今天,移动设备给人们的生活带来的诸多便利与变革,但也时刻面临着不同程度的安全风险,其中病毒木马是最为普遍且有效的攻击方式之一.不同于以往PC时代攻击场景相对独立的情况,移动设备作为人们与外界进行绝大部分信息交流的重要工具,同时也提供了更多被黑客利用的机会.另一方面,随着移动支付的普及,以及移动设备承载了几乎所有的隐私信息,使得移动设备成为黑客实施以经济利益为目的理想的攻击对象. 根据阿里移动安全的分析统计,2015年移动恶意代码

[转]Spring MVC 教程,快速入门,深入分析

.前言二.spring mvc 核心类与接口三.spring mvc 核心流程图 四.spring mvc DispatcherServlet说明 五.spring mvc 父子上下文的说明 六.springMVC-mvc.xml 配置文件片段讲解 七.spring mvc 如何访问到静态的文件,如jpg,js,css 八.spring mvc 请求如何映射到具体的Action中的方法 九. spring mvc 中的拦截器:十. spring mvc 如何使用拦截器 十一. spring mv

Spring MVC 教程,快速入门,深入分析

资源下载: Spring_MVC_教程_快速入门_深入分析V1.1.pdf SpringMVC核心配置文件示例.rar 作者:赵磊 博客:http://elf8848.iteye.com 目录  一.前言二.spring mvc 核心类与接口三.spring mvc 核心流程图 四.spring mvc DispatcherServlet说明 五.spring mvc 父子上下文的说明 六.springMVC-mvc.xml 配置文件片段讲解 七.spring mvc 如何访问到静态的文件,如j