Nester420/Firmware-Hunter-Pro

GitHub: Nester420/Firmware-Hunter-Pro

一款离线固件静态分析工具,通过提取和扫描嵌入式设备固件文件系统来发现硬编码凭据、可疑字符串、组件版本及潜在攻击面。

Stars: 10 | Forks: 1

Firmware_Hunter # Firmware Hunter Pro Firmware Hunter Pro 是一款离线固件分析和筛查工具,专为以下嵌入式 Linux 设备设计: * 路由器 * IP 摄像头 * DVRs * 智能家居设备 * IoT 硬件 * 其他基于 Linux 的嵌入式系统 该工具会扫描提取出的固件文件系统或原始固件镜像,并生成报告以帮助识别: * 硬编码凭据 * 敏感文件 * 嵌入式 Web 界面 * 引起关注的二进制文件 * 可疑字符串 * 潜在的恶意软件指标 * 组件版本 * 潜在攻击面 Firmware Hunter Pro 适用于: * 固件研究 * 硬件黑客实验室 * 嵌入式 Linux 分析 * 教育用途 * 授权的安全测试 # 工具功能 Firmware Hunter Pro 执行离线文件系统分析。 它不会: * 执行固件二进制文件 * 利用漏洞攻击设备 * 自动攻击系统 * 模拟固件 * 自动连接到外部系统 该工具通过读取文件并搜索模式、指标、配置数据和嵌入式组件来工作。 # 主要功能 ## 自动提取固件 支持使用 Binwalk 进行自动提取。 示例: ``` python3 firmware_hunter_pro_v4.py firmware.bin --extract ``` 该工具将: 1. 运行 Binwalk 2. 提取嵌入式文件系统 3. 尝试定位根文件系统 4. 扫描提取的内容 5. 生成报告 ## 凭据发现 搜索: * 硬编码密码 * Wi-Fi 密钥 * API 密钥 * JWT token * MQTT 凭据 * 管理员用户名 * 存储在配置中的机密信息 ## Web 界面映射 搜索: * CGI 脚本 * 登录页面 * 管理员路由 * 固件更新页面 * API endpoint * JavaScript 引用 有助于识别嵌入式的 Web 管理界面。 ## 固件组件检测 尝试识别: * BusyBox 版本 * Linux 内核版本 * OpenSSL 引用 * Dropbear 引用 * dnsmasq 引用 * 嵌入式 Web 服务器 该工具使用字符串和配置分析进行检测。 ## IOC 和可疑字符串检测 搜索与以下内容相关的可疑字符串和已知指标 (IOC): * Mirai * Gafgyt/Bashlite * Mozi * XorDDoS * 挖矿程序 * 反向 shell 行为 检测是基于启发式和字符串的。 该工具不会执行行为恶意软件分析。 ## ELF 和架构分析 识别: * ELF 二进制文件 * CPU 架构提示 * 字节序 * 二进制元数据 ## 熵分析 标记可能包含以下内容的高熵文件: * 打包数据 * 加密数据 * 压缩二进制大对象 * 二进制固件组件 ## YARA 集成 可选的 YARA 扫描支持。 示例: ``` python3 firmware_hunter_pro_v4.py firmware.bin --extract --yara rules.yar ``` ## 插件支持 支持简单的 Python 插件。 插件可用于: * 特定厂商的解析 * 自定义 IOC 检查 * 附加扫描逻辑 # 输出 该工具生成: | 文件 | 描述 | | -------------------------- | ----------------- | | firmware_report.html | HTML 报告 | | firmware_report.txt | 主文本报告 | | summary.txt | 快速摘要 | | full_report.json | JSON 报告 | | findings.csv | CSV 导出 | | firmware_report.md | Markdown 报告 | | 分类证据文件 | 独立的发现结果 | 示例: * credential_findings.txt * web_routes.txt * components.txt * malware_iocs.txt * interesting_binaries.txt # 安装说明 ## 前置条件 * Python 3.9+ * 推荐 Linux ## 安装依赖 ### 必需 ``` sudo apt install python3 binwalk ``` ### 推荐 ``` sudo apt install squashfs-tools mtd-utils p7zip-full xz-utils ``` ### 可选 ``` sudo apt install yara ``` # 用法 ## 扫描提取的固件 ``` python3 firmware_hunter_pro_v4.py squashfs-root ``` ## 扫描原始固件镜像 ``` python3 firmware_hunter_pro_v4.py firmware.bin --extract ``` ## 快速模式 跳过大于 10 MB 的文件。 ``` python3 firmware_hunter_pro_v4.py firmware.bin --extract --quick ``` ## 多线程 ``` python3 firmware_hunter_pro_v4.py firmware.bin --extract -j 16 ``` ## 使用插件 ``` python3 firmware_hunter_pro_v4.py firmware.bin --extract --plugins plugins/ ``` # 示例工作流 ## 1. 获取固件 示例: ``` flash_dump.bin ``` ## 2. 运行 Firmware Hunter Pro ``` python3 firmware_hunter_pro_v4.py flash_dump.bin --extract ``` ## 3. 查看报告 推荐的起始查看点: 1. summary.txt 2. credential_findings.txt 3. web_routes.txt 4. components.txt 5. firmware_report.html # 关于检测的说明 Firmware Hunter Pro 主要使用: * 字符串分析 * 正则表达式匹配 * 文件检查 * 元数据提取 * 启发式分析 该工具可能会产生: * 误报 * 不完整的检测 * 通用匹配 所有发现都应进行人工审查。 该工具旨在作为筛查和研究的辅助工具,不能替代人工的固件分析。 # 安全提示 避免在敏感的生产系统上运行分析工具。 # 预期用途 Firmware Hunter Pro 适用于: * 教育用途 * 固件研究 * 逆向工程 * 硬件安全测试 * 授权的安全分析 用户有责任遵守所有适用的法律和法规。 请勿对您不拥有或未获授权分析的设备或固件使用此工具。
标签:Binwalk, StruQ, 固件分析, 敏感信息发现, 物联网, 聊天机器人, 调试插件, 逆向分析, 逆向工具