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

libpcap捕捉过滤wifi beacon包解析国标飞行器drone id报文

文章目录

  • 1、国标要求
    • 1.1、wifi beacon 帧定义
      • (1)wifi802.11 协议
      • (2) 国标
    • 1.2、运行识别报文格式
    • 1.4、哪些无人机实现了 Remote ID 上报?
  • 2、libpcap捕捉过滤wifi beacon包
    • 2.1、无线网卡开启混杂模式
    • 2.2、libpcap使用
  • 3、drone id 识别解析
    • 3.1、筛选出运行识别报文
    • 3.2、解析报文
    • 3.3、报文打印输出

1、国标要求

《 无人驾驶航空器飞行管理暂行条例》和 《 民用无人驾驶航空器系统安全要求》( GB42590-2023)已于2024年1月1日起实施,为了填补微轻小型无人驾驶航空器监视领域的空白,加强微轻小型无人驾驶航空器运行管理,明确微轻小型无人驾驶航空器运行识别功能性能要求,提升微型、轻型、小型无人驾驶航空器的可靠被监视能力,民航局空管办组织相关单位与2024年1月16日编制发布了【民用微轻小型无人驾驶航空器运行识别最低性能要求 ( 试行)】文件。

=== 》 按照指定格式,无人机使用 广播式( wifi 或者 蓝牙 ), 网络式(控制端 有线,无线,4g/5g) 其自身消息。

1.1、wifi beacon 帧定义

(1)wifi802.11 协议

正常wifi beacon包中,首先固定长度24字节的帧头;之后是Beacon数据,常规长度最多为212字节;最后是4字节FCS校验码。
在这里插入图片描述
头部定义如下截图
在这里插入图片描述

Beacon中的 Management主题部分根据 tag id 分别做解析。
在这里插入图片描述

(2) 国标

这里对于无人机的信息使用 Vendor Specific (id 为 221) 标签来表示。仅看 GB42590-2023 的的规定,OUI/CID、Vend Type取固定值 0xFA0BBC 和 0x0D
在这里插入图片描述
正常情况下, beacon 帧 主要包含 Element ID ,Len, OUI/CID 和 Vend Type, 之后是具体的消息内容。
国标中将表中的 Message Counter (1字节) 和 Message(3+Nx25 字节) 写出,原因见后面一节。

1.2、运行识别报文格式

《民用微轻小型无人驾驶航空器运行识别最低性能要求》固规定了无人机上报运行识别报文的格式。

目前主要定义了5中报文格式类型
在这里插入图片描述
每一种报文格式均为 25个字节, 1字节报头(类型+版本),24字节报文。
在这里插入图片描述
每一种报文的定义,可以具体查看国标文件【民用微轻小型无人驾驶航空器运行识别最低性能要求 ( 试行)】 。

这里仅说明打包报文(报文类型0x0F)的格式,国标要求:

运行识别报文应采用打包模式在一条打包报文 ( 0xF)中承载并发出多条不同类型的报文,从而提高发送效率,具体打包方式如下: 在这里插入图片描述
0x0F打包模式下,消息内容的总长度就不再是25字节。 而是 2 + N x 25 。

对上一节中beacon 帧 中 Message Counter (1字节) 和 Message(3+Nx25 字节)继续说明,先回顾wifi beacon的结构中
在这里插入图片描述
其中,Message Counter 不做解释; Message中的 25 可以确定是识别报文规定的固定长度, N是包含报文的个数。 其中的 3,有一点模糊,打包模式下是 2+Nx25, 缺少了一个字节。

通过实际测试,确定表7中的内容实际是报文的报文实际内容,缺少了1个字节的报文头数据。

1.4、哪些无人机实现了 Remote ID 上报?

在这里插入图片描述

2、libpcap捕捉过滤wifi beacon包

2.1、无线网卡开启混杂模式

首先说明使用 iwiwconfig 命令, , 若无则安安装 apt install wireless-tools

使用 iw list 可以查看网卡是否支持监听模式,如如这里的 wlan1 在 Supported interface modes 中出现 monitor即说明支持。

在这里插入图片描述
iwconfig可以查看工作模式,

$ iwconfig
lo        no wireless extensions.

eth0      no wireless extensions.

wlan0     IEEE 802.11  ESSID:"702-office"  
          Mode:Managed  Frequency:5.18 GHz  Access Point: C2:FC:A9:EF:80:15   
          Bit Rate=24 Mb/s   Tx-Power=31 dBm   
          Retry short limit:7   RTS thr:off   Fragment thr:off
          Power Management:on
          Link Quality=64/70  Signal level=-46 dBm  
          Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:0
          Tx excessive retries:0  Invalid misc:0   Missed beacon:0

wlan1     IEEE 802.11  ESSID:off/any  
          Mode:Managed  Access Point: Not-Associated   Tx-Power=18 dBm   
          Retry short limit:7   RTS thr:off   Fragment thr:off
          Power Management:off

配置监听模式 iwconfig wlan0 mode monitor , 若无输出,则说明配置成功。例如,之类
在这里插入图片描述

有些设备启动监听模式之后,设备名称会改变,例如 wlan1 会变成 wlan1mon。后续根据实际名称进行测试。

通常由于默认使用 Managed模式,会有wpa_supplicant 进程影响,需要先关闭。

这里可以选择使用 Aircrack-ng 套件 中的airmon-ng 来配置, airmon-ng start wlan1

$ sudo airmon-ng start wlan1

