iotwizz/iotwizz

GitHub: iotwizz/iotwizz

受 Metasploit 启发的模块化物联网渗透测试框架,集成硬件接口调试、固件分析和协议测试于一体。

Stars: 0 | Forks: 0

IoTwizz Logo
IoTwizz Header

License Python Repo Size Last Commit Stars

Platform AI Powered Status


一个受 Metasploit 启发的模块化 IoT 安全测试框架。
专为硬件黑客、固件分析师和 IoT 安全研究人员打造。

Quick Start Features Modules Contribute

## 概述 IoTwizz 是一个专为物联网 (IoT) 领域设计的综合性开源渗透测试框架。🔧 受 Metasploit 模块化和可扩展架构的启发,IoTwizz 充当了安全研究人员、硬件黑客和渗透测试人员的“瑞士军刀”,提供了一个统一的工具包,用于审计嵌入式设备、分析固件和测试硬件级协议。 随着 IoT 生态系统的扩展,攻击面呈指数级增长,从电路板上暴露的 UART 和 JTAG 调试接口,到硬编码凭据和易受攻击的引导加载程序。IoTwizz 通过提供一个交互式的集中控制台(由 `prompt-toolkit` 和 `rich` 驱动)来管理复杂的安全评估,从而弥合了硬件和软件利用之间的差距。 ## 功能特性
| 类别 | 模块 | 状态 | 描述 | |:--------:|:-------|:------:|:------------| | **UART** | `uart/baud_rate_finder` | Ready | 自动检测 UART 波特率 | | **Exploit** | `exploit/uboot_breaker` | Ready | 拦截 U-Boot 并获取 shell | | **Recon** | `recon/default_creds` | Ready | 测试 IoT 默认凭据 | | **Firmware** | `firmware/binwalk_analyzer` | Ready | 固件分析与提取 | | **AI** | `ai/aiwizz` | Ready | 交互式 AI 黑客助手 | | **Hardware** | `hardware/jtag_swd_scanner` | Ready | JTAG/SWD 调试接口扫描器 | | **Hardware** | `hardware/spi_flash_dumper` | Ready | SPI flash 固件转储器 | | **Protocol** | `protocol/mqtt_fuzzer` | Ready | MQTT 协议模糊测试器 | | **Protocol** | `protocol/coap_fuzzer` | Ready | CoAP 协议模糊测试器 | | **Wireless** | `wireless/ble_scanner` | Ready | 蓝牙低功耗 (BLE) 扫描器 | | **Wireless** | `wireless/zigbee_sniffer` | Ready | Zigbee/Z-Wave 嗅探器 |
## 快速开始 ### 安装 ⚡ ``` # Clone the repository git clone https://github.com/iotwizz/iotwizz.git cd iotwizz # Install dependencies pip install -r requirements.txt # Install IoTwizz pip install -e . # Launch iotwizz ``` ### 独立二进制文件(无需 Python) 对于 macOS 用户,提供了完全独立的二进制文件: ``` ./dist/iotwizz ``` ### 基本用法 ``` iotwizz > show modules # List all modules iotwizz > use uart/baud_rate_finder # Select a module iotwizz(uart/baud_rate_finder) > info # View module info iotwizz(uart/baud_rate_finder) > set PORT /dev/ttyUSB0 iotwizz(uart/baud_rate_finder) > run # Execute ``` ## 模块 ### UART 波特率查找器 自动检测 UART 串行连接的波特率。 ``` iotwizz > use uart/baud_rate_finder iotwizz(uart/baud_rate_finder) > set PORT /dev/ttyUSB0 iotwizz(uart/baud_rate_finder) > run ``` ### U-Boot Breaker 拦截 U-Boot 启动序列以获取引导加载程序 shell 访问权限。 ``` iotwizz > use exploit/uboot_breaker iotwizz(exploit/uboot_breaker) > set PORT /dev/ttyUSB0 iotwizz(exploit/uboot_breaker) > set BAUD_RATE 115200 iotwizz(exploit/uboot_breaker) > run # Power cycle the device when prompted ``` ### 默认凭据检查器 通过 SSH、Telnet、HTTP 或 FTP 测试 IoT 设备的默认/已知凭据。 ``` iotwizz > use recon/default_creds iotwizz(recon/default_creds) > set TARGET 192.168.1.1 iotwizz(recon/default_creds) > set SERVICE ssh iotwizz(recon/default_creds) > run ``` ### 固件分析器 使用 binwalk 分析固件镜像,进行签名扫描、熵分析和提取。 ``` iotwizz > use firmware/binwalk_analyzer iotwizz(firmware/binwalk_analyzer) > set FIRMWARE_FILE ./firmware.bin iotwizz(firmware/binwalk_analyzer) > set EXTRACT true iotwizz(firmware/binwalk_analyzer) > run ``` ### AiWizz (AI 黑客助手) 与控制 IoTwizz 并为您分析结果的 AI 专家对话。 ``` iotwizz > use ai/aiwizz iotwizz(ai/aiwizz) > set PROVIDER gemini iotwizz(ai/aiwizz) > set API_KEY your_key_here iotwizz(ai/aiwizz) > run AiWizz > "Scan 192.168.1.1 for default SSH credentials" ``` ## 创建自定义模块 IoTwizz 拥有强大的插件架构。通过 5 个步骤添加新模块: ``` from iotwizz.base_module import BaseModule from iotwizz.utils.colors import success, error, info class MyCustomModule(BaseModule): def __init__(self): super().__init__() self.name = "My Custom Tool" self.description = "Does something awesome" self.author = "Your Name" self.category = "recon" self.options = { "TARGET": { "value": "", "required": True, "description": "Target to scan", }, } def run(self): target = self.get_option("TARGET") info(f"Scanning {target}...") # Your exploit logic here success("Done!") ``` 1. 在 `iotwizz/modules//` 中创建 `.py` 文件 2. 继承 `BaseModule` 3. 定义 `name`、`description`、`author`、`category`、`options` 4. 实现 `run()` 方法 5. 自动发现机制会处理其余工作 ## 系统要求 ### 核心依赖 ``` python >= 3.8 pyserial # Serial/UART communication rich # Beautiful terminal output prompt-toolkit # Interactive console paramiko # SSH connections requests # HTTP requests scapy # Network packet crafting paho-mqtt # MQTT protocol ``` ### AI 提供商(可选) ``` google-generativeai # Gemini openai # GPT models anthropic # Claude ollama # Local LLMs ``` ### 可选 ``` binwalk # Firmware analysis (system package) ``` ## 安全免责声明 ⚠️ - 仅在您 **拥有** 或有 **明确书面许可** 进行测试的设备和网络上使用 - 未经授权访问计算机系统是 **违法的** - 作者对误用或造成的损害 **不承担任何责任** ## 许可证 本项目采用 **知识共享署名-非商业性使用 4.0 国际许可协议** 授权。 [![License: CC BY-NC 4.0](https://img.shields.io/badge/License-CC%20BY--NC%204.0-lightgrey.svg?style=for-the-badge)](http://creativecommons.org/licenses/by-nc/4.0/) **您可以自由地:** - 分享:复制并重新分发材料 - 改编:混音、转换和基于材料进行构建 **须遵守以下条款:** - 署名:您必须提供适当的署名 - 非商业性使用:您不得将材料用于商业目的 ## 致谢 - 灵感来源于 [Metasploit Framework](https://www.metasploit.com/) - 使用 [Rich](https://github.com/Textualize/rich) 和 [prompt-toolkit](https://github.com/prompt-toolkit/python-prompt-toolkit) 构建 - 感谢 IoT 安全研究社区

Khushal Mistry 构建

GitHub


Happy Hacking 💀

Profile Views
标签:AI驱动, IoT安全, Petitpotam, PKINIT, Python, UART接口, 二进制发布, 凭证提取, 固件分析, 固件逆向, 域名收集, 对称加密, 嵌入式安全, 工控安全, 开源工具, 引导程序, 文档安全, 无后门, 模块化插件, 渗透测试框架, 物联网, 硬件黑客, 网络安全, 自动化审计, 逆向工具, 防御, 隐私保护