超简单的GPS欺骗by Hackrf

超简单的GPS欺骗…

内容纲要

超简单的GPS欺骗by Hackrf

filefile

1. 前置条件

  1. Hackrf硬件及Hackrf_transfer
  2. GPS-SDR-SIM
  3. 用来伪造的GPS数据

2. 简单几条命令

首先Hackrf相关的环境折腾在此不表。

2.1. GPS-SDR-SIM

GPS-SDR-SIM用于生成GPS基带数据流,可用于bladeRF, HackRF, and USRP等SDR平台。 下载并编译GPS-SDR-SIM

git clone https://github.com/osqzss/gps-sdr-sim
cd gps-sdr-sim
gcc gpssim.c -lm -O3 -o gps-sdr-sim

2.2. GPS数据

去NASA找,NASA有公开的GPS数据

https://cddis.nasa.gov/archive/gnss/data/daily/2021/165/21n/

down下来形如brdc1650.21n.gz(命名格式参见Broadcast ephemeris data

这种以n结尾的压缩包,里面就是我们需要用到的GPS星历数据。

2.3. 冲

星历数据是RINEX(Receiver Independent Exchange Format)的2.0格式。 GPS-SDR-SIM通过星历数据生成采样数据。-T选项可以指定时间。 选择高德地图上钓鱼岛的坐标,四舍五入到小数点后6位,随便加上一个海拔,放在location参数名后面,持续时间和文件大小有关,默认300秒,把它改成200秒,占1GB空间。HackRF的数据位宽是8位,所以iq_bits设成8。

./gps-sdr-sim -e brdc1650.21n.gz -l 25.771450,123.528900,100 -b 8 -d 200

生成的gpssim.bin的采样频率为2.6MHz,使用hackrf_transfer设定的采样频率也要与之对应。-x代表TX VGA增益,先设为0db,如果搜不到再加,最大47db。下面是民用的频段,这里我们使用L1的频段。

  • L1 1575.42MHz
  • L2 1227.60MHz
  • L3 1381.05MHz
  • L4 1841.40MHz
  • L5 1176.45MHz

使用hackrf_transfer发射无线电信号,开启增益并设成最大,循环发射。

hackrf_transfer -t gpssim.bin -f 1575420000 -s 2600000 -a 1 -x 47 -R

发射端Over

2.4. 看看效果

下了个GPS Test看了下效果,经纬度还是达到了效果的,起码到了钓鱼岛,但是貌似有微妙的一点点差距。

filefile

参考

嘉豪的GPS欺骗笔记

harmoc

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注