当前位置: 首页 > news >正文

伪造GPS信号多种方式尝试-HackRF

请在法律允许范围内复现本文内容, 复现后果作者不予承担

  • 参考

    • 车联网安全之GPS欺骗 - FreeBuf网络安全行业门户

硬件平台

  • HackRFOne, 外部TCXO时钟模块, 40MHz-6GHz 拉杆天线

静态模拟

  • 使用项目

    • gps-sdr-sim-GPS信号仿真器

Clone 项目, 然后编译

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

HackRFOne 配置

  • HackRFOne 安装好外部TCXO时钟模块

    • 判断是否安装正确

      • hackrf_debug --si5351c -n 0 -r 
        
      • 如果输出 [ 0] -> 0x01

使用 gps-sdr-sim 生成二进制GPS数据

  • ./gps-sdr-sim -e [GPS 星历文件] -l [坐标] -b [二进制数据类型] -o [输出文件, 默认为gpssim.bin]
    
    • -e GPS星历文件路径

      • 可以直接使用项目自带的星历, 也可以最新的广播星历
    • -l 经纬度坐标

      • 纬度, 经度, 高度
    • -b 二进制数据类型

      • 使用 HackRF 的话就填写 8

      • 使用 bladeRF 的话, 就填写 16

  • 比如

    • gps-sdr-sim -e brdc1660.25n -l 39.91232019878092,116.3910017124552,46 -b 8 -o gpssim.bin
      
  • 然后就会生成一个 gpssim.bin 文件

使用 HackRFOne 发射 GPS 信号

  • hackrf_transfer -t [GPS信号文件, 即gpssim.bin] -f [中心频率] -s [采样率] -a [是否开启功放] -x [发射功率] -R
    
    • -t GPS信号文件

      • 使用之前生成的 gpssim.bin 文件
    • -f 中心频率, 单位 Hz

      • 指定频率为 1575420000 即民用GPS L1波段频率
    • -s 采样率, 单位 Hz, 4/8/10/12.5/16/20 MHz,默认 10 MHz

    • -a 设置功放 ( 1 表示开启, 0 表示关闭)

    • -x 指定发射功率, 开启天线增益

      • 指定TX VGA(IF)为0、10、20不等(为了限制影响范围, 最大为47, 尽量不要使用)
    • -R 重复发送模式(默认为关闭)

      • 不过值得注意的是, 虽然是重复发送, 但是只做不到连贯的, 结束一轮后会断开信号, 然后再重新发送
  • 比如

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

动态模拟

使用 Google Earth 绘制路径

注意

  • Google Earth Pro 查看国内地图会存在火星偏移,即卫星图与显示地名、街道信息不对应, 应该以卫星图为准

  • 绘制好路径后, 选择导出为 kml文件
    • 这个时候, 文件中只有路径每个点的信息

kml文件 转为 NMEA文件

  • 这里需要使用 SatGen, 把谷歌地图生成的 kml文件 导入进去, 然后再进行导出为 NMEA文件

    • 这个是官网下载的较新版本, 不过一次只能导出120s的路径

      • 这个版本可以不使用 Google Earth 直接在软件上面标记路径

        • 不过要注意的是, Google Earth 的坐标与国内的坐标有稍微偏差, 可以选择Bing地图
      • image.png

    • 这个版本的就没有限制, 但是速度快仿真出来似乎有点问题

      • image.png

修改 gps-sdr-sim-GPS 的修改动态模式时间上限并编译

  • gcc gpssim.c -lm -O3 -o gps-sdr-sim -DUSER_MOTION_SIZE=3600
    
    • USER_MOTION_SIZE 单位是 秒(s)

生成 GPS 信号模拟文件

  • gps-sdr-sim -e [星历文件] -g [NMEA文件] -b 8
    

使用 HackRF 发射伪造 GPS 信号

  • hackrf_transfer -t gpssim.bin -f 1575420000 -s 2600000 -a 1 -x 20 -R
    
    • 参数跟静态的是一样的

