Skip to content
KitploitKITPLOIT
工具博客
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
killerbee — IEEE 802.15.4/ZigBee 安全研究工具包 | Kitploit
工具/GitHubGitHub/riverloopsec/killerbee
数据包嗅探与分析侦察物联网安全漏洞分析漏洞利用模糊测试网络安全无线安全渗透测试硬件与物联网安全
GitHubriverloopsec/killerbee

killerbee

IEEE 802.15.4/ZigBee 安全研究工具包

8452294年前Kitploit 审核通过

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享
查看仓库网站

KillerBee

KillerBee 是一个用于测试和审计 ZigBee 及 IEEE 802.15.4 网络的框架与工具集

注意

  • usb0.x 支持正在被弃用/移除
  • Apimote v1 支持正在被弃用/移除

如果你需要这些功能,请创建一个 issue 说明你的使用场景和需求。

KillerBee 3.0.0-beta 更新

大家好,感谢大家一直以来对 KillerBee 的支持与关注。

当我们正在投入新精力清理代码、迁移到 Python 3、添加功能、提升一致性与连贯性时,我们利用这次重构的机会重新审视项目的目标和用途,以及实现这些目标的最佳方式。

随着我们弃用旧功能和依赖项,并重构代码以帮助组织功能、实现功能的扩展,这次工作将带来一个主要版本更新。

这也是尝试定义组成 KillerBee 的各个部分,旨在为 KillerBee 中的功能划定更清晰的界限,并将其作为库来对待。 详情请参阅 ARCHITECTURE.md 以了解当前及未来的目标。

维护者/许可协议

根据 BSD 许可证分发,详情见 LICENSE.txt。 保留所有权利。

主要工具包的作者为:

  • 2009, Joshua Wright [email protected]
  • 2010-2019, Ryan Speers [email protected]
  • 2010-2011, Ricky Melgares [email protected]

我们感谢众多为框架做出贡献的人,包括以下贡献了功能的人士:

  • 匿名贡献者
  • Spencer McIntyre(scapy 扩展)
  • Bryan Halfpap [email protected](附加工具)
  • Travis Goodspeed
  • Mike Kershaw (dragorn)
  • Chris Wang (aikiba)
  • Nick DePetrillo
  • Ed Skoudis
  • Matt Carpenter
  • Sergey Bratus(达特茅斯学院研究支持)
  • Jeff Spielberg
  • Scytmo(错误修复和 CC2530/1 EMK 板支持)
  • Adam Laurie/rfidiot(APS 加密实现、固件、DFU 与 BOOTLOADER、SubGHZ、SiLabs NodeTest)
  • Steve Martin
  • Taylor Centers [email protected](Python 3 移植)
  • SecureAB(Python 3)
  • Jan Rude(Python 3,Sewio)
  • Damien Cauquil(CC2531 BumbleBee)

依赖项

KillerBee 在 Linux 系统上开发和测试。 MacOS 可以使用但不提供支持。

我们尽量使用最少的软件依赖项,但在安装之前仍需安装以下 Python 模块。 安装程序会检测并提示你需要哪些模块。

在 Ubuntu 系统上,你可以使用以下命令安装所需的依赖项:

root@kitploit:~
# apt-get install python-usb python-crypto python-serial python-dev libgcrypt-dev

在 Mac OS 上,你可以使用以下命令安装依赖项:

root@kitploit:~
# brew install libusb libgcrypt
# pip3 install pyusb scapy

Scapy 扩展补丁需要 python-dev 和 libgcrypt。

另请注意,这是一个相当高级且不友好的攻击平台。它并非 Cain & Abel。它专为攻击 ZigBee 和 IEEE 802.15.4 网络的开发者和高级分析师设计。我建议你在深入研究此框架之前,先对 ZigBee 协议(书籍 ZigBee Wireless Networks and Transceivers by Shahin Farahani 还算不错,尽管仍然不够好)和 Python 语言有一定了解。

安装

KillerBee 在满足依赖项后,使用标准的 Python 'setup.py' 安装文件。

使用以下命令安装 KillerBee:

root@kitploit:~
# python3 setup.py install

目录结构

KillerBee 代码的目录结构如下所述:

  • doc - KillerBee 库的 HTML 文档,由 epydoc 生成。
  • firmware - 支持的 KillerBee 硬件设备的固件。
  • killerbee - Python 库源代码。
  • sample - 示例数据包捕获文件,下面会引用。
  • scripts - 开发中使用的 Shell 脚本。
  • tools - 使用此框架开发的 ZigBee 和 IEEE 802.15.4 攻击工具。

所需硬件

KillerBee 框架正在扩展以支持多种设备。 目前支持 River Loop ApiMote、Atmel RZ RAVEN USB Stick、MoteIV Tmote Sky、TelosB mote、Sewino Sniffer 以及运行 Silicon Labs Node Test 固件的各种硬件。

硬件支持和固件编程的详细信息请参阅 firmware/README.md。

对 Freaklab 的 Freakduino(附带额外硬件和达特茅斯 arduino 草图)以及 Zigduino 板的支持已提供,但未列出,因为它们已不再维护。你需要在 killerbee/config.py 中启用这些设备,然后重新安装 KillerBee。

工具集

