Monster-Gaming-ai/security-agents

GitHub: Monster-Gaming-ai/security-agents

面向 AI Agent 集群基础设施的自主安全 Agent 套件,通过防御监控、红队攻击模拟和持续改进三个 Agent 构建完整的安全闭环。

Stars: 0 | Forks: 0

# 安全 Agent 用于 AI 集群基础设施的自主安全 Agent。三个 Python Agent,可针对运行 AI Agent 集群的系统持续监控、进行渗透测试并改善其安全态势。 在由 145 个 AI Agent 组成的生产集群上构建并经过实战检验。由 [Monster Gaming](https://monstergaming.ai) / [Luxedeum, LLC](https://luxedeum.ai) 开源。 **博客文章:** [我们构建了每 6 小时入侵我们自己基础设施的 AI Agent](https://blog.monstergaming.ai/we-built-ai-agents-that-hack-our-own-infrastructure-every-6-hours/) ## Agent ### sentinel.py -- 防御性监控 源自真实世界威胁情报的 12 项启发式检查: | 来源 | 数量 | 检查内容 | |--------|-------|-----------------| | PAN Unit 42 | 6 | 凭证暴露、文件权限、网络绑定、NATS 认证、二进制完整性、prompt 访问权限 | | Verizon DBIR | 4 | HTTP endpoint 认证、数据库权限隔离、错误信息披露、检测延迟 | | MITRE ATT&CK | 2 | 意外端口 (T1046)、未授权的 systemd 服务 (T1543.002) | 每小时运行一次。SIGHUP 触发立即重新扫描。在可配置端口上提供 HTTP 健康检查。 ### adversary.py -- 进攻性红队 9 个切实探测您基础设施的攻击 playbook: 1. **侦察** -- 端口扫描 + banner 抓取 2. **凭证收集** -- 在文件系统中使用 grep 搜索 API key 3. **Web 应用攻击** -- SQLi、XSS、路径遍历、SSRF、命令注入 4. **NATS 消息注入** -- 测试消息总线认证 5. **权限提升** -- 数据库角色边界测试 6. **Prompt 注入检测** -- 扫描 LLM 响应日志以查找泄露 7. **横向移动** -- 跨服务访问路径映射 8. **数据窃取** -- 爆炸半径量化 9. **DoS 弹性** -- 支出上限与连接限制的余量 快速周期 (6h):模块 1-3。深度周期 (24h):全部 9 个模块。默认开启安全模式。SIGUSR1 紧急停止。 ### cie.py -- 持续改进引擎 每周一次的 5 阶段元改进周期: 1. **衡量** -- 截取集群指标和安全态势快照 2. **研究** -- 汲取来自前沿实验室、威胁情报和暗网资源的信息 3. **分析** -- 将当前状态与前沿研究进行对比 4. **提议** -- 生成可部署的改进提案 5. **验证** -- 在推出前进行影子测试 研究来源:Anthropic、DeepMind、Meta FAIR、OpenAI、PAN Unit 42、Verizon DBIR、CISA KEV、MITRE ATT&CK、凭证泄露数据库、漏洞利用市场。 ## 环境要求 - Python 3.10+ - PostgreSQL 14+ - NATS JetStream 2.x (可选,用于实时警报) - `psycopg2` (`pip install psycopg2-binary`) ## 安装 ``` # 1. 创建数据库表 psql -d yourdb -f schema.sql # 2. 设置环境变量 export DATABASE_URL="postgresql://fleet_svc:password@localhost/yourdb" export NATS_URL="nats://127.0.0.1:4222" # 3. 运行 agents python3 sentinel.py # Defensive monitoring on :8776 python3 adversary.py # Red team on :8777 python3 cie.py # Improvement engine on :8778 ``` ## 配置 所有 Agent 均通过环境变量进行配置: ### Sentinel | 变量 | 默认值 | 描述 | |----------|---------|-------------| | `SENTINEL_PORT` | 8776 | HTTP 健康检查端口 | | `SENTINEL_SCAN_INTERVAL` | 3600 | 扫描间隔秒数 | | `DATABASE_URL` | 必填 | PostgreSQL 连接字符串 | | `NATS_URL` | nats://127.0.0.1:4222 | NATS 服务器 URL | ### Adversary | 变量 | 默认值 | 描述 | |----------|---------|-------------| | `ADVERSARY_PORT` | 8777 | HTTP 健康检查端口 | | `ADVERSARY_QUICK_INTERVAL` | 21600 | 快速周期间隔秒数 | | `ADVERSARY_DEEP_INTERVAL` | 86400 | 深度周期间隔秒数 | | `ADVERSARY_SAFE_MODE` | true | 启用安全控制 | | `DATABASE_URL` | 必填 | PostgreSQL 连接字符串 | ### CIE | 变量 | 默认值 | 描述 | |----------|---------|-------------| | `CIE_PORT` | 8778 | HTTP 健康检查端口 | | `CIE_CYCLE_INTERVAL` | 604800 | 改进周期间隔秒数 | | `LLM_GATEWAY_URL` | http://127.0.0.1:8760 | 用于分析的 LLM gateway | | `DATABASE_URL` | 必填 | PostgreSQL 连接字符串 | ## systemd 示例 service 文件位于 `systemd/` 目录下。使用以下命令安装: ``` sudo cp systemd/*.service /etc/systemd/system/ sudo systemctl daemon-reload sudo systemctl enable --now sentinel adversary cie ``` ## HTTP Endpoint 每个 Agent 都暴露了健康检查和数据 endpoint: **Sentinel** (`:8776`): `/health`, `/findings`, `/metrics`, `/heuristics` **Adversary** (`:8777`): `/health`, `/attacks`, `/playbook`, `/metrics` **CIE** (`:8778`): `/health`, `/cycle`, `/proposals`, `/research`, `/sources` ## 自定义 **添加启发式检查:** 在 sentinel.py 的 `HEURISTICS` 列表中追加内容,并提供相应的扫描函数。 **添加攻击 playbook:** 在 adversary.py 的 `PLAYBOOKS` 字典中添加内容,并实现攻击函数。 **添加研究来源:** 在 cie.py 的 `RESEARCH_SOURCES` 中扩展新的 URL 和检查类型。 **预期端口 / 已知服务:** 根据您的基础架构,在 sentinel.py 中更新 `EXPECTED_PORTS` 和 `KNOWN_SERVICES`。 ## 首次扫描结果 (我们的生产集群) 我们对 145 个 AI Agent 的首次扫描发现了 24 项结果: - 6 项严重 (其中 2 项为误报) - 6 项高危 - 8 项中危 - 4 项信息 主要发现:154 个带有硬编码 API key 的脚本、未经认证的 NATS 消息注入、未经认证的 state endpoint。所有严重和高危发现在 24 小时内均得到解决或缓解。 有关详细分析,请参阅[博客文章](https://blog.monstergaming.ai/we-built-ai-agents-that-hack-our-own-infrastructure-every-6-hours/)。 ## 许可证 Apache License 2.0。参见 [LICENSE](LICENSE)。 ## 贡献 欢迎提交 Issue 和 PR。我们特别重视与安全相关的贡献(新的启发式检查、攻击模块、研究来源)。 如果您在这些 Agent 本身中发现了漏洞,请通过 GitHub Security Advisories 进行报告,而不是提交公开 Issue。
标签:AI基础设施安全, AI安全, AI舰队, Chat Copilot, CISA项目, DevSecOps, IP 地址批量处理, NATS安全, PE 加载器, Python安全工具, Web应用攻击, 上游代理, 凭证收集, 协议分析, 启发式检查, 威胁情报, 开发者工具, 抗DDoS, 持续改进引擎, 持续监控, 插件系统, 攻击模拟, 数据渗出测试, 权限提升, 横向移动, 测试用例, 系统加固, 结构化查询, 编程规范, 网络安全, 网络安全审计, 自动化安全, 自动化红队, 自治安全代理, 逆向工具, 防御性监控, 隐私保护, 驱动签名利用