微信号:e769179090

介绍:关注与分享、交流手机、计算机等介质数据提取、解析、恢复技术,搭建行业交流平台.

【2016-5-17】谈谈伪基站架构及取证分析

2016-05-17 06:40 e证据

来源:七安全(ID:qi_anquan)


01

what's 伪基站

伪基站即假基站,设备一般由主机和笔记本电脑组成,通过短信群发器、短信发信机等相关设备能够搜取以其为中心、一定半径范围内的手机卡信息,通过伪装成运营商的基站,冒用他人手机号码强行向用户手机发送诈骗、广告推销等短信息。--《百度百科》


02

有什么危害?

“伪基站”严重扰乱空中电波秩序,损害了广大公众无线电通信手机用户的切身利益,是一种新型的涉嫌违法犯罪。

(一)“伪基站”盗用公众无线电通信运营商的频率资源,其大功率发射对周边电磁环境造成强烈干扰。

(二)对于广大公众无线电通信用户而言,“伪基站”发送的大量垃圾短信让人不胜其烦,且一不小心很可能陷入一场骗局。

(三)“伪基站”强行使手机用户脱离网络,导致用户无法正常使用通信运营商提供的正常业务;被脱离网络的手机用户出现频繁的位置更新,造成大量的切换失败、掉话等问题,使得该区域的公众无线电通信网络资源紧张并出现拥塞现象,极大地影响用户的正常通讯业务,影响人们的工作和生活。

(四)“伪基站”绕开公众通信网,如果被别有用心的组织或个人利用,冒用公众服务号码或权威部门名义编造发送虚假信息,会造成难以估量的社会影响;如果不法分子利用“伪基站”传播谣言和发布煽动性的不实言论,将对国家安全造成严重威胁。


03

伪基站分析

从目前发现的伪基站来说,基本架构:发信软件+Openbts +Gnuradio+USRP+功放天线。设备大小已经由以前的不方便携带发展到现在一个背包尽可,且支持手机端远程控制,(见下图)


先从伪基站的组成来分析由底层到上层:usrp(射频设备)→【Gunradio→OpenBTS→发信应用(发信软件+数据库+apche)】,操作系统一般均为Ubuntu。


Usrp:USRP(Universal Software Radio Peripheral,通用软件无线电外设)旨在使普通计算机能像高带宽的软件无线电设备一样工作。从本质上讲,它充当了一个无线电通讯系统的数字基带和中频部分。

USRP由 USRP母板、连同各种子板以及相应的天线组成。一个典型的 USRP 产品系列包括两部分:一个带有高速信号处理的 FPGA 母板,和一个或者多个覆盖不同频率范围的可调换的子板。它们共同实现把比特流数据从天线传到主机电脑(即接收),或者从主机电脑传送到天线(即发送)。在各种子板中,USRP 系列涵盖从直流到 5.9GHz 的整个范围,这包括了从调幅广播到超过 Wi‐Fi 的所有频率。

伪基站会模拟运营商的频段进行信号调制,900MHZ频段和1800MHZ频段,功率高于一般小区基站的正常功率。


Gnuradio:

GNU Radio是一个完全开源的软件无线电结构平台,它可以用来设计和仿真,也可以用来连接真实的无线电系统。GNU Radio是一个高度模块化,采用流图类形式的软件架构平台,它本身提供了许多模块库,使用者可以很快速的使用这些模块来建立关于信号处理的流程, GNU Radio是一个信号处理块和开发者互动的发展框架。它有一个广泛的标准库的块,并且有很多系统可供开发人员参考。

Openbts:

OpenBTS是英语:Open Base Transceiver Station的缩写, OpenBTS[1]  取代了传统的GSM运营商的核心网络基础设施从第三层向上,而不是依靠外部无线电资源管理、基站控制器OpenBTS单位内部执行这个函数。代替转发呼叫业务通过运营商的移动交换中心,OpenBTS的提供经由呼叫SIP到VoIP软交换(例如FreeSWITCH或yate)或PBX(如Asterisk)。该VOIP交换机或PBX软件可以安装用于运行的OpenBTS本身相同的计算机,形成一个单一的计算机系统的一个独立的蜂窝网络。多OpenBTS单元也可以共享一个共同的VOIP或PBX形成更大的网络。

 通过工程手机获取到附近小区的频点,赋值给伪基站,模拟附近小区频点,通过增大基站功率和优化C2小区优选算法,使手机在扫描搜索周边基站信息时只考虑信号强度,迫使手机优先连接伪基站(GSM单向鉴权),断开原始正常基站,来推送短信

