J4ck3LSyN-Gen2/CVE-2026-13768

GitHub: J4ck3LSyN-Gen2/CVE-2026-13768

CVE-2026-13768 概念验证工具,演示 Azure IoT Hub 所有者密钥泄露如何导致 Gardyn IoT 设备群的远程代码执行。

Stars: 0 | Forks: 0

# CVE-2026-13768 - Gardyn IoT Hub 所有者密钥泄露 ## 概述 CVE-2026-13768 在 Gardyn 智能花园系统中暴露了 IoT Hub 所有者级别的连接字符串,允许对 Azure IoT Hub 进行完全的管理控制。此 PoC 演示了拥有所有者密钥的攻击者如何通过 `upgrade()` 云到设备方法中的命令注入,在连接的设备上实现 **远程代码执行 (RCE)**,从而导致全设备群的沦陷。 该套件包括: - 一个 **被动验证** 工具 (`validate.py`) - 一个 **武器化漏洞利用** 框架 (`poc.py`) - 一个用于演示的轻量级 **C2 服务器** (`c2s.py`) **这是一个持续更新的研究项目** - 请负责任地使用它,以了解和防御供应链及 IoT 云配置错误。 ## 功能 - **被动验证**:安全地验证所有者密钥的有效性并枚举设备,不会进行任何更改 - **设备群枚举**:列出注册到 IoT Hub 的所有设备 - **远程代码执行**:通过 `upgrade()` 方法注入命令(利用 CVE-2025-29631 命令注入漏洞) - **横向移动**:从受感染设备进行局域网扫描的示例 - **权限维持**:维持访问权限的示例技术 - **OPSEC 功能**:Payload 混淆、操作日志记录、可选的 TLS 绕过(用于实验室环境) - **C2 集成**:用于交互式会话的简单命令控制服务器 ## 目录结构 ``` . ├── poc.py # Main weaponized exploitation script ├── validate.py # Safe, read-only validation tool ├── c2s.py # Lightweight C2 server for demos ├── README.md ``` ## 依赖 - Python 3.8+ - Azure IoT Hub SDK ## 安装说明 1. 克隆仓库: git clone https://github.com/J4ck3LSyN-Gen2/CVE-2026-13768.git cd CVE-2026-13768 python3 -m venv venv 2. 激活虚拟环境(或创建一个): source venv/bin/activate python3 -m pip install --upgrade pip 3. 安装依赖。 ``` python3 -m pip install azure-iot-hub ``` ## 用法 ### 1. 被动验证(强烈推荐) ``` python validate.py --conn-str "HostName=yourhub.azure-devices.net;SharedAccessKeyName=iothubowner;SharedAccessKey=..." ``` **退出代码 0** = 有效的所有者密钥且具有可访问的设备。不会进行任何修改。 ### 2. 完整漏洞利用(仅限授权目标) ``` python poc.py \ --mode exploit \ --conn-str "HostName=..." \ --device-id "target-device-123" \ --command "whoami" \ --lateral-scan \ --persist ``` #### 关键参数 | 参数 | 描述 | 必填 | |-------------------|--------------------------------------------------|----------| | `--mode` | `validate` 或 `exploit` | 否 (默认: validate) | | `--conn-str` | IoT Hub 所有者连接字符串 | 是 | | `--device-id` | 目标设备 ID | 是 (exploit 模式) | | `--command` | 通过 `upgrade()` 注入执行的命令 | 否 (默认: `id`) | | `--lateral-scan` | 从设备启用局域网侦察 | 否 | | `--persist` | 尝试权限维持 (例如:cron, systemd) | 否 | | `--c2` | 连回 C2 服务器 | 否 | 运行 `python poc.py --help` 获取完整选项。 ### 3. C2 服务器 (演示) ``` python c2s.py --port 4444 ``` ## 工作原理 (技术摘要) 1. **密钥验证** → 使用 Azure IoT Hub SDK 以 `iothubowner` 身份进行身份验证 2. **枚举** → 检索设备注册表和 twin 数据 3. **RCE 原语** → 滥用 `upgrade()` 直接方法中的命令注入 4. **后渗透** → 可选的横向移动 + 权限维持 payload 5. **混淆** → 基本的字符串编码(易于扩展至 AES/自定义方式) ## OPSEC 与安全注意事项 - **日志记录**:默认写入 `/tmp/cve_2026_13768.log`。在实际测试中应替换为加密数据外发。 - **混淆**:扩展提供的 `obfuscate_cmd()` / `deobfuscate_cmd()` 函数。 - **测试**:**务必**首先在隔离的实验室环境中进行测试。 - **清理**:制定回滚计划。该漏洞利用可能会在设备上留下痕迹。 ## 参考 - [CISA 公告 ICSA-26-183-03](https://www.cisa.gov/news-events/ics-advisories/icsa-26-183-03) - [相关的 CVE-2025-29631](https://www.cisa.gov/news-events/ics-advisories/icsa-26-055-03) - Azure IoT Hub 文档
标签:Azure IoT, IoT安全, PoC, 命令与控制, 无线安全, 暴力破解, 编程工具, 网络信息收集, 远程代码执行, 逆向工具