控安轩辕实验室:利用开源项目实现定位和时间欺骗(二)

GPS-SDR-SIM 项目是麻省理工学院许可下发布的开源 GPS 基带信 生成器项目。本期继续介绍该项目如何实现,想看上期请点链接https://mp.weixin.qq.com/sbiz=MzI1MTkwODMxMQ==&mid=2247484756&idx=1&sn=ea2bfabf83f4dd26f12d5f068aac0e22&chksm=e9ea9cecde9d15fa57e1b2cd56933c91ecc6b037c0ec7f8693659a876071f12353e6831a6deb&token=2100120012&lang=zh_CN#rd)。

一、下载编译gps-sdr-sim

该项目以RINEX格式的GPS星历档案和想要定位的位置为输入,生成全球定位系统基带信 ,供软件无线电平台回放。生成样本的默认最大持续时间为三分钟。可以通过以下命令在linux系统上获取GPS-SDR-SIM的代码并编译:

可以查看GPS-SDR-SIM命令的具体用法

二、软件无线电平台

为了将信 传输到真实的环境中,我们需要软件定义的无线电平台,如**HackRF、BladeRF、USRP**。**HackRF**是一个使用USB 2.0接口的开源SDR平台,工作在10MHz到6GHz的频段,最大支持20Msps采样速率,但只有半双工。它提供了从主机驱动到ARM固件甚至硬件方案、PCB布局和BOM的每一个设计细节。**BladeRF**采用USB 3.0接口,工作在300MHz至3.8GHz频段,支持独立的RX/TX 12位40MSPS正交采样和全双工。BladeRF似乎比HackRF具有更好的射频性能,因为它使用一个集成的射频芯片来支持300兆赫兹到3.8兆赫兹的所有工作射频频率范围。HackRF使用印刷电路板上的一些射频开关和射频转换器将2.3千兆赫兹和2.7千兆赫兹之间的窄工作频率扩展到10兆赫兹和6千兆赫兹,这带来了相当大的射频功率损耗。但根据我们的实验,HackRF和BladeRF发射的GPS信 都可以被常规GPS接收机解码。在这里我们使用HackRF来实现。

可以通过以上代码来生成2014年12月20日静态位置的GPS基带信 样本。这里需要指定星历文件(可自行更新至最新的星历数据),设置经纬度,必须指定采样精度为8否则用hackRF one欺骗成功率不高。在这里需要注意的是,参考的文章都没有添加-d参数,实验的过程中发现没有这个参数生成的仿真文件为空,所以我在这里使用-d 100生成了一个100s的gps信 文件(约500M)。

另外如果有其他目的也可以伪造一个动态的GPS数据样本,例如欺骗计步器,轨迹等

三、HackRF发射GPS数据

基带信 样本产生后,我们可以通过软件无线电平台的天线进行传输。我们可以使用下面的命令行使用HackRF以1575.42兆赫兹重复传输样本。

指定GPS数据,指定频率为民用GPS L1波段频率,指定采样速率2.6Msps,开启天线增益,指定TX VGA(IF)为0(为了限制影响范围,最大为47慎用),最后开启重复发射数据功能。其中:

? -t 文件名,从文件传输数据。

? -f 频率赫兹,频率赫兹。

? -s 采样速率,采样速率单位为赫兹。

? -a 放大器使能,接收/发射射频放大器 1 =使能,0 =禁用。

? -x 增益分贝,TX VGA(中频)增益,0-47分贝,1dB步长。

? -R 重复发射模式。

“-R”参数非常方便,因为“gpssdr-sim”只产生三分钟的样本,而GPS接收器可能在三分钟内不能完成第一次GPS捕获过程。

四、实验结果

手机终端40秒左右就可以被欺骗成功,如果不成功可以考虑将-x 0改为-x 10或20,或者重新生成基带信 文件试试。

Item Value
Hardware HackRF one
Test device iPhone 7plus
Test network China Mobile
LTE, China Unicom LTE
Real localtime Africa
(31.603202IN, 120.466576E)

该结果表明手机对GPS信 的依赖程度很高,手机内的应用更是如此。

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2020年11月27日
下一篇 2020年11月27日

相关推荐