s-b-repo/rustsploit

GitHub: s-b-repo/rustsploit

Rustsploit 是一个用 Rust 构建的模块化渗透测试框架,针对嵌入式目标和网络服务提供 exploit、扫描与凭证攻击能力,并通过 Shell、CLI、PQ 加密 API 和 MCP 服务器四种接口暴露统一模块库。

Stars: 58 | Forks: 8

# Rustsploit 用于嵌入式目标的模块化攻击工具,使用 Rust 编写,灵感来源于 RouterSploit/Metasploit。单个二进制文件通过**四种接口**——交互式 shell、命令行运行器、后量子加密 REST/WebSocket API 以及 MCP 服务器——暴露相同的模块库,涵盖了针对路由器、摄像头、设备和通用网络服务且不断增长的 exploit、扫描器和凭证模块库,并内置了 **Recog** 服务指纹识别和 **JARM/JA3** TLS 指纹识别。 ![Rustsploit Interactive Shell Demo](https://static.pigsec.cn/wp-content/uploads/repos/cas/4a/4afb9629ac9efe8cda4319ee7a21a8bcce54639782f40cc6d7b2a996e1dc3cdf.png) ![Rustsploit Testing View](https://static.pigsec.cn/wp-content/uploads/repos/cas/85/85e8b7c9f43c19d75999cd37a81ecaaa3f754e293f9af444d9f8036f1478793d.png) ## 📖 Wiki 与文档 完整文档位于 **[Rustsploit Wiki](docs/Home.md)**。以下是快速索引——点击查看详细的指南、示例和参考资料。 | 文档 | 描述 | |----------|-------------| | [快速开始](docs/Getting-Started.md) | 安装、构建、快速入门、Docker 部署 | | [交互式 Shell](docs/Interactive-Shell.md) | Shell 演练、命令面板、链式执行、快捷方式 | | [CLI 参考](docs/CLI-Reference.md) | 命令行参数、非 Shell 用法、输出格式 | | [API 服务器](docs/API-Server.md) | REST + WebSocket API、PQ 加密、endpoint、速率限制 | | [API 用法示例](docs/API-Usage-Examples.md) | 实用的 curl 工作流、请求/响应示例 | | [模块目录](docs/Module-Catalog.md) | 按分类列出所有模块 — exploit、扫描器、凭证 | | [模块开发](docs/Module-Development.md) | 如何编写新模块、生命周期、dispatcher | | [不良模式目录](docs/BAD_PATTERNS.md) | 每个模块都必须通过的 133 个正则表达式 `grep` 矩阵 — 禁用 `.unwrap`、异常吞噬、panic、阻塞式 IO、有损类型转换、加密、注入等。可通过 `scripts/audit-bad-patterns.sh` 重新运行 | | [不良模式审计报告](docs/audit-report.md) | 最新的全树快照 — 在 100 个已编写模块上的严格模式结果(零命中)以及对框架其余部分的观察计数 | | [安全与验证](docs/Security-Validation.md) | 输入验证、安全模式、蜜罐检测 | | [凭证模块指南](docs/Credential-Modules-Guide.md) | 暴力破解/凭证模块的最佳实践 | | [Exploit 模块指南](docs/Exploit-Modules-Guide.md) | exploit 模块的最佳实践 | | [实用工具与辅助程序](docs/Utilities-Helpers.md) | `utils.rs` 公共 API、目标标准化、蜜罐检测 | | [测试与 QA](docs/Testing-QA.md) | 构建检查、冒烟测试、字典验证 | | [更新日志](docs/Changelog.md) | 发行说明和版本历史 | | [贡献指南](docs/Contributing.md) | Fork 指南、PR 检查清单、代码风格 | | [鸣谢](docs/Credits.md) | 作者、致谢、法律声明 | ## 核心亮点 - **自动注册模块:** 模块在编译时通过 `inventory` crate 注册 — 添加文件、调用 `register_native_module!` 并在父级 `mod.rs` 中添加一行 `pub mod ;` 即可;无需构建脚本索引器 - **交互式 shell:** 40 多个带快捷方式的命令、命令链 (`&`)、Tab 补全和命令历史记录 - **模块元数据:** 每个模块的 `info()` — CVE 引用、作者、排名。该框架仅用于 exploit:模块运行 exploit 并报告发现(没有 `check()` / 非破坏性验证阶段) - **全局选项 (`setg`):** 适用于所有模块的持久化键值设置 — 类似于 Metasploit 的 datastore - **凭证存储:** 使用 `creds` 命令和 JSON 持久化跨会话跟踪发现的凭证 - **主机/服务跟踪:** 基于工作区的交互跟踪,包含 `hosts`、`services`、`notes` 命令 - **Loot 管理:** 结构化的证据收集,带有文件存储和元数据索引 - **资源脚本:** 从文件自动化工作流,自动加载启动脚本,使用 `makerc` 保存命令历史 - **后台任务:** 使用 `run -j` 异步运行模块,使用 `jobs` 命令进行管理 - **导出/报告:** 将所有交互数据导出为 JSON、CSV 或人类可读的摘要报告 - **控制台日志与自动保存:** `spool` 可按需将所有输出捕获到文件中;此外,**每次控制台/CLI 模块运行都会自动保存**(追加模式)到 `~/.rustsploit/loot/
标签:Rust, XXE攻击, 云存储安全, 可视化界面, 嵌入式设备安全, 插件系统, 漏洞利用框架, 网络扫描, 网络流量审计, 请求拦截, 通知系统