druserx/nervus

GitHub: druserx/nervus

nervus 是一款 BLE GATT 特征模糊测试工具,通过 ATT/L2CAP 连接向支持写入的特征值发送畸形数据,帮助开发者发现蓝牙设备的稳定性与健壮性问题。

Stars: 0 | Forks: 0

# nervus 针对 BLE 设备的 GATT 特征 fuzzer。通过 ATT/L2CAP 连接,并向所有接受写入操作的目标发送畸形的 payload。 这个名字在拉丁语中意为“神经”——其核心思路是不断干扰设备,直到其崩溃。 ## 依赖项 ``` sudo apt install libbluetooth-dev ``` Linux 下的 BLE 适配器(hci0)。已使用 CSR 4.0 和 Intel AX200 测试过。 ## 构建 ``` make ``` ## 基本用法 ``` # 发现服务并使用所有策略进行 fuzz sudo ./nervus -a AA:BB:CC:DD:EE:FF # 仅使用一种策略 sudo ./nervus -a AA:BB:CC:DD:EE:FF -s boundaries # 对特定特性进行 fuzz,保存 log sudo ./nervus -a AA:BB:CC:DD:EE:FF -c 0x0025 -s all -o resultado.log # 可用的策略 # zeros boundaries ones patterns fmtstr random overlong bitflip all ``` ## 记录内容 任何异常情况:响应超时、写入过程中断开连接、意外的 ATT 错误。如果设备掉线,它会自动重连并从上次中断的地方继续。 ## 限制 - 仅支持 ISO 14443-A / LE(不支持 BR/EDR) - 不对 indications/notifications 进行 fuzzing - DESFire 和带有 LESC 的芯片需要先进行配对——尚未实现 请仅对您有授权测试的设备使用。
标签:ATT/L2CAP, 客户端加密, 密码管理, 物联网安全, 蓝牙