面向授权测试与 AI/MCP 攻击面审计的 local-first、MCP-native 安全自动化工作台。
!Python
!License
!
!Status
中文 · English · Русский
能力成熟度 · 安全模型 · 安全审计
> Beta / Research Preview — 优先支持静态分析、dry-run 与本地靶场。exploit、横向移动、持久化、C2、数据外传等高风险能力属于受限实验特性;policy 与 sandbox 元数据不等同于操作系统或容器级隔离。
AutoRedTeam-Orchestrator 在单一代码库中提供可组合的安全能力,并通过三个入口暴露:MCP Server、Python SDK 与 Typer CLI。产品主线是 AI 辅助的安全自动化——让 AI 编辑器与 Agent 通过 MCP 使用受控的安全能力,并对 AI/MCP 系统自身的攻击面做静态审计。
适用于授权实验、安全自动化研发、AI/MCP 安全审计、CTF 与教学。不是开箱即用的企业平台、自主攻击 Agent 或生产级 C2。
| 能力域 | 状态 | 边界 |
|---|---|---|
| 侦察与漏洞检测(JSON/SARIF) | Beta | 仅限授权目标;暂无公开准确率基准 |
| AI/MCP 攻击面静态自审 | Preview | 只读 AST → SARIF;覆盖 FastMCP 与 low-level SDK |
| CVE 情报与 PoC | Preview | NVD 同步、Nuclei 兼容执行 |
| 报告(JSON/SARIF/HTML) | Beta | HTML 转义加固进行中 |
| 编排 / 利用 / 后渗透 / C2 / 横向 / 持久化 | Restricted Experimental | 仅限一次性隔离靶场 |
完整定义见能力成熟度。
单行安装(安装 autort 与 autoredteam-mcp 两个命令):
等不及 PyPI 发布,从 Git 直装:
从源码运行(开发):
只读、无网络的起步命令:
MCP Server 把安全能力暴露为 MCP 工具,供 AI 编辑器或 Agent 调用。它是 local-first 的:无云端、无遥测,仅限受信本地 stdio。
两种等价方式:
--stdio 选择 stdio 传输,这正是 MCP 客户端(Claude Code、Cursor、Windsurf、Kiro 等)所用的方式。
Claude Code、Cursor 等 MCP 客户端读取 mcpServers 键下的 JSON 配置。本项目最小 .mcp.json:
AUTORT_CAPABILITY_PROFILE 决定注册哪些工具(见能力档案)。省略则回退到 fail-closed 的 safe 默认值。
档案按以下顺序解析:显式参数 → AUTORT_CAPABILITY_PROFILE 环境变量 → safe 默认值。任何 minimum_profile 高于所选档案的工具都不会注册,任何未在 manifest 中分类的 surface 会在注册阶段 fail-closed(CapabilityManifestError)。
| 变量 | 取值 | 默认 | 含义 |
|---|---|---|---|
| AUTORT_CAPABILITY_PROFILE | safe \| scan \| acti \| full | safe | 注册为 MCP 工具的能力层级 |
| AUTOREDTEAM_AUTH_MODE | strict \| permissive \| disabled | strict | 受保护工具的授权门禁 |
| AUTOREDTEAM_API_KEY | 任意字符串 | *(未设置)* | strict 模式校验的 API Key;MCP_API_KEY 为等价别名 |
SDK 是 core/ 引擎之上的薄异步封装,从源码 checkout 导入:
所有调用均为 async,返回 dict(少数扫描方法返回列表)。成功以 "success": True 标记;失败携带真实的 "error" 字符串,不吞异常。
关键方法:full_recon()、port_scan(ports="1-1000", top=None)、detect_vulns(categories=None, config=None)、fingerprint()、waf_detect()、subdomain_enum(domain=None)、passi(domain=None)、nuclei_scan(tags=None, se=None, template_dir=None, concurrency=10, limit=None)。
c(keyword, se=None, has_poc=None, limit=20) 仅做情报查询,在 safe 档案即可用。c(cve)、auto_exploit(top_n=5)、exploit(vuln, **kwargs) 需要 acti(及以上)、授权的一次性目标、隔离执行器与 API Key。
run(phases=None) 驱动 RECON → → POC_EXEC → EXPLOIT → PRIV_ESC → LATERAL → EXFIL → REPORT 流水线。resume(session_id) 续跑中断的会话;status(session_id) 读取实时状态。这是 full 档案能力,仅在隔离、授权的靶场运行。
RedTeam(config=None) 聚合横向移动、C2、持久化、提权与凭据发现:lateral_mo, method="ssh", ...)、c2_start(host, port=443, protocol="https")、persist(target="", method="crontab", ...)、privesc(target, ...)、credential_find(...)。所有方法返回 {"success": bool, ...}。它们属于 full 档案、需审批、隔离执行器的 surface,此处仅作目录列出,不写调用示例。
Typer CLI 是本地分析的主入口,也是安装后的 autort 命令;源码下用 python -m cli.main。
| 命令 | 用途 | 示例(仅限授权目标) |
|---|---|---|
| scan | 端口扫描 / 完整侦察 | autort scan --full |
| detect | 漏洞检测 | autort detect -c sqli,xss,ssrf --format sarif |
| exploit | CVE / 自动利用 | autort exploit --c |
| c | CVE 情报 | autort c "Log4j" --se critical --has-poc -n 20 |
| pentest | 一键编排 | autort pentest --phases recon, |
| report | 生成报告 | autort report <session-id> -f html |
| nuclei | 纯 Python Nuclei 扫描 | autort nuclei -t cve,rce -s high,critical |
| tools | 外部工具状态 | autort tools |
| | 显示版本 | autort |
detect(以及 ai-* 扫描器)的 CI 友好参数:--ci 输出精简摘要,并在发现达到 --se(info/low/medium/high/critical)的项时返回非零退出码。
| 分组 | 命令 | 用途 |
|---|---|---|
| ai-redteam | run、catalog、convert、e | 声明式 AI 红队场景(默认 dry-run) |
| ai-surface | scan、scan-mcp-config、scan-skills | 静态 AI/MCP 攻击面盘点(只读) |
| code-agent | expand | 调用链上下文扩展(不执行代码) |
| runtime-api | serve | 只读本地 runtime API(/api/runs) |
| sandbox | docker-smoke | 本地 Docker 沙箱 smoke |
| capabilities | matrix、readiness、manifest、profiles | 能力 manifest 与覆盖 |
| tools | lint | MCP 工具契约检查(静态) |
只读、无网络的起步命令:
档案是有序的暴露层级,每个继承上一个:
| 档案 | 包含 | 运行边界 |
|---|---|---|
| safe | 本地分析、dry-run、元数据、受控本地状态 | 受信本地进程;无目标网络访问或主机命令执行 |
| scan | safe + 授权侦察与漏洞扫描 | 需明确目标范围与外部网络控制 |
| acti | scan + 利用验证与攻击规划 | 需一次性靶场、独立审批、隔离执行器 |
| full | 全部 surface,含后渗透与受限研究特性 | 仅显式 opt-in 的隔离、授权、一次性环境 |
查看实时定义:
授权通过装饰器按工具施加。由 AUTOREDTEAM_AUTH_MODE 选择,共三档:
| 模式 | 行为 |
|---|---|
| strict(默认) | 受保护工具要求有效 API Key(AUTOREDTEAM_API_KEY 或 MCP_API_KEY) |
| permissive | 记录警告但放行 |
| disabled | 不校验——仅在 AUTOREDTEAM_ENV=test 或设置 PYTEST_CURRENT_TEST 时生效 |
manifest(core/capability_manifest.py)是每个暴露 MCP surface 的机器可读、单一事实来源。每条声明 kind、name、handler、category、minimum_profile、risk、maturity,以及必需控制——auth_required、appro 与 executor(in-process / external-process / isolated-required)。任何未分类的 surface 注册即 fail-closed。
required_controls 字段是声明式的:它们只控制 MCP schema 暴露,不负责强制。它们不替代认证、目标范围、独立审批或隔离执行器。
对你自己的仓库做纯静态审计:盘点 MCP server 与 AI agent 工具的攻击面,结果以 file:line 精度进入 GitHub Code Scanning。无需 target、网络、secret 或授权。
作为 GitHub Action 在每个 PR 上运行(完整示例见 self-audit.example.yml):
或本地运行:
审计外部仓库时,以 --auth-mode lenient 抑制项目特化的授权判定。
core/;MCP Server、SDK(autort/)与 CLI(cli/main.py)都是同一引擎之上的薄适配层。能力只实现一次,而非三遍。safe 档案,而非最宽的。safe/scan/acti/full)在注册阶段过滤工具,但不替代认证、目标范围、独立审批或隔离执行器。详见安全模型与能力成熟度。
MIT License,见 LICENSE。
仅供明确授权的安全测试、内部验证、教育研究与本地实验使用。使用者须遵守适用法律并取得目标所有者的书面授权;禁止用于未授权的扫描、利用、持久化、数据外传或规避安全控制。
开发语言:Python
Star 数:265
该项目属于红蓝攻防方向的开源资源,代码结构清晰,适合安全研究人员学习参考。项目围绕MCP-native security automation workbench (SDK + CLI + MCP) — authorized testing + static AI/MCP attack-surface self-audit to SARIF / GitHub Code Scanning展开,提供了可运行的实现,对理解相关安全机制、工具原理与攻防技术具有较高的研究价值。
从技术实现角度看,此类项目的核心在于对底层原理的深入理解与工程化落地。开发者在研究过程中可以结合官方文档与社区讨论,梳理项目的初始化流程、核心模块职责与数据流转,逐步掌握其中的技术细节与设计思路。
1. 下载源码压缩包,解压到本地环境。
2. 根据项目类型准备对应的运行环境与依赖。
3. 按照 README 中的步骤完成配置与部署。
4. 在隔离的测试环境中运行验证,避免影响生产系统。
本资源来源于开源社区,仅供安全研究、技术学习与合法授权范围内的攻防演练使用,请勿用于任何非法或侵害他人权益的用途。使用本项目产生的一切后果由使用者自行承担。
| 资源标题 | AutoRedTeam-Orchestrator - MCP-native security automation workbench (SDK + CL |
| 所属分类 | 红蓝攻防 |
| 发布作者 | admin |
| 发布时间 | 2026-10-06 00:45:07 |
| 下载权限 | 免费下载 |
| 附件数量 | 2 个下载链接 |
| 浏览次数 | 121 |
| 讨论数量 | 0 |
| 主题状态 | 正常讨论中 |