hexsecs/awesome-embedded-security

GitHub: hexsecs/awesome-embedded-security

一份精心整理的嵌入式安全工具与资源列表,涵盖固件分析、逆向工程、硬件破解、IoT 安全、Fuzzing、Secure Boot、侧信道分析和 SDR 等领域。

Stars: 50 | Forks: 7

# Awesome 嵌入式安全 [![Awesome](https://awesome.re/badge-flat.svg)](https://awesome.re) [![验证 Markdown](https://static.pigsec.cn/wp-content/uploads/repos/cas/34/34f682d4900cb27520769877c1c988c80dcc1462522b00f10dc87361fbb4d8b5.svg)](https://github.com/hexsecs/awesome-embedded-security/actions/workflows/markdown-lint.yml) 一份精心整理的嵌入式安全工具、资源和培训列表,涵盖固件分析、逆向工程、硬件破解和 IoT 安全。 涵盖的主题包括固件提取和 fuzzing、secure boot 和 root of trust、侧信道分析、故障注入、JTAG/SWD 调试、RTOS 和 TEE 安全、Bluetooth/BLE、Zigbee 及其他无线协议安全,以及软件定义无线电 (SDR)。 ## 目录 * 软件工具 * 二进制解析与分析工具 * 反汇编器/反编译器 * Fuzzing 工具 * MCU 固件 Fuzzing * 模拟工具 * 调试工具 * Secure Boot 和固件信任 * 固件供应链和 SBOM * 特定语言反编译器 * 安全审计框架 * 固件污点分析 * RTOS 安全 * TEE/可信执行环境 * Root of Trust 和 TPM * OTA 更新安全 * IoT 协议安全 * Bluetooth 和 BLE 安全 * Zigbee / Z-Wave 安全 * 基带安全 * 固件恶意软件分析 * 硬件工具 * 硬件逆向工程多功能工具 * 硬件调试接口 * 芯片摘取与内存取证 * 侧信道分析 * 故障注入 * 逻辑分析仪 * RF 工具 (非 SDR) * 软件定义无线电 * 软件定义无线电软件 * Wifi 工具 * 进阶学习与培训 * 开源情报 (OSINT) * 其他 Awesome 列表 * 贡献 ## 软件工具 ### 二进制解析与分析工具 * [Kaitai Struct](https://kaitai.io/) - 用于描述各种二进制数据结构(位于文件或内存中)的声明式语言:例如二进制文件格式、网络流数据包格式等。 * [Binwalk](https://github.com/ReFirmLabs/binwalk) - 快速、易用的工具,用于分析、逆向工程和提取固件镜像。 * [OFRAK](https://github.com/redballoonsecurity/ofrak) - 二进制分析和修改平台,结合了解包、分析、修改和重新打包二进制文件的能力。 * [LIEF](https://github.com/lief-project/LIEF) - 用于检测可执行文件格式的库:解析、修改和抽象固件镜像中的 ELF、PE、Mach-O、DEX 和 OAT 二进制文件。 * [checksec](https://github.com/slimm609/checksec.sh) - Shell 脚本,用于检查从固件中提取的 ELF 可执行文件上的二进制安全加固标志(NX、PIE、RELRO、stack canary、ASLR)。 * [firmwalker](https://github.com/craigz28/firmwalker) - 搜索提取的固件文件系统,以查找有趣的文件、凭据、配置和已知易受攻击的组件。 * [SCOUT](https://github.com/R00T-Kim/SCOUT) - 确定性固件分析流水线,输出 SARIF 2.1、CycloneDX 1.6 + VEX SBOM 和哈希锚定的证据链;自动检测 Ghidra 并运行带有四级置信度上限的 P-code SSA 数据流污点分析。纯标准库(无 pip 依赖)。 * [cwe_checker](https://github.com/fkie-cad/cwe_checker) - 二进制分析工具,使用抽象解释检查 ELF 二进制文件是否存在通用缺陷枚举 (CWE) 违规,支持跨架构。 * [FLARE-FLOSS](https://github.com/mandiant/flare-floss) - FLARE 混淆字符串求解器,可自动从二进制文件中提取混淆、编码和堆栈字符串,用于快速固件分诊。 * [unblob](https://github.com/onekey-sec/unblob) - 来自 ONEKEY 的快速、准确的固件提取引擎,支持 100 多种归档、压缩和文件系统格式,误报率比 Binwalk 更低。在 DEF CON 30 上展示。 * [argXtract](https://github.com/projectbtle/argXtract) - 在没有符号表的情况下,静态提取已剥离的 ARM Cortex-M BLE 固件中 SVC 调用和 HAL 函数的参数,从而实现对 Nordic 及类似二进制文件的安全审计。ACSAC 2021。 * [VulHunt](https://github.com/vulhunt-re/vulhunt) - 来自 Binarly 研究团队的基于 Lua 规则的漏洞检测框架,可同时在反汇编、IR 和反编译代码上运行,并提供专用的 UEFI 模块扫描支持。 ### 反汇编器/反编译器 * [IDA Pro](https://hex-rays.com/ida-pro/) 💰 - 反汇编器,能够创建执行映射,以符号表示(汇编语言)显示处理器实际执行的二进制指令。IDA Pro 中实现了高级技术,使其能够从机器可执行代码生成汇编语言源代码,并使这些复杂的代码更具人类可读性。 * [Vivisect](https://github.com/vivisect/vivisect) - 结合了反汇编器/静态分析/符号执行/调试器的框架。 * [Binary Ninja](https://binary.ninja/) 💰 - 面向逆向工程师、恶意软件分析师、漏洞研究人员和软件开发人员的交互式反汇编器、反编译器和二进制分析平台,可在 Windows、macOS 和 Linux 上运行。 * [Cutter](https://cutter.re/) - 由 Rizini 提供支持的开源免费逆向工程平台。 * [Rizin](https://rizin.re/) - 免费开源的逆向工程框架,提供完整的二进制分析体验,具有反汇编器、十六进制编辑器、模拟、二进制检查、调试器等功能。 * [radare2](https://www.radare.org/n/) - 免费/自由工具链,用于简化取证、软件逆向工程、漏洞利用、调试等底层任务。它由一组库(通过插件扩展)和程序组成,几乎可以使用任何编程语言实现自动化。 * [Ghidra](https://ghidra-sre.org/) - 由 NSA 研究局为支持网络安全任务而开发的软件逆向工程 (SRE) 工具套件。 * [Angr](https://github.com/angr/angr) - 平台无关的二进制分析框架。由加州大学圣巴巴拉分校计算机安全实验室、亚利桑那州立大学 SEFCOM 及其相关的 CTF 团队 Shellphish、开源社区以及 @rhelmot 共同提供。 * [Angr Management](https://github.com/angr/angr-management) - 多架构二进制分析工具包,具备对二进制文件执行动态符号执行(如 Mayhem、KLEE 等)和各种静态分析的能力。如果你想学习如何使用它,你来对地方了! * [Capstone](https://github.com/capstone-engine/capstone) - 轻量级的多平台、多架构反汇编框架。他们的目标是使 Capstone 成为安全社区中用于二进制分析和逆向的终极反汇编引擎。 * [Keystone](https://github.com/keystone-engine/keystone) - 轻量级的多架构汇编框架,是 Capstone 的补充。 * [BARF](https://github.com/programa-stic/barf-project) - 二进制分析和逆向工程框架,支持 ROP gadget 搜索和 CFG 恢复。 * [RetDec](https://github.com/avast/retdec) - Avast 的可重定向机器码反编译器,支持 ARM、MIPS、x86 和嵌入式固件中常见的其他架构。 ### 调试工具 * [Open OCD](https://github.com/openocd-org/openocd/) - 通过分层的 JTAG 接口和 TAP 支持架构,提供片上编程和调试支持。 * [GDB](https://www.sourceware.org/gdb/) - GNU 项目调试器,允许你查看另一个程序执行时“内部”发生了什么——或者另一个程序崩溃时它在做什么。 * [GEF](https://hugsy.github.io/gef/) - 针对 X86、ARM、MIPS、PowerPC 和 SPARC 的一组绝佳命令,让 GDB 在漏洞利用开发中再次酷起来。它主要面向漏洞利用开发人员和逆向工程师,旨在使用 Python API 为 GDB 提供额外功能,以协助进行动态分析和漏洞利用开发。 * [assembly-repl](https://github.com/pirate/assembly-repl) - 适用于 macOS 和 Linux 的原生汇编、LLVM IR、C、C++ 和 Objective-C REPL。 * [Black Magic Probe](https://codeberg.org/blackmagic-debug/blackmagic) - 开源 JTAG/SWD 调试器,带有嵌入式 GDB server 和自动目标检测功能。 * [pyOCD](https://pyocd.io) - 开源 Python 库,用于对 Arm Cortex-M 微控制器进行编程和调试,并支持跨平台调试探针。 * [probe-rs](https://probe.rs/) - 现代的基于 Rust 的嵌入式调试工具包,支持 SWD/JTAG,内置烧录、RTT 日志记录和面向 ARM 和 RISC-V 目标的 GDB server。 * [Frida](https://frida.re/) - 动态插桩工具包,用于将 JavaScript 或原生代码注入到运行在嵌入式 Linux、Android、iOS 和裸机目标上的进程中。 ### Secure Boot 和固件信任 * [MCUboot](https://github.com/mcu-tools/mcuboot) - 用于 32 位微控制器的安全 bootloader,支持签名镜像、回滚保护和度量启动流程。 * [AVB (Android Verified Boot)](https://android.googlesource.com/platform/external/avb/+/master/README.md) - 为嵌入式 Android 系统中的链式信任和验证分区提供参考实现和设计指南。 * [U-Boot Verified Boot](https://docs.u-boot.org/en/latest/usage/fit/verified-boot.html) - 为嵌入式 Linux 启动链提供基于 FIT 签名的 secure boot 支持。 * [wolfBoot](https://github.com/wolfSSL/wolfBoot) - 适用于 32 位 MCU 的便携式安全 bootloader,使用 wolfCrypt 进行镜像签名验证(Ed25519、ECC、RSA、后量子 LMS/XMSS),支持增量更新、加密镜像和显式的电压毛刺对策。 ### 固件供应链和 SBOM * [in-toto](https://in-toto.io/) - 保障供应链完整性的框架,记录已签名的出处步骤并强制执行布局验证。 * [Sigstore Cosign](https://github.com/sigstore/cosign) - 用于在 CI/CD 流水线中对固件/容器构件进行无密钥签名和验证的工具。 * [Syft](https://github.com/anchore/syft) - 针对文件系统和构件的 SBOM 生成器,适用于固件包/组件清点。 * [Grype](https://github.com/anchore/grype) - 漏洞扫描器,通过消费 SBOM 来识别固件依赖项中已知的 CVE。 * [CVE Binary Tool](https://github.com/ossf/cve-bin-tool) - OpenSSF 工具,可直接扫描二进制文件以查找 350 多个已知易受攻击的开源组件(OpenSSL、libpng、BusyBox 等),无需预先构建的 SBOM;也可以根据扫描结果生成一个 SBOM。 ### Fuzzing 工具 * [AFL++](https://github.com/AFLplusplus/AFLplusplus) - 覆盖率引导的 fuzzer,具有增强的变异、QEMU 和 Unicorn 模拟模式以及自定义的功率调度。 * [honggfuzz](https://github.com/google/honggfuzz) - 反馈驱动的进化 fuzzer,支持基于硬件的覆盖率 (Intel BTS/PT) 和用于极致速度的持久模式。 * [Fuzzowski](https://github.com/nccgroup/fuzzowski) - 基于 Sulley/BooFuzz 框架的网络协议 fuzzer,支持 TCP/UDP/SSL 协议。 * [Peach](https://gitlab.com/peachtech/peach-fuzzer-community) 💰 - 智能 fuzzer,通过 Peach Pit 定义支持基于生成和基于变异的 fuzzing。社区版提供源代码;完整版为商业版。 * [libFuzzer](https://llvm.org/docs/LibFuzzer.html) - 与 LLVM 集成的进程内、覆盖率引导的进化 fuzzing 引擎。 * [boofuzz](https://github.com/jtpereyda/boofuzz) - 积极维护的网络协议 fuzzer,是 Sulley 的精神继承者,支持会话管理、目标监控和协议图。 * [GDBFuzz](https://github.com/boschresearch/gdbfuzz) - 使用 GDB 硬件断点作为未插桩嵌入式目标的覆盖率源——适用于任何支持 GDB 调试的 MCU,无需修改固件。Bosch Research / ISSTA 2023。 ### 特定语言反编译器 * .NET * [ILSpy](https://github.com/icsharpcode/ILSpy) - 支持 PDB 生成、ReadyToRun、元数据(以及更多)的 .NET 反编译器 - 跨平台! * [dnSpy](https://github.com/dnSpyEx/dnSpy) - .NET 调试器和程序集编辑器。 * [de4dot](https://github.com/de4dot/de4dot) - .NET 去混淆器。 * Java * [JD-GUI](https://github.com/java-decompiler/jd-gui) - Java 反编译器。 * [JADX](https://github.com/skylot/jadx) - Dex 到 Java 的反编译器。 ### 安全审计框架 * [EXPLIoT](https://pypi.org/project/expliot/) - 用于安全测试和利用 IoT 产品及 IoT 基础设施的框架。它提供了一组用于执行评估的插件(测试用例),并且可以通过新插件轻松扩展。 * [Metasploit](https://github.com/rapid7/metasploit-framework) - 由 Rapid7 维护的开源渗透测试框架(BSD 许可),具有用于跨嵌入式 Linux 和 IoT 目标利用漏洞、扫描和后渗透的模块。 * [件分析和比较工具 (FACT)](https://fkie-cad.github.io/FACT_core/) - 自动化的固件安全分析(路由器、IoT、UEFI、网络摄像头、无人机等)。它易于使用(Web UI)、扩展(插件系统)和集成(REST API)。 * [FwAnalyzer (固件分析器)](https://github.com/cruise-automation/fwanalyzer) - 使用一组可配置的规则分析 (ext2/3/4)、FAT/VFat、SquashFS、UBIFS 文件系统镜像、cpio 归档和目录内容的工具。 * [IoTGoat](https://github.com/OWASP/IoTGoat) - OWASP 针对树莓派和 x86 平台故意设计的不安全固件,为 OWASP IoT Top 10 漏洞提供实践练习。 * [kernel-hardening-checker](https://github.com/a13xp0p0v/kernel-hardening-checker) - 根据 KSPP、CLIP OS 和 STIG 加固建议审计 Linux 内核 Kconfig 选项和启动参数;支持 ARM、ARM64、x86 和 RISC-V。适用于 Yocto/OpenEmbedded 流水线。 ### 固件污点分析 * [KARONTE](https://github.com/ucsb-seclab/karonte) - 静态分析工具,使用基于 angr 的跨二进制污点传播,跟踪嵌入式 Linux 固件中跨二进制边界(共享文件、socket、环境变量)的不可信输入流。IEEE S&P 2020。 * [SaTC](https://github.com/NSSL-SJTU/SaTC) - 将污点分析锚定在 Web 前端和后端二进制文件之间共享的字符串字面量上,以精确定位用户控制的输入入口点;在商业固件中发现了 33 个未知漏洞。USENIX Security 2021。 * [EmTaint](https://github.com/kuc001/EmTaint) - 基于结构化符号表达式的污点分析,为嵌入式 Linux 固件提供按需别名解析;在 35 个真实世界的镜像中发现了 151 个 0-day 漏洞。ISSTA 2023。 ### RTOS 安全 * [FreeRTOS Security](https://www.freertos.org/Security/01-Security-overview) - FreeRTOS 的安全特性和文档,包括基于 TLS 的 MQTT、PKCS#11 和 PSA Certified 实现。 * [Zephyr Project Security](https://docs.zephyrproject.org/latest/security/index.html) - Zephyr RTOS 的安全文档,包括 TF-M 集成、verified boot 和安全测试。 * [RT-Thread Security](https://github.com/RT-Thread/rt-thread/security) - RT-Thread IoT OS 的安全资源和漏洞报告。 * [seL4](https://sel4.systems/) - 形式化验证的微内核,通过机器检查证明其功能正确性、完整性和机密性,提供了任何生产级 OS 内核中最强的安全保证。 * [Tock OS](https://www.tockos.org/) - 基于 Rust 的嵌入式微控制器 OS,通过硬件强制内存隔离和基于能力的驱动程序模型设计来实现安全,面向 Cortex-M 和 RISC-V 平台。 ### TEE/可信执行环境 * [OP-TEE](https://optee.readthedocs.io/) - 开源可信执行环境,为 ARM TrustZone 处理器上的安全世界执行提供隔离。 * [Trusty TEE](https://source.android.com/docs/security/features/trusty) - Android 中用于安全服务和密钥库的可信执行环境。 * [Intel SGX SDK](https://github.com/intel/linux-sgx) - 用于 Intel Software Guard Extensions 的开源 Linux SDK 和平台软件,提供用于开发和部署基于硬件的内存飞地应用程序的构建/安装工具链。 * [AMD SEV](https://developer.amd.com/sev/) - 安全加密虚拟化,利用 AMD-V 硬件辅助加密虚拟机内存。 * [Samsung TrustZone Research Toolkit](https://github.com/quarkslab/samsung-trustzone-research) - Quarkslab 针对三星 Kinibi TrustZone 的逆向工程工具包:用于 MCLF trustlet 二进制文件的 Ghidra 加载器、用于漏洞利用开发的基于 Unicorn 的 trustlet 模拟器,以及用于与可信应用程序通信的 Python 绑定。 ### Root of Trust 和 TPM * [TPM 2.0 参考实现](https://trustedcomputinggroup.org/resource-library/) - 来自 TCG 的 TPM 2.0 规范和参考软件。 * [IBM Software TPM](https://sourceforge.net/projects/ibmswtpm2/) - 用于测试和开发的软件 TPM 2.0 模拟器。 * [TPM 2.0 TS](https://github.com/tpm2-software/tpm2-tss) - 用于 TPM 2.0 的 TCG 软件栈,提供用于密钥管理和远程证明的 API。 * [Keylime](https://keylime.dev/) - 用于云和边缘的基于 TPM 的开源远程证明。 * [AMD fTPM 安全指南](https://www.amd.com/en/resources/product-security/bulletin/amd-sb-4011.html) - AMD 关于受支持平台上与固件 TPM 行为相关的安全公告覆盖和指南。 * [tpm2-algtest](https://github.com/crocs-muni/tpm2-algtest) - 测试真实的 TPM 2.0 芯片的 RNG 输出质量、密钥生成时间、算法支持和实现指纹,涵盖了来自 6 个供应商的 80 多个固件版本。来自 CRoCS(ROCA 的发现者)。CHES 2024。 ### OTA 更新安全 * [SUIT](https://datatracker.ietf.org/wg/suit/about/) - 物联网软件更新 (SUIT) 工作组,正在开发基于清单的固件更新架构。 * [RAUC](https://rauc.io/) - 适用于嵌入式 Linux 的安全固件更新框架,支持 bundle 签名和 A/B 分区。 * [Mender](https://mender.io/) - 适用于 Linux IoT 设备的空中软件更新器,具有原子更新和回滚功能。 * [SWUpdate](https://sbabic.github.io/swupdate/) - Linux 固件更新代理,支持镜像验证和增量更新。 ### IoT 协议安全 * [TLS for MQTT](https://mqtt.org/faq/) - 概述 MQTT broker 和客户端的 TLS 实现。 * [wolfMQTT](https://www.wolfssl.com/products/wolfmqtt/) - 支持 TLS 并针对嵌入式系统优化的 MQTT 客户端库。 * [CoAP Security](https://datatracker.ietf.org/doc/html/rfc7252) - 基于 DTLS 的受限应用协议 安全。 * [libcoap](https://libcoap.net/) - CoAP 的 C 语言实现,支持 DTLS 以实现安全的 IoT 通信。 * [Wireshark MQTT](https://www.wireshark.org/docs/dfref/m/mqtt.html) - 协议分析器,支持 MQTT 流量检查和安全分析。 * [KillerBee](https://github.com/riverloopsec/killerbee) - IEEE 802.15.4/ZigBee 安全研究框架,用于使用兼容的无线电硬件捕获、注入和分析 ZigBee 网络流量。 * [Cotopaxi](https://github.com/Samsung/cotopaxi) - 来自三星研发的多协议 IoT 安全测试工具包,涵盖 MQTT、CoAP、AMQP、DTLS、KNX、QUIC、RTSP、SSDP、HTTP/2、gRPC 等;支持跨 14 种协议的指纹识别、fuzzing 和已知漏洞识别。 * [U-Fuzz](https://github.com/asset-group/U-Fuzz) - 通用状态机 fuzzer,可从少量良性数据包捕获中推断协议的状态机,然后生成能导致崩溃的测试用例;已在 CoAP、Zigbee 和 5G NR 上进行了演示。 ### Bluetooth 和 BLE 安全 * [nRF Sniffer for Bluetooth LE](https://www.nordicsemi.com/Products/Development-tools/nRF-Sniffer-for-Bluetooth-LE) 💰 - Nordic Semiconductor 的 BLE 数据包嗅探器,用于捕获和分析低功耗蓝牙流量,并集成了 Wireshark。Wireshark 插件是开源的;dongle 固件是闭源二进制文件,需要配合 Nordic 硬件使用。 * [GATTacker](https://github.com/securing/gattacker) - BLE MITM 工具,用于拦截和中继 GATT 配置文件,以测试 BLE 设备的身份验证和数据完整性。 * [BtleJuice](https://github.com/DigitalSecurity/btlejuice) - 低功耗蓝牙 MITM 代理框架,用于实时拦截和操纵 BLE 通信。 * [Bettercap BLE](https://www.bettercap.org/modules/ble/) - 集成在 bettercap 万能刀框架中的 BLE 扫描、枚举和特征读写模块。 * [InternalBlue](https://github.com/seemoo-lab/internalblue) - 蓝牙实验框架,能够在无需定制硬件的情况下,对日常设备(iPhone、三星 Galaxy、树莓派)上的 Broadcom/Cypress 固件进行二进制补丁、LMP 注入和实时监控。 * [BrakTooth](https://github.com/Matheus-Garbelini/braktooth_esp32_bluetooth_classic_attacks) - 针对经典蓝牙 LMP 层漏洞的定向漏洞利用套件,目标是从标准主机协议栈无法访问的协议层;影响了来自 Intel、Qualcomm 和 Broadcom 的 1,400 多款产品。USENIX Security 2022。 * [SweynTooth](https://github.com/Matheus-Garbelini/sweyntooth_bluetooth_low_energy_attacks) - 针对 TI、NXP、Cypress、Dialog、Microchip 和 STMicro SDK 中 18 个 BLE 链路层和 L2CAP 漏洞的可运行 PoC 漏洞利用,包括完全绕过配对和链路层溢出。USENIX ATC 2020。 * [WHAD Framework](https://github.com/whad-team/whad-client) - 硬件无关的多协议无线安全框架 (BLE、Zigbee、Enhanced ShockBurst、ANT),使用廉价的 nRF52840 dongle 作为通用攻击无线电;是 Quarkslab 的 BLE GATT fuzzer 的基础。DEF CON 32 (2024)。 * [BlueToolkit](https://github.com/sgxgsx/BlueToolkit) - 用于经典蓝牙和 BLE 的模块化黑盒漏洞测试框架,具有 Recon/Exploit/Report 模块,涵盖了 40 多个公开漏洞利用 (MITM、RCE、DoS);用于发现主要汽车制造商的 22 款车型中的 128 个漏洞。USENIX WOOT 2025。 ### Zigbee / Z-Wave 安全 * [Z-Fuzzer](https://github.com/zigbeeprotocol/Z-Fuzzer) - 使用带有预定义外设和中断配置的软件模拟器的覆盖率引导的 Zigbee 协议 fuzzer;在 TI Z-Stack 中发现了 6 个 CVE。ACM Digital Threats 2022。 * [VFuzz](https://github.com/CNK2100/VFuzz-public) - 唯一专门的开源 Z-Wave 安全 fuzzer;使用字段优先级算法来变异协议有效帧并评估目标加密能力。IEEE Access 2022。 ### 基带安全 * [FirmWire](https://github.com/FirmWire/FirmWire) - 用于三星 和 MediaTek 蜂窝基带固件的全系统模拟平台,集成了 AFL++ fuzzing、任务注入 ModKit 和动态调试支持。发现了 7 个预身份验证的内存破坏漏洞。NDSS 2022。 * [OsmocomBB](https://github.com/osmocom/osmocom-bb) - 用于基于 TI Calypso 手机的自由软件 GSM 基带(Layer 1-3)实现,完全替代专有基带固件,并支持对 GSM 空中接口的开放研究。 * [Rayhunter](https://github.com/EFForg/rayhunter) - EFF 的开源 Rust 工具,可运行在廉价的移动热点上,通过监控信令流量中的可疑行为(例如强制 2G 降级)来检测基站模拟器(IMSI 捕获器/Stingrays)。 ### 固件恶意软件分析 * [固件安全测试](https://github.com/scriptingxss/owasp-fstm) - OWASP 固件安全测试方法论和评估嵌入式设备的实用指南。 * [固件分析工具包](https://github.com/attify/firmware-analysis-toolkit) - 用于固件模拟和漏洞发现的自动化工具。 * [emba](https://github.com/e-m-b-a/emba) - 高效的嵌入式固件恶意软件分析框架,具有扫描和报告功能。 * [EMBArk](https://github.com/e-m-b-a/embark) - EMBA 的企业 Web 界面,提供多用户扫描管理、聚合漏洞仪表板和 CI/CD 集成,用于持续的固件安全监控。 ### 模拟工具 * [FirmAE](https://github.com/pr0v3rbs/FirmAE) - 自动化的 IoT 固件模拟和漏洞分析框架,使用仲裁技术达到了 79% 的成功率。 * [Qiling](https://github.com/qilingframework/qiling) - 高级二进制模拟框架,支持 Windows、Linux、Android、BSD、UEFI 和多种架构的跨平台 OS 级模拟。 * [Unicorn Engine](https://github.com/unicorn-engine/unicorn) - 轻量级的多架构 CPU 模拟器框架,可为 ARM、MIPS、x86、RISC-V 等提供纯 CPU 模拟。 * [PANDA](https://github.com/panda-re/panda) - 支持架构中立的动态分析平台,具备录制/回放功能和用于全系统分析的 LLVM IR 转换。 * [Renode](https://renode.io/) - 来自 Antmicro 的开源硬件仿真框架,无需物理硬件即可对嵌入式固件进行功能测试和安全分析。 * [Avatar2](https://github.com/avatartwo/avatar2) - 用于二进制固件的动态分析编排框架,可协调跨模拟器(QEMU、Unicorn)和真实硬件目标的执行。 * [Firmadyne](https://github.com/firmadyne/firmadyne) - 用于模拟和分析基于 Linux 的嵌入式固件的自动化系统;在 QEMU 中提取并启动固件镜像,以实现动态漏洞发现。 * [HALucinator](https://github.com/embedded-sec/halucinator) - MCU 固件模拟框架,用高级模型替换硬件抽象层 函数,无需物理硬件即可实现完整的固件执行。 * [FirmSolo](https://github.com/BUseclab/FirmSolo) - 对供应商的 Linux 内核版本魔数进行逆向工程,以将专有的 `.ko` 驱动程序加载到兼容的内核中进行动态分析和 fuzzing,解锁了以前模拟器无法访问的代码。USENIX Security 2023。 ### MCU 固件 Fuzzing * [Fuzzware](https://github.com/fuzzware-fuzzer/fuzzware) - 通过符号执行自动对 MMIO 外设输入进行建模,无需硬件即可对 ARM Cortex-M 固件进行覆盖率引导的 fuzzing。与以前的方法相比,覆盖率提高了 3.25 倍。USENIX Security 2022。 * [μEmu](https://github.com/MCUSec/uEmu) - 从符号执行下的无效访问模式推断外设行为,然后在没有物理硬件的情况下驱动基于 AFL 的裸机 MCU 固件 fuzzing。USENIX Security 2021。 * [SAFIREFUZZ](https://github.com/pr0me/SAFIREFUZZ) - 通过动态二进制重写重写 ARM Cortex-M 固件,使其作为 ARM 服务器上的 Linux 用户空间进程运行,实现了比 HALucinator 高约 600 倍的 fuzzing 吞吐量。USENIX Security 2023。 * [Icicle](https://github.com/icicle-emu/icicle-emu) - 基于 Rust 的灰盒 fuzzer,具有与架构无关的覆盖率插桩,以支持 **MSP430 和 RISC-V** 而闻名,弥补了 AFL++ QEMU 模式在这些架构下没有覆盖率的缺陷。ISSTA 2023。 * [μAFL](https://github.com/MCUSec/microAFL) - 使用 ARM ETM 跟踪硬件的硬件在环 fuzzer,无需任何固件插桩即可从真实 MCU 收集覆盖率。在 STM32/NXP SDK 中发现了 8 个 CVE。ICSE 2022。 * [DICE](https://github.com/RiS3-Lab/DICE-DMA-Emulation) - 自动识别并模拟 MCU 固件中的 DMA 输入通道,使 fuzzer 能够执行以前不透明的 DMA 驱动代码路径。IEEE S&P 2021。 ## 硬件工具 ### 硬件逆向工程多功能工具 * [Tiguard](https://github.com/tigard-tools/tigard) - 基于 FTDI FT2232H 的多协议硬件破解工具。 * [Bus Pirate](https://greatscottgadgets.com/greatfet/) - 开源黑客多功能工具,可与电子设备进行通信。它具备有进取心的黑客在制作下一个项目原型时可能需要的一系列功能。 * [Glasgow Interface Explorer](https://glasgow-embedded.org/) - 通用的、基于 FPGA 的开源硬件调试和逆向工程工具,支持 SPI、I2C、UART、JTAG 和自定义协议,并提供高级 Python API。 * [GreatFET](https://greatscottgadgets.com/greatfet/) - 来自 Great Scott Gadgets 的开源 USB 主机端硬件安全研究平台,具有可扩展的邻居板生态系统,可用于与嵌入式目标进行接口连接。 * [Hydrabus](https://hydrabus.com/) - 开源的多协议硬件破解工具,支持 SPI、I2C、UART、CAN、1-Wire 和 JTAG 接口,专为嵌入式设备分析而打造。 ### 硬件调试接口 * [JTAGenum](https://github.com/cyphunk/JTAGenum) - 通过暴力测试候选引脚映射,在未知开发板上枚举 JTAG 引脚。 * [UrJTAG](https://urjtag.sourceforge.io/) - 开源 JTAG 工具包,用于边界扫描、闪存编程和底层目标交互。 * [LUNA](https://github.com/greatscottgadgets/luna) - 来自 Great Scott Gadgets 的基于 FPGA 的 USB 分析和开发平台,可通过 Amaranth HDL 实现 USB 嗅探、协议 fuzzing 和定制 USB 外设开发。 * [JTAGulator](https://github.com/grandideastudio/jtagulator) - 通过暴力破解引脚组合,在未知 PCB 上自动发现 JTAG、SWD 和 UART 调试接口,具有兼容 sigrok 的逻辑分析仪模式以及用于发现后利用的直接 OpenOCD 集成。 ### 芯片摘取与内存取证 * [Flashrom](https://flashrom.org/) - 用于识别、读取、写入和验证嵌入式开发板中常见的 SPI 闪存芯片的实用程序。 * [CHIPSEC](https://github.com/chipsec/chipsec) - 平台安全评估框架,提供与离线转储分诊相关的固件和芯片组检查。 * [The Sleuth Kit](https://www.sleuthkit.org/sleuthkit/) - 文件系统取证工具包,用于切割和检查恢复的 NAND/eMMC/UFS 镜像转储。 * [SNANDer](https://github.com/McMCCRU/SNANDer) - 使用无处不在的 3 美元 CH341A USB 芯片的 SPI NOR/NAND 闪存和 I2C EEPROM 的 CLI 编程器,通过专有软件无法提供的 NAND 支持对其进行了扩展——这是从 IoT 硬件中快速转储固件的首选。 * [NANDO](https://github.com/bbogush/nand_programmer) - 基于硬件开源 STM32 的并行 NAND 闪存编程器,具有芯片自动检测、坏块处理和可扩展的芯片数据库;针对旧路由器、机顶盒和汽车 ECU 中的并行 NAND。 ### 侧信道分析 * [ChipWhisperer](https://github.com/newaetech/chipwhisperer) - 用于侧信道功耗分析和故障注入攻击的开源工具链,具备完整的硬件和软件协议栈。 * [SCALE](https://github.com/danpage/scale) - 侧信道攻击实验室练习,提供使用低成本硬件学习功耗分析攻击的教育材料。 * [lascar](https://github.com/Ledger-Donjon/lascar) - 来自 Ledger 硬件钱包安全团队的高效 Python SCA 库,支持 CPA、DPA、MIA、模板攻击和基于机器学习的攻击,并针对大型迹线数据集支持延迟加载。 * [scared](https://github.com/eshard/scared) - 来自 eShard 的工业级侧信道分析框架,具有同类最佳的迹线处理性能;支持 CPA、DPA、TVLA/NICV 泄漏评估以及超大规模迹线数据集。 ### 故障注入 * [PicoGlitcher](https://github.com/MKesenheimer/fault-injection-library) - 基于 RP2040/RP2350 的电压毛刺平台,具有 66A 短路、通过 PIO 采样的 10ns 以下脉冲分辨率,以及用于编写攻击活动脚本的高级 Python (`findus`) API。由 SySS Research 验证。 * [PicoEMP](https://github.com/newaetech/chipshouter-picoemp) - NewAE 的开源硬件 EMFI 工具,建立在 Raspberry Pi Pico 和闪光灯变压器电路之上;社区标准的入门级电磁故障注入平台。 * [EM-Fault-It-Yourself](https://github.com/fgsect/EM-Fault-It-Yourself) - 电动 XYZ 平台 EMFI 平台,针对台式机和服务器 SoC(已成功攻击 AMD Secure Processor),具有 2.5µm 精度、100mm 行程以及用于自动扫描活动的 Web UI。IEEE HOST 2022。 * [Faulty Cat](https://github.com/ElectronicCats/faultycat) - 来自 Electronic Cats 的低成本开源硬件 EMFI 工具,基于 RP2040 构建,提供电磁和短路电压毛刺故障注入,并具有单次触发和参数扫描活动模式。 ### 逻辑分析仪 * [Saleae](https://www.saleae.com/) 💰 - 商业逻辑分析仪硬件(149-499 美元以上),带有专有软件;广泛用于解码 SPI、I2C、UART 和其他嵌入式协议。 * [Sigrok](https://sigrok.org/) - 便携式、跨平台、自由/开源的信号分析软件套件,支持多种设备类型(例如逻辑分析仪、示波器等)。 ### RF 工具 (非 SDR) * [Flipper Zero](https://docs.flipper.net/) - 适合渗透测试人员和极客的便携式多功能工具,外形像玩具。它热衷于破解数字产品,如无线电协议、访问控制系统、硬件等。 * [Awesome Flipper Zero](https://github.com/RogueMaster/awesome-flipperzero-withModules) - 收集了有关 Flipper Zero 设备的 Awesome 资源。 * [Yard Stick One](https://greatscottgadgets.com/yardstickone/) - 发射或接收 1 GHz 以下的数字无线信号。它使用与流行的 IM-Me 相同的无线电电路。 * [Proxmark3](https://github.com/RfidResearchGroup/proxmark3) - 开源 RFID 研究平台,用于跨各种 LF 和 HF 标签和系统进行底层交互、分析和测试。 * [ChameleonUltra](https://github.com/RfidResearchGroup/ChameleonUltra) - 基于开源项目 ChameleonMini 的袖珍型、功能强大的 LF 和 HF 模拟及操纵工具。 * [Bruce](https://bruce.computer/) - 专为攻击性安全和红队操作设计的功能强大的开源 ESP32 固件。 ### 软件定义无线电 * [HackRF One](https://greatscottgadgets.com/hackrf/) - 软件定义无线电外设,能够发射或接收 1 MHz 至 6 GHz 的无线电信号。 * [ADALM-PLUTO (PlutoSDR)](https://wiki.analog.com/university/tools/pluto) - 主动学习模块,用于探索软件定义无线电、RF 实验和无线通信。 * [RTL-SDR](https://www.rtl-sdr.com/) - 非常便宜的约 30 美元的 USB dongle,可用作基于计算机的无线电扫描仪,以接收您所在区域的实时无线电信号(无需互联网)。 ### 软件定义无线电软件 * [Future SDR](https://www.futuresdr.org/) - 支持具有同步或异步实现的 Block,用于基于流或基于消息的数据处理。 * [Maia SDR](https://maia-sdr.org/) - 开源的基于 FPGA 的 SDR 项目,专注于 ADALM Pluto。 ### Wifi 工具 * [Pwnagotchi](https://pwnagotchi.ai/) - 由 bettercap 提供支持并在 Raspberry Pi Zero W 上运行的基于 A2C 的“AI”,通过学习周围的 WiFi 环境来最大化其捕获的可破解 WPA 密钥材料。 * [ESP32Maurauder](https://github.com/justcallmekoko/ESP32Marauder) - 针对适用于 ESP32 的 WiFi/Bluetooth 攻击和防御工具套件。 ## 进阶学习与培训 * [Embeddedsecurity.io](https://embeddedsecurity.io/) - 面向初学者的嵌入式系统安全资源。 * [SecuringHardware.com](https://learn.securinghardware.com/) 💰 - 由 Joe Fitz [@securelyfitz](https://x.com/securelyfitz) 提供的付费硬件安全培训课程。 * [GrandIdeaStudio.com](https://grandideastudio.com/training/) 💰 - 由 Joe Grand(又名 Kingpin)提供的付费硬件破解培训。 * 故障注入和侧信道攻击 * [synacktiv - 博客](https://www.synacktiv.com/en/publications/how-to-voltage-fault-injection) - 关于电压故障注入的教程。 * [raelize.com - 博客](https://raelize.com/blog) - 对硬件破解(如故障注入和侧信道攻击)的深刻见解。 * [Microcorruption](https://microcorruption.com/) - 基于浏览器的嵌入式安全 CTF,提出了一系列基于虚构 MSP430 锁系统的挑战,涵盖了从栈溢出到高级内存破坏利用的内容。 * [MITRE eCTF](https://ectf.mitre.org/) - 年度大学生“先构建后破坏”竞赛,团队在真实的 ARM Cortex-M 微控制器上加固然后攻击彼此的固件;每年都会发布开源工具和不安全的参考设计。 * [DVID](https://github.com/Vulcainreo/DVID) - 该死的易受攻击的 IoT 设备:开源硬件 ATmega328p 开发板(已发布 Gerber 文件),专为在物理硬件上练习 UART 提取、固件转储和蓝牙嗅探攻击而打造。 * [DVRF](https://github.com/praetorian-inc/DVRF) - 该死的易受攻击的路由器固件:修改后的 Linksys 固件,包含可在 QEMU 下运行而无需物理硬件的故意设置的 MIPS/ARM 二进制漏洞利用挑战(缓冲区溢出、格式化字符串、堆漏洞)。 * [HardwareAllTheThings](https://github.com/swisskyrepo/HardwareAllTheThings) - 由 swisskyrepo 积极维护的硬件和 IoT 渗透测试 wiki,涵盖了故障注入、JTAG/SWD/UART 利用、固件转储、侧信道攻击和 RF 攻击,并提供实用的工具参考。 ## 开源情报 (OSINT) * [Awesome OSINT](https://github.com/jivoi/awesome-osint) ## 其他 Awesome 列表 安全列表清单。 * 通用安全 * [应用安全](https://github.com/paragonie/awesome-appsec) * [Android 安全](https://github.com/ashishb/android-security-awesome) * [夺旗赛](https://github.com/apsdehal/awesome-ctf) * [Hacking](https://github.com/carpedm20/awesome-hacking) * [蜜罐](https://github.com/paralax/awesome-honeypots) * [应急响应](https://github.com/meirwah/awesome-incident-response) * [恶意软件分析](https://github.com/rshipp/awesome-malware-analysis) * [安全](https://github.com/sbilly/awesome-security) * [Fuzzing](https://github.com/cpuu/awesome-fuzzing) * 嵌入式 * [通用嵌入式](https://github.com/nhivp/Awesome-Embedded) * [嵌入式和 IoT 安全](https://github.com/fkie-cad/awesome-embedded-and-iot-security) * 特定领域 * 汽车 * [CANbus](https://github.com/iDoka/awesome-canbus) * [CANb IDs](https://github.com/iDoka/awesome-automotive-can-id) * [Awesome 汽车安全](https://github.com/hexsecs/awesome-automotive-security) * 元信息 * [awesome](https://github.com/sindresorhus/awesome) * [列表](https://github.com/jnv/lists) ## 贡献 欢迎贡献!请先阅读[贡献指南](contributing.md)。
标签:LLM防护, 云资产清单, 侧信道分析, 可视化界面, 固件分析, 安全资源列表, 嵌入式安全, 物联网安全, 硬件安全, 自定义脚本, 身份验证强制, 逆向工具, 逆向工程, 防御加固, 防御绕过