reallyngb/redteam-operations-framework

GitHub: reallyngb/redteam-operations-framework

一个基于插件架构的红队侦察自动化框架,专注于授权安全评估中的信息收集与多格式报告生成,不包含漏洞利用功能。

Stars: 0 | Forks: 0

# 红队行动框架 一个模块化、基于插件的自动化框架,用于授权安全评估中的**被动侦察/枚举和报告**阶段。 ## 当前功能 | 模块 | 功能 | 技术 | |---|---|---| | `dns_enumeration` | 解析 A/AAAA/MX/TXT/NS/SOA/CNAME 记录 | 标准 DNS 查询 | | `cert_transparency` | 发现子域名 | 被动 CT 日志搜索 (crt.sh) | | `port_scan` | 查找目标主机上开放的 TCP 端口 | TCP connect 扫描(相当于 `nmap -sT`) | | `web_enumeration` | 识别技术栈,检查常见路径 | HTTP 标头检查 + HEAD 请求 | 每个模块都会输出统一的 `Finding` 格式,因此报告引擎可以从任意模块组合中生成 **JSON、Markdown、HTML 和 CSV** 报告,而无需编写特定于模块的报告代码。 ## 架构 ``` src/redteam_framework/ ├── core/ # config, logging, data models, plugin base class + registry ├── modules/ │ ├── recon/ # DNS, cert transparency, port scan, web enum │ └── reporting/ # multi-format report generator ├── plugins/ # drop your own plugins here (see docs/plugin-development.md) ├── templates/ # Jinja2 report templates (Markdown/HTML) ├── orchestrator.py # runs enabled modules, aggregates results └── cli.py # Typer CLI entry point ``` 模块通过继承 `RedTeamModule` 类,实现 `async def run()`,并通过 `@registry.register` 进行自注册。编排器和 CLI 永远不会硬导入单个模块——它们通过注册表发现模块,因此添加模块完全不需要修改编排代码。 ## 快速开始 ``` # 安装 poetry install # 复制并使用您授权的 scope 编辑示例 config cp config/example.yaml config/my_engagement.yaml # 查看可用内容 poetry run redteam list-modules # 在运行前验证您的 config poetry run redteam validate-config --config config/my_engagement.yaml # 运行它 poetry run redteam run --config config/my_engagement.yaml ``` 报告将存放在 `./reports/`,结构化日志将存放在 `./logs/`。 ## Docker ``` docker compose -f docker/docker-compose.yml up --build ``` ## 开发 ``` poetry install poetry run pre-commit install poetry run ruff check src tests poetry run black --check src tests poetry run mypy src poetry run bandit -r src -ll poetry run pytest ``` 所有四项检查和完整的测试套件都会在 CI (`.github/workflows/ci.yml`) 中强制执行,适用于每次推送和拉取请求。 ## 添加模块 1. 在 `src/redteam_framework/modules/recon/` 下创建文件(或创建一个新的子包)。 2. 继承 `RedTeamModule` 类,设置 `name` 和 `description`,并实现 `async def run() -> ModuleRunResult`。 3. 使用 `@registry.register` 装饰该类。 4. 在相关的包 `__init__.py` 中导入它,以便运行装饰器。 5. 将其添加到配置的 `modules:` 块中。 ## 路线图 - [ ] Windows / Linux / Active Directory 枚举模块 - [ ] 云资产发现 (AWS / Azure / GCP) - [ ] 容器/Kubernetes 枚举 - [ ] 针对每个发现的 MITRE ATT&CK 自动映射 - [ ] 用于触发运行和获取报告的 REST API - [ ] 基于 PostgreSQL 的运行历史记录 ## 许可证 MIT — 查看 [LICENSE](LICENSE)。
标签:GitHub, Python, 动态插桩, 动态调用, 安全报告生成, 实时处理, 密码管理, 插件化框架, 无后门, 自动化侦察, 请求拦截, 逆向工具