KillerBee 包含多个基于 KillerBee 框架构建的、用于攻击 ZigBee 和 IEEE 802.15.4 网络的工具。每个工具都通过运行带有 "-h" 参数来显示其使用说明,摘要如下。

  • zbid - 识别 KillerBee 及相关工具可用的接口。
  • zbwireshark - 类似于 zbdump,但会暴露一个命名管道,用于实时捕获并在 Wireshark 中查看。
  • zbdump - 类似 tcpdump 的工具,用于将 IEEE 802.15.4 帧捕获到 libpcap 或 Daintree SNA 数据包捕获文件中。不在写入文件时显示实时统计信息(如 tcpdump)。
  • zbreplay - 实现重放攻击,从指定的 Daintree DCF 或 libpcap 数据包捕获文件中读取并重新传输帧。ACK 帧不会被重新传输。
  • zbstumbler - 主动的 ZigBee 和 IEEE 802.15.4 网络发现工具。Zbstumbler 在信道跳变时发送信标请求帧,记录并显示有关发现设备的摘要信息。还可以将结果记录到 CSV 文件中。
  • zbpanidconflictflood - 需要两个 killerbee 接口:一个 killerbee 接口监听数据包并标记其 PAN ID。另一个接口不断发送包含找到的 PAN ID 的信标帧。包含相同 PAN ID 的信标帧导致 PAN 协调器认为存在 PAN ID 冲突,协调器开始在新 PAN ID 上重新对齐网络。此过程不断重复。通常,网络设备无法跟上快速变化的速度,几秒钟后网络就会崩溃。没有内置目标选择:这可能会破坏攻击信道上范围内的所有 ZigBee 网络。请谨慎使用。
  • zborphannotify - 向 PAN 协调器发送一个来自目标设备的伪孤儿通知数据包,以测试协调器的行为。
  • zbrealign - 从协调器向目标设备发送伪装的 802.15.4 PAN 重新对齐帧。可能能够重置设备的 PAN ID 或信道。
  • zbfakebeacon - 伪装信标帧,可以是批量发送,也可以是响应收到的信标请求时发送。
  • zbopenear - 协助在设备工作在多个信道或快速跳频时进行数据捕获。它依次在所有信道上分配多个接口。
  • zbassocflood - 反复关联到目标 PAN ID,试图使设备因连接站点过多而崩溃。
  • zbconvert - 将数据包捕获从 Libpcap 格式转换为 Daintree SNA 格式,或反之。
  • zbdsniff - 捕获 ZigBee 流量,寻找 NWK 帧和空中密钥配置。当找到密钥时,zbdsniff 将密钥打印到标准输出。示例数据包捕获文件 sample/zigbee-network-key-ota.dcf 可用于演示此功能。
  • zbfind - 一个 GTK GUI 应用程序,通过测量 RSSI 来跟踪 IEEE 802.15.4 发射器的位置。zbfind 可以被动发现(仅侦听数据包),也可以主动发送信标请求帧并记录 ZigBee 路由器和协调器的响应。如果启动此工具后出现大量错误,请确保你的 DISPLAY 变量设置正确。
  • zbgoodfind - 使用来自合法 ZigBee 或 IEEE 802.15.4 设备的加密数据包捕获和内存转储实现密钥搜索功能。此工具配合 Travis Goodspeed 的 GoodFET 硬件攻击工具使用,或与其他可能包含加密密钥信息的二进制数据(例如对旧芯片(如 CC2420)的总线嗅探)一起使用。Zbgoodfind 的搜索文件必须是二进制格式(不支持 obj hexfile 格式)。要从 hexfile 格式转换为二进制文件,请使用 objcopy 工具:objcopy -I ihex -O binary mem.hex mem.bin
  • zbwardrive - 发现可用接口,并使用一个接口注入信标请求帧并在信道上监听响应。一旦在某个信道上发现网络,就分配另一个设备连续捕获该信道上的流量到 PCAP 文件。运行此工具需要安装 Scapy。
  • zbscapy - 提供一个交互式 Scapy shell,用于通过 KillerBee 接口进行交互。运行此工具需要安装 Scapy。
  • kbbootloader - 将设备切换到 DFU/BOOTLOADER 模式(如果设备支持)。

其他特殊用途或不稳定的工具存放在 Api-Do 项目仓库:http://code.google.com/p/zigbee-security/ 以及 https://github.com/riverloopsec/beekeeperwids。

框架

KillerBee 旨在简化从空中接口或支持的数据包捕获文件(libpcap)中嗅探数据包以及注入任意数据包的过程。还提供了辅助函数,包括 IEEE 802.15.4、ZigBee NWK 和 ZigBee APS 数据包解码器。

KillerBee API 以 epydoc 格式记录,HTML 文档位于此发行版的 doc/ 目录中。如果你安装了 epydoc,还可以生成方便的 PDF 用于打印(如果需要),如下所示:

root@kitploit:~
$ cd killerbee
$ mkdir pdf
$ epydoc --pdf -o pdf killerbee/

pdf/ 目录下会有一个名为 "api.pdf" 的文件,其中包含框架文档。

要开始使用 KillerBee 框架,请查看包含的工具(zbdump 和 zbreplay 是不错的入门示例)。

由于 KillerBee 是一个 Python 库,它也可以很好地与其他 Python 软件集成。例如,Sulley 库是一个由 Pedram Amini 编写的 Python 模糊测试框架。利用 Sulley 的变异功能和 KillerBee 的数据包注入功能,可以轻松构建一个生成并向目标发送畸形 ZigBee 数据的机制。

问题/评论/疑虑

请使用 https://github.com/riverloopsec/killerbee/issues 的工单系统。

原始版本由 [email protected] 编写。 当前版本、修复等问题由 [email protected] 处理。 (所有贡献者/致谢见上文列表。)

对于贡献者/开发者,详情和指南请参阅 DEVELOPMENT.md。

下载工具