实时动态伪造

使用项目

  • gym487/gps-sdr-sim-realtime: Realtime gps-sdr-sim with TCP stream output that can connect to gnuradio or anything else…

搭建实时发射平台

  • 使用软件 GNURadio, 我这里使用的是3.10版本(或许你需要一点使用 GNURadio 的基础)

  • 如果使用低版本, 直接使用上述项目中的 tcp.grc 就可以了

  • 但是如果跟我一样使用较新的版本, 这需要把原本接收 IQ数据 的模块, 调换为新版的 TCP Source

    • 配置如图

      • image.png
  • 整体上看是这样的, 挺简单的

    • image.png

搭建实时获取位置平台

  • 在 gym487/gps-sdr-sim-realtime: Realtime gps-sdr-sim with TCP stream output that can connect to gnuradio or anything else… 中, 进入 mapper 文件夹

  • 首先安装 python 依赖

    • pip install web.py
      
  • 然后启动地图服务

    • python mapper.py
      
    • image.png

  • 然后就可以点击地图改变位置, 具体操作逻辑, 自己尝试一下就懂了

  • 然后点击 Start

    • 地图服务就会向 127.0.0.1:5678 发送坐标信息, 就是 Start 上的信息

搭建 GPS-SDR-SIM

  • 上面我们只是搭建了发射信号和获取位置的平台, 但是位置要转为发射的IQ数据, 这就需要 GPS-SDR-SIM

  • 先编译 GPS-SDR-SIM

    • gcc gpssim.c -lm -O3 -o gps-sdr-sim -DUSER_MOTION_SIZE=3600
      
      • 同样需要修改 USER_MOTION_SIZE, 来增长模拟时间
  • 然后就是启动 GPS-SDR-SIM

    • ./gps-sdr-sim -e brdc1660.25n -w 5678 -n 1234
      
      • -e 对应着 星历

      • -w 对应着 搭建实时获取位置平台 发送数据的端口

      • -n 对应着 GNURadio 监听IQ数据的端口


  • 完事具备, 把三个服务都启动了, 就可以实时伪造GPS信号了, 不过欺骗还是需要等待 30s 左右, 而且延迟有 2-3s

如果出现超链接无法正确跳转或格式错误, 请前往原文链接查看

相关文章:

  • 《MyBatis-Day02》
  • 将项目推到Github
  • 吉林大学软件工程章节测试答案-第八章
  • 《挑战你的控制力!开源项目小游戏学习“保持平衡”开发解析:用HTML+JS+CSS实现物理平衡挑战》​
  • 一篇文章快速学会CSS
  • Linux之线程概念与控制
  • 企业宣传PPT模版分享
  • 解决: React Native android webview 空白页
  • Docker基础理论与阿里云Linux服务器安装指南
  • 双因子认证如何让Windows系统登录更安全?SLA操作系统双因素认证解决方案深度解析
  • 裸金属服务器深度评测:云计算时代的性能与安全担当​​​​
  • 01、python实现matlab的插值算法,以及验证
  • 云原生安全
  • 操作系统期末复习--操作系统初识以及进程与线程
  • ios如何把H5网页变成主屏幕webapp应用
  • 算法导论第十四章 B树与B+树:海量数据的守护者
  • 日语学习-日语知识点小记-构建基础-JLPT-N4阶段(36):复习
  • Spring Boot(九十二):Spring Boot实现连接不上数据库就重启服务
  • 【MacOS】M3 Pro芯片MacBook极速搭建Kubernetes
  • 第21篇:数据库中间件的状态同步、事件驱动与一致性协议实践
  • 动态网站开发工程师证/今天热点新闻事件
  • 企业网站策划建设方案百度/持续优化完善防控措施
  • 品牌建设促进会/有名的seo外包公司
  • 网站建设营销的企业/西安网络推广
  • 中国网通做网站/一个产品的市场营销策划方案
  • php动态网站设计/免费b2b推广网站大全