Found 4 processes that could cause trouble.
Kill them using 'airmon-ng check kill' before putting
the card in monitor mode, they will interfere by changing channels
and sometimes putting the interface back in managed mode

    PID Name
    537 avahi-daemon
    552 avahi-daemon
    634 NetworkManager
    645 wpa_supplicant

PHY     Interface       Driver          Chipset

phy0    wlan0           brcmfmac        Broadcom 43430
phy1    wlan1           rtl88xxau_wfb   Realtek Semiconductor Corp. RTL8812AU 802.11a/b/g/n/ac 2T2R DB WLAN Adapter
                (monitor mode enabled)

其中有提示影响开启监听模式,需要执行 airmon-ng check kill 后再次开启。
再次iwconfig查看其工作模式,确认工作在monitor模式

wlan1     IEEE 802.11  Mode:Monitor  Frequency:2.457 GHz  Tx-Power=18 dBm   
          Retry short limit:7   RTS thr:off   Fragment thr:off
          Power Management:off

可以使用 airodump-ng 保存抓包实时查看和文件再查看。有信息输出,说明正常。

pi@raspberrypi:~ $ airodump-ng wlan1 -w xxx
16:02:39  Created capture file "xxx-01.cap".
 CH 12 ][ Elapsed: 0 s ][ 2024-07-30 16:02

 BSSID              PWR  Beacons    #Data, #/s  CH   MB   ENC CIPHER  AUTH ESSID
 00:1F:64:CC:36:09    0        2        0    0   6  130   OPN              wireless ssid
 60:F1:8A:32:FE:6F    0        3        0    0   6  360   WPA2 CCMP   PSK  hw_manage_fe60
 BE:B6:D0:B1:25:39  -60        2        0    0  11  130   WPA2 CCMP   PSK  DIRECT-VPDESKTOP-3R89AKJmsUP
 D8:12:65:B9:89:B6    0        3        0    0   6   65   OPN              HP-Print-B6-LaserJet Pro MFP
 54:89:98:58:99:8B    0        6        2    0  11   54e. WPA  TKIP   PSK  ChinaNet-lkQB
 C4:B8:B4:DB:1B:2F    0        5        0    0   6  360   WPA2 CCMP   PSK  hw_manage_1b20
 22:CA:86:3B:E4:67    0        2        0    0  11  360   WPA2 CCMP   PSK  <length:  0>
 00:1F:64:CC:43:89    0        5        0    0   6  270   OPN              wireless ssid
 52:6A:48:B3:EB:06    0        6        0    0   3  360   WPA2 CCMP   PSK  <length:  0>
 5A:89:98:58:99:8B    0        9        3    0  11   54e. WPA  TKIP   PSK  iTV-lkQB
 22:CA:86:3B:E4:62    0       12        0    0  11  360   WPA2 CCMP   PSK  ChinaNet-Y6TPKU
 60:F1:8A:78:8B:8F    0        8        0    0  11  360   WPA2 CCMP   PSK  hw_manage_8b80
 60:F1:8A:32:83:4F    0        4        0    0   6  360   WPA2 CCMP   PSK  hw_manage_8340
 C4:B8:B4:DB:77:8F    0        7        0    0   6  360   WPA2 CCMP   PSK  hw_manage_7780
 74:26:FF:3D:0D:3C    0        8        0    0   9  130   WPA2 CCMP   PSK  ChinaNet-ehbX
 60:F1:8A:33:02:EF    0       12        0    0   6  360   WPA2 CCMP   PSK  hw_manage_02e0
 28:6C:07:CB:4D:47    0        4        8    3   1  130   WPA2 CCMP   PSK  Xiaomi_4D46
 60:F1:8A:79:86:0F    0       10        0    0   1  360   WPA2 CCMP   PSK  hw_manage_8600
 2C:1A:01:F1:9D:A4    0        1        0    0   1  130   WPA2 CCMP   PSK  ChinaNet-SDQp
 60:F1:8A:79:86:00    0       11        0    0   1  360   OPN              I-NANJING-FREE
 CC:D8:43:C1:28:5D    0        8 

http://www.kler.cn/a/582409.html

相关文章:

  • 【python-uiautomator2】手机上的ATX应用界面报错问题处理:无法提供服务,非am instrument启动
  • Percona XtraBackup8.0备份实例
  • 如何保证Redis与MySQL双写一致性?分布式场景下的终极解决方案
  • 免费的模型效果编辑器推荐
  • 在Selenium中,driver.close和driver.quit之间有什么区别?分别在什么时候用?
  • docker jar镜像打包
  • std::ranges::views::common, std::ranges::common_view
  • 七大常用智能家居协议对比
  • 双周报Vol.67: 模式匹配支持守卫、LLVM 后端发布、支持 Attribute 语法...多项核心技术更新!
  • Word 小黑第2套
  • 【记录】LaTex|ACM单双栏混合排版出现大量空白的调整方式(例如附带单栏的附录)
  • MySQL Binlog的样式
  • 人工智能驱动数字孪生城市的实践探索
  • 展望 AIGC 前景:通义万相 2.1 与蓝耘智算平台共筑 AI 生产力高地
  • 六、OpenGL中EBO的使用及本质
  • 汽车NVH诊断案例 | 纯电车急加速过大弯底盘异响
  • 17.JavaScript 自动化侦察工具
  • 前馈神经网络 - 参数学习(优化问题)
  • VSTO(C#)Excel开发4:打印设置
  • Mac java全栈开发环境配置