一般手机默认网络模式为2G/3G或者2G/3G/4G,如果收到伪基站短信骚扰,可以手工将手机调到仅3G或仅4G模式,

Openbts为伪基站取证的关键点之一;只要是Openbts的数据库文件和日志文件,统计受影响手机的IMSI和通过解码日志文件的短信内容。以目前的一个案例来大概说下取证的几个要点:

BTS配置路径: /etc/Openbts/

OpenBTS.db和TMSI.db

 OpenBTS.db: 可用sqlite3打开.文件主要是bts的配置文件,


TMSI.db:主要存放发送TMSI历史记录和短信服务的信息

同样可以使用SQLite3打开

其中包括三个表:TMSI_TABLESMS SMS_SENT

TMSI:临时移动用户识别码,它是IMSI的临时“代表”,出于IMSI的安全考虑,为尽量避免在空中接口传递IMSI,由VLR给用户分配的,TMSI在当前VLR中是唯一的。
当用户漫游至其它VLR时,当前VLR向前一VLR查询用户TMSI,查询成功后当前VLR完成对用户的鉴权,并重新给用户分配一个新的TMSI,前一VLR将用户的过期TMSI和用户信息删除;如果查询失败,则当前VLR向用户归属HLR查询用户IMSI,完成鉴权。

TMSI_TABLE受影响手机

SMS_SENT 发送次数

通过查看TMSI数量可以为统计受影响手机数作为参考

Openbts日志:

/var/log/Openbts.log

/var/log/syslog

Openbts相关的调试,从受影响手机接入,连接,短信发送。踢出手机等一些列操作信息

关键字【RPDU】【IMSI】【ADDSMS】【raw】

统计收短信手机数量:

Cat Openbts.log |grep id=IMSI= |wc –l 


Cat Openbts.log|grep ‘POWERON\|POWEROFF’

根据USRP的启停时间来判断发信的时间,还有其他更准确的方法来判断,此处仅举一例

短信内容:

短信编码分为RPDU和二进制直接解码

1. Cat Openbts.log|grep ‘addsms’


2. cat OpenBTS.log|grep -n 'raw=(.\{60,\})' >RPDU.TXT 将rpdu格式的短信内容输出解码

cat OpenBTS.log |grep -n 'raw=(.\{60,\})' |wc –l统计条目数

    http://www.multisilicon.com/blog/a22201774~/pdu.htm

Syslog*日志也会记录bts的相关信息,由于logrotate会覆盖掉以前的日志,但是内容有限且杂,就不说了。


发信软件:

目前市面上伪基站使用见到的包括:华为软件GSMS,2014迅驰版,华为应急通讯完美版,2014c2破解版,gsms等,基本架构为apache+mysql+php


发信软件信息主要是数据库和apche日志

许多发信软件的短信内容保存在mysql数据库,有时候会被清,有的会保留


如果还想获取到更多信息的请分析 mysql【/var/log/mysql】日志apache【/var/log/apache2】日志syslog*等日志

有必要的时候做个系统的数据恢复!!!可能会有意外的收获哟

04

如何防范?

伪基站并非防不住,细心的人都会从收到垃圾短信的号码、内容等判断,下面简单说下如何区分。

1、细看收到短信的号码是否可信。

2、细看短信内容中的网址是否真实。

3、收到短息不乱回复。

4、收到朋友借钱等信息,请先电话确认。

5、使用可信度较高垃圾短信屏蔽软件。

6、总之,收到短信请细看、请三思。


扩展阅读:

1、伪基站是什么?如何防范伪基站的诈骗短信?

http://mp.weixin.qq.com/s?__biz=MjM5NTA4ODI4MA==&mid=2651186745&idx=3&sn=07066cd13ffb7e4ab847f92cf3a8cc81&scene=0#wechat_redirect

2、手机短信诈骗是咋回事?北海首破“背包伪机站”案

http://mp.weixin.qq.com/s?__biz=MzA5MzQ1NjE5OQ==&mid=2650662393&idx=1&sn=a25f752123b203186f236e729a7642d1&scene=1&srcid=0516iW5cQAZ0IQashGo2WaeO#wechat_redirect

 
e证据 更多文章 如何设计像你大脑一样工作的欺诈侦测系统 碟中谍5中的科技:详解“步态分析” 手机转账凭证可以当做借据?太傻太天真 论加拿大《统一电子证据法》的立法价值 电子数据证据的采信规则
猜您喜欢 1 月份最受开发者欢迎的“头条” 《近匠》第09期:ShareSDK——专注社交分享工具 【深度】谷歌领跑AI创业公司收购,杰出工程师身价超千万美金 65行python代码多线程下载65集《乡村爱情故事8》 Effective Refactoring in C++ (2)