AnishaPaturi/AgenShield-AI
GitHub: AnishaPaturi/AgenShield-AI
基于 LLM、RAG 和多 Agent 架构的多云 IaC 安全检测与自动修复框架。
Stars: 1 | Forks: 0
# AgentShield AI
## 面向多云基础设施即代码安全的自主多 Agent 框架






AgentShield AI 是一个先进的自主多 Agent 框架,旨在保护异构多云环境中的基础设施即代码模板。该系统利用大型语言模型 (LLM)、检索增强生成 (RAG) 和静态代码分析,执行上下文感知的漏洞检测、自动代码修补以及面向开发者的安全报告。
## 📄 项目元数据
* **项目领域:** 网络安全 + AI
* **团队编号:** 13
* **项目状态:** 正在积极规划/开发中
* **GitHub 仓库主题:** `iac-security`, `infrastructure-as-code`, `terraform`, `cloudformation`, `kubernetes`, `helm`, `multi-cloud`, `aws`, `azure`, `gcp`, `llm-agents`, `langgraph`, `rag`, `retrieval-augmented-generation`, `devsecops`, `static-analysis`, `checkov`, `cyber-security`, `ai-agents`, `security-automation`
* **贡献者(团队成员):**
* **Anisha Paturi** (学号: `23BD1A050E`) - *联系方式: 8639781680*
* **Parinamika Bhanu** (学号: `23BD1A0518`) - *联系方式: 9392508430*
* **Vahini Venkata** (学号: `23BD1A051D`) - *联系方式: 8790261823*
* **Sravani Janak** (学号: `23BD1A051Y`) - *联系方式: 7075869135*
## 📚 基础项目文档
该仓库包含详细说明架构规范、研究文献综述、演示幻灯片和基础研究论文的关键基础文档:
* 🏗️ **[about.md](file:///C:/Users/anish/OneDrive/College/project-clg/AgenShield-AI/about.md):** 详细的架构指南,描述了 8 个专门的 Agent、LangGraph 编排图以及与基础论文的对比功能分解。
* 🌐 **[index.html](file:///C:/Users/anish/OneDrive/College/project-clg/AgenShield-AI/index.html):** 交互式网络演示,总结了 AgentShield AI 的核心目标、多 Agent pipeline、预期结果、优势和局限性。
* 📖 **[literature_survey.txt](file:///C:/Users/anish/OneDrive/College/project-clg/AgenShield-AI/literature_survey.txt):** 深入的文献综述,对现有的 IaC 安全方法进行了分类,确定了关键的研究空白,提供了全面的比较矩阵,并列出了关键的学术参考文献。
* 📝 **`project abstract.docx`:** 执行摘要和项目概述文档。
* 📑 **[LLM 基础论文](file:///C:/Users/anish/OneDrive/College/project-clg/AgenShield-AI/LLM_Agentic_Workflow_for_Automated_Vulnerability_Detection_and_Remediation_in_Infrastructure-as-Code.pdf):** 基础研究论文 (*Toprani & Madisetti, IEEE Access 2025*)。
## 💡 摘要
云原生应用越来越依赖于基础设施即代码 来自动化云资源的部署和管理。然而,IaC 模板中的安全错误配置可能会引入关键漏洞,这些漏洞通常被传统的基于规则的安全工具所忽略。本项目提出了 **AgentShield AI**,这是一个自主的多 Agent 框架,旨在增强多云环境中基础设施即代码的安全性。
拟议的系统利用大型语言模型 (LLM)、检索增强生成 (RAG) 和精选的云安全知识库,执行上下文感知的漏洞检测和智能安全分析。与局限于单一云平台的现有解决方案不同,AgentShield AI 支持多个 IaC 平台,提供统一的安全分析框架。该系统采用专门的 AI Agent 进行 IaC 解析、知识检索、漏洞检测、自动修复和报告生成,实现了模块化且可扩展的安全工作流。
通过将语义推理与特定领域的安全知识相结合,该框架生成可操作的修复建议和全面的安全报告,这些报告可以集成到 DevSecOps pipeline 中。拟议的解决方案旨在提高检测准确性、减少人工安全分析工作量,并提供一种可扩展的方法来保护异构云环境中的云基础设施。
## 📊 文献综述与对比分析
如 `literature_survey.txt` 中详述,IaC 安全领域的当前研究和商业产品可分为四个主要范式:
1. **静态分析与基于规则的扫描器(例如 CDK-Nag, Checkov, KICS):**
* *机制:* 根据 pre-defined, rigid rule packs 解析 IaC 代码。
* *局限性:* 会漏掉复杂的、依赖上下文的错误配置(例如复合 IAM 策略风险),并且对于参数化/动态模板会产生高误报率。
2. **动态分析与 CSPM(例如 AWS Config, 云安全态势管理):**
* *机制:* 部署后通过云提供商的 API 监控实时云资源。
* *局限性:* 被动响应(“shift-right”);无法在配置基础设施之前捕获漏洞。
3. **基于 ML 的安全坏味检测器(例如 GLITCH - Saavedra & Ferreira, 2022):**
* *机制:* 在跨 IaC 语言的中间表示上使用机器学习模型。
* *局限性:* 需要海量标注训练数据集,难以应对零日错误配置模式,且缺乏代码修复生成功能。
4. **LLM 与早期 Agentic 工作流(基础论文 - Toprani & Madisetti, 2025; GenKubeSec - Malul 等人, 2024):**
* *机制:* 将 LLM 与基础 RAG 结合以进行上下文感知的漏洞检测。
* *局限性:* 单云范围(仅限 CloudFormation)、单一 LLM 的幻觉风险(约 15% 误报率)、仅提供文本建议而未生成补丁、且基准评估有限。
### 对比特性矩阵
| 特性 / 指标 | 静态扫描器 | CSPM (AWS Config) | 基础论文 (Toprani, 2025) | AgentShield AI (拟议) |
| :--- | :--- | :--- | :--- | :--- |
| **分析时机** | Pre-commit / CI | 部署后 | 部署前 | Shift-Left (IDE + Pre-commit + CI + 实时 Drift) |
| **云与 IaC 范围** | 多云 | 实时云 API | 仅 AWS CloudFormation | 跨 Terraform, CFN, K8s 和 Helm 的 AWS, Azure, GCP |
| **上下文推理** | ❌ 僵化的规则 | ❌ 状态规则 | ⚠️ LLM + RAG | ✅ AST + RAG + 多 LLM 集成 (Claude + GPT-4o) |
| **修复输出** | 规则链接 | 告警通知 | 文本解释 | 经过语法及沙盒验证的代码 Diff 补丁 |
| **机密扫描** | 基础正则表达式 | ❌ 无 | ❌ 无 | 专用机密 Agent (Gitleaks + TruffleHog) |
| **验证机制** | ❌ 无 | ❌ 无 | ❌ 无 | 静态 Linter + LocalStack 运行时沙盒测试 |
| **合规性映射** | 基础 | 规则级别 | ❌ 无 | 自动映射至 SOC 2, HIPAA, PCI-DSS 与 NIST 800-53 |
| **开发者反馈** | ❌ 无 | ❌ 无 | ❌ 无 | 交互式反馈循环与负样本 prompt 适应 |
## 🎯 研究基础论文与核心增强
AgentShield AI 的设计旨在直接改进以下基础论文:
AgentShield AI 通过全面的增强功能解决了基础论文中关键的研究空白:
### 解决的关键研究空白
1. **多云与多 IaC 泛化:** 将范围扩展到 AWS CloudFormation 之外,覆盖 **Microsoft Azure** 和 **Google Cloud Platform (GCP)**,支持 **Terraform (HCL)**、**Kubernetes Manifests** 和 **Helm Charts**。
2. **自主的 8-Agent 架构:** 用具有专门角色的、有状态的 LangGraph 多 Agent 网络取代基础的三 Agent 线性 pipeline。
3. **混合 AST 解析与预筛选:** 将 AST 解析与静态扫描器 (Checkov, tfsec, KICS) 相结合,在 LLM 分析之前预评估条件和变量。
4. **动态自动修补与 Linter:** 用经过本地 linter (`terraform validate`, `cfn-lint`) 测试的、语法有效的代码 diff 补丁替代纯文本解释。
5. **沙盒运行时验证:** 在本地沙盒 中验证补丁,以在不破坏基础设施功能的情况下确认配置完整性。
6. **专用机密扫描:** 集成 Gitleaks 和 TruffleHog 引擎以拦截嵌入的凭据、API 密钥和证书。
7. **多 LLM 集成投票与置信度评分:** 运行交叉验证(Claude 3.5 + GPT-4o)以消除幻觉,将低置信度告警路由至人工审核。
8. **合规框架映射:** 自动使用 **SOC 2**、**HIPAA**、**PCI-DSS** 和 **NIST 800-53** 法规控制项标记发现的问题。
9. **交互式开发者反馈:** 捕获开发者的接受/拒绝操作,用于动态负样本 prompt 微调。
10. **攻击路径与爆炸半径优先级排序:** 构建资源依赖图,根据真实的可利用性和拓扑影响来确定漏洞的优先级。
11. **Shift-Left 与实时 Drift 检测:** 通过提供商 API 集成 VS Code 扩展、pre-commit 钩子和实时基础设施 drift 检测。
12. **自动化持续知识库摄取:** 将每日 CVE 订阅源和供应商文档拉取到 Qdrant/ChromaDB 向量存储中。
## 🏗️ 系统架构与专用 Agent
### LangGraph 多 Agent 架构
```
graph TD
A[Developer / IDE / CI-CD Pipeline] -->|Submit IaC Templates| B[Manager Agent]
B --> C[Hybrid AST Parser Agent]
B --> SEC[Secrets Scanner Agent]
C -->|AST & Dependency Graph| D[RAG Query Agent]
SEC -->|Hardcoded Credentials| G[Security Analyst Agent]
subgraph "Knowledge Core & Compliance"
E[(Vector DB: Qdrant/Chroma)]
F[Live Scraper Service] -->|Policy Updates| E
COMP[SOC2 / HIPAA / PCI / NIST Frameworks] --> E
end
E <-->|Context Queries| D
D -->|Annotated Context & Attack-Paths| G
subgraph "Analyst & Ensemble Verification"
G -->|Multi-LLM Voting: Claude + GPT-4o| V{Consensus & High Confidence?}
V -->|Low Confidence| HMN[Human Security Audit Queue]
V -->|High Confidence| H[Remediation Agent]
end
H -->|Code Patches/Diffs| I[Validation Agent]
subgraph "Validation Harness"
I -->|Syntax Linters: terraform validate / cfn-lint| J1{Syntax Valid?}
J1 -->|No| H
J1 -->|Yes| J2[LocalStack Sandbox Runtime Test]
J2 -->|Runtime Failure| H
end
J2 -->|Validated Patch| K[Report Generator Agent]
K -->|Unified Security & Compliance Report| L[Developer Interface / VS Code]
L -->|Accept/Reject Feedback| M[(Developer Feedback Log)]
M -->|Dynamic Few-Shot Tuning| G
```
### AgentShield AI 的 8 个专用 Agent
1. **Manager/Router Agent:** 指导执行状态,处理路由,并在 Agent 之间分配任务。
2. **混合 AST Parser Agent:** 从 HCL、CloudFormation JSON/YAML、Kubernetes YAML 和 Helm 模板中提取 AST,评估动态变量并预解析参数。
3. **机密扫描 Agent:** 执行集成的 Gitleaks 和 TruffleHog 引擎,拦截硬编码的 API 密钥、token 和凭据。
4. **RAG-Query Agent:** 查询向量数据库 (Qdrant/ChromaDB) 以获取多云安全策略、CIS benchmark 和法规合规控制。
5. **安全分析师 Agent:** 执行多 LLM 集成投票 (Claude 3.5 + GPT-4o) 并进行校准的置信度评分。将低置信度的发现升级到人工安全审查队列。
6. **修复 Agent:** 生成干净、可执行的代码 diff 补丁,针对特定的 IaC 资源块,而不是自然语言文本。
7. **代码与沙盒验证 Agent:** 通过本地 linter (`terraform validate`, `cfn-lint`) 验证代码语法,并在 LocalStack 内执行运行时预演部署。
8. **报告 Agent:** 生成可用于审计的合规报告 (SOC 2, HIPAA, PCI-DSS, NIST 800-53),并存储开发者反馈以进行持续的 prompt 适应。
## 🛠️ 技术栈与工具
* **编程语言:** Python 3.12+
* **编排与状态管理:** LangGraph / LangChain
* **向量数据库 / RAG 摄取:** Qdrant / ChromaDB & `sentence-transformers`
* **静态扫描器与机密引擎:** Checkov, tfsec, KICS, Gitleaks, TruffleHog
* **语言模型:** Anthropic Claude 3.5 (通过 Bedrock/API)、OpenAI GPT-4o、本地蒸馏 SLM
* **验证与沙盒:** LocalStack (AWS 模拟)、`terraform validate`、`cfn-lint`
* **开发实用程序:** `uv` (快速 Python 包管理器)、Docker、Pytest
## 📅 详细实施计划与执行路线图
AgentShield AI 的开发分为 **5 个不同的执行阶段,为期 14 周**。每个阶段功能齐全、可测试的模块,这些模块直接映射到我们的 8 个 Agent 架构、RAG 知识核心、验证机制和开发者接口。
### 🗓️ 阶段 1:基础、多 IaC 摄取与核心文档 (第 1-3 周)
**目标:** 建立项目仓库基础设施,构建基础文档,实施多云 AST parser,并部署机密扫描引擎。
* [x] **任务 1.1:项目设置与环境初始化**
* 通过 `uv` 配置快速依赖管理,设置 `pyproject.toml`,并建立自动化 `pytest` 测试套件。
* 使用 Pydantic v2 schema 定义核心数据契约 (`IaCTemplate`, `ASTNode`, `VulnerabilityReport`, `PatchDiff`)。
* [ ] **任务 1.2:系统核心与 Manager/Router Agent 状态机**
* 构建初始的 LangGraph 编排状态图,用于工作流控制和消息传递。
* 实现状态持久化、回退机制以及 Agent 之间的条件图路由。
* [ ] **任务 1.3:多云混合 AST Parser Agent**
* 为 **Terraform (HCL2)**、**AWS CloudFormation (JSON/YAML)**、**Kubernetes Manifests (YAML)** 和 **Helm Charts** 开发 AST parser。
* 实现动态变量预解析、条件评估和资源依赖图提取。
* [ ] **任务 1.4:专用机密与凭据扫描 Agent**
* 集成 **Gitleaks** 和 **TruffleHog** 引擎以及高熵正则表达式匹配。
* 实现对嵌入在 IaC 文件中的 API 密钥、AWS 凭据、JWT token 和私钥的自动拦截。
* [ ] **任务 1.5:静态扫描器适配层**
* 为 **Checkov**、**tfsec** 和 **KICS** 构建 wrapper adapter,用基线漏洞信号丰富解析后的 AST 节点。
**关键交付物:** 摄取 pipeline、多格式 IaC parser、机密扫描 Agent 和基础文档 ([about.md](file:///C:/Users/anish/OneDrive/College/project-clg/AgenShield-AI/about.md), [index.html](file:///C:/Users/anish/OneDrive/College/project-clg/AgenShield-AI/index.html), [literature_survey.txt](file:///C:/Users/anish/OneDrive/College/project-clg/AgenShield-AI/literature_survey.txt))。
### 🗓️ 阶段 2:多云知识库与 RAG 合规核心 (第 4-6 周)
**目标:** 构建向量数据库 pipeline,摄取多云安全标准,并实现用于合规上下文检索的 RAG Query Agent。
* [ ] **任务 2.1:向量数据库基础设施与 Embedding pipeline**
* 使用 `sentence-transformers` (例如 `all-mpnet-base-v2` / BGE embedding) 部署 **Qdrant** / **ChromaDB** 向量数据库实例。
* 构建 AST 哈希缓存和语义去重层,以加速相似性查找。
* [ ] **任务 2.2:持续知识库摄取引擎**
* 为 AWS/Azure/GCP 安全最佳实践、CIS Benchmark 和 NVD/CVE 订阅源构建自动 scraper 和摄取器。
* 创建持续更新服务以每日刷新威胁情报。
* [ ] **任务 2.3:法规合规映射模块**
* 针对安全策略进行索引和交叉比对,以映射到 **SOC 2**、**HIPAA**、**PCI-DSS** 和 **NIST 800-53** 框架。
* 使用明确的法规控制 ID(例如 `NIST-AC-6`、`PCI-DSS-1.3`)标注向量 embedding。
* [ ] **任务 2.4:RAG Query Agent 开发**
* 实现上下文感知的混合检索,将密集向量相似性与稀疏的 BM25 关键字搜索相结合。
* 开发 prompt 上下文化器,将相关的安全控制注入到安全分析师 Agent 的工作内存中。
**关键交付物:** 完全索引的向量数据库、持续摄取 scraper 服务以及可正常工作的 RAG Query Agent。
### 🗓️ 阶段 3:LangGraph 多 Agent 核心、集成投票与置信度评分 (第 7-9 周)
**目标:** 完成有状态的 8-Agent LangGraph 网络,实施多 LLM 集成投票,并构建人工审核队列。
* [ ] **任务 3.1:安全分析师 Agent 与多 LLM 集成引擎**
* 连接 **Claude 3.5 Sonnet** 和 **OpenAI GPT-4o** API,进行双模型并行漏洞评估。
* 实现结构化推理模板(Chain-of-Thought prompting),强制执行标准化的输出 JSON schema。
* [ ] **任务 3.2:校准的置信度评分与共识算法**
* 开发 LLM 输出之间的数学一致性评分,以消除单一模型的幻觉。
* 建立置信度阈值($C \ge 0.85$ 用于自动修补,$C < 0.85$ 转为人工审核)。
* [ ] **任务 3.3:攻击路径与爆炸半径优先级排序引擎**
* 构建资源拓扑图以评估可利用路径(例如:Internet Gateway $\rightarrow$ Security Group $\rightarrow$ 未加密数据库)。
* 基于综合严重性、爆炸半径和拓扑暴露程度对发现的问题进行排名。
* [ ] **任务 3.4:人工安全审核队列与分流仪表板**
* 为低置信度或非共识的发现构建自动升级机制。
* 实现命令行/Web 分流界面,允许安全工程师检查、批准或拒绝标记的发现。
**关键交付物:** 多 LLM 集成引擎、经过校准的共识算法、攻击路径排序器和人工审核队列。
### 🗓️ 阶段 4:自动修复、LocalStack 验证与反馈引擎 (第 10-12 周)
**目标:** 生成可执行的统一 diff 补丁,构建 LocalStack 预演验证机制,并实现开发者反馈循环。
* [ ] **任务 4.1:修复 Agent 与可执行代码补丁生成器**
* 实现代码 diff 生成器,生成干净、语法正确的补丁,精准针对确切的 IaC 资源块。
* 支持跨 HCL2、CloudFormation JSON/YAML、K8s YAML 和 Helm 值的补丁生成。
* [ ] **任务 4.2:代码与沙盒验证 Agent — 静态 Linter**
* 集成静态验证工具 (`terraform validate`, `tflint`, `cfn-lint`, `kube-linter`, `helm lint`)。
* 如果在生成的补丁中检测到 lint 错误,则强制向修复 Agent 自动回滚。
* [ ] **任务 4.3:LocalStack 运行时预演沙盒测试**
* 配置 **LocalStack** 容器化沙盒,用于 AWS CloudFormation/Terraform 资源的预演配置。
* 验证补丁不会导致部署失败或资源依赖破坏。
* [ ] **任务 4.4:报告生成器 Agent 与合规导出器**
* 构建支持 JSON、Markdown、HTML、SARIF(用于 GitHub Security 标签页)和 PDF 导出的报告生成器。
* 包含执行摘要、攻击路径图、补丁 diff 和合规映射矩阵。
* [ ] **任务 4.5:交互式开发者反馈与 Few-Shot Prompt 适应引擎**
* 捕获开发者对生成补丁的接受/拒绝决定。
* 将否定/肯定的决定输入到动态的 Few-Shot prompt 适应库中,以持续减少误报。
**关键交付物:** 补丁生成器、linter + LocalStack 沙盒验证器、多格式报告导出器和反馈学习引擎。
### 🗓️ 阶段 5:Shift-Left IDE 集成、实时 Drift 与自动化基准测试 (第 13-14 周)
**目标:** 通过 IDE 扩展和 CI/CD 钩子将安全性嵌入开发者工作流,启用实时云 drift 检测,并执行严格的实证基准评估。
* [ ] **任务 5.1:VS Code 扩展与 Git Pre-Commit 钩子**
* 开发轻量级 **VS Code 扩展**,以便在代码编辑器内提供实时的 IaC 安全反馈。
* 打包 Git pre-commit 钩子,在记录提交之前阻止配置错误的 IaC 模板。
* [ ] **任务 5.2:实时云基础设施 Drift 检测引擎**
* 构建云提供商 API 监控器(AWS Config / Azure Resource Graph / GCP Asset Inventory wrapper),以检测人工的、带外的状态变更。
* 将实时基础设施 drift 与 IaC 源模板进行映射,以触发修复工作流。
* [ ] **任务 5.3:实证基准套件与消融研究**
* 针对公开的易受攻击 IaC 语料库 (**Terragoat**, **cfngoat**, **KICS/Checkov 测试套件**, **IaC-Eval**) 执行自动化评估。
* 计算性能指标:**Precision**、**Recall**、**F1-Score**、**补丁通过率** 和 **执行延迟**。
* 执行全面的组件消融研究,比较:
1. 基础静态扫描器 对比 基础论文 对比 AgentShield AI。
2. RAG 开启 对比 RAG 关闭。
3. 多 LLM 集成 (Claude + GPT-4o) 对比 单一 LLM (仅 Claude 3.5)。
4. 混合 AST 解析 对比 原始文本 LLM 摄取。
**关键交付物:** VS Code 扩展、pre-commit 钩子、实时 drift 监控器、基准评估套件和最终消融分析报告。
### 📊 实施里程碑摘要
| 里程碑 | 目标窗口 | 关键关注领域 | 验证指标 | 状态 |
| :--- | :--- | :--- | :--- | :--- |
| **M1: 解析器与机密核心** | 第 1-3 周 | 多 IaC AST 解析与凭据拦截 | 100% 通过 HCL, CFN, K8s, Helm 解析测试 | ⏳ 进行中 |
| **M2: 知识核心与 RAG** | 第 4-6 周 | 向量数据库、CIS benchmark、合规映射 | 检索 Precision @ 5 $\ge 90\%$ | 🎯 已排期 |
| **M3: 集成与共识** | 第 7-9 周 | LangGraph 8-Agent 网络与多 LLM 投票 | 幻觉率 $< 3\%$, F1 $\ge 0.92$ | 🎯 已排期 |
| **M4: 验证与修补** | 第 10-12 周 | Diff 补丁生成与 LocalStack 沙盒 | $100\%$ 语法有效性,补丁通过率 $\ge 95\%$ | 🎯 已排期 |
| **M5: Shift-Left 与基准测试| 第 13-14 周 | IDE 扩展、pre-commit、消融基准 | 执行全套基准测试对比 IEEE 论文 | 🎯 已排期 |
## 📂 项目结构
```
AgentShield-AI/
├── .gitignore # Git ignore configuration
├── README.md # Primary project documentation
├── about.md # System architecture & specialized 8-agent breakdown
├── index.html # Interactive web presentation (objectives, pipeline, results)
├── literature_survey.txt # IaC security literature survey, gaps, & comparative matrix
├── project abstract.docx # Executive abstract and project overview document
└── LLM_Agentic_Workflow_for_Automated_Vulnerability_Detection_and_Remediation_in_Infrastructure-as-Code.pdf # IEEE Access base paper
```
## 📚 参考文献与学术引用
1. **Toprani, D., & Madisetti, V. K. (2025).** *LLM Agentic Workflow for Automated Vulnerability Detection and Remediation in Infrastructure-as-Code.* IEEE Access, 13, 69175-69181. *(基础论文)*
2. **Saavedra, N., & Ferreira, J. F. (2022).** *GLITCH: Automated polyglot security smell detection in infrastructure as code.* arXiv:2205.14371.
3. **Malul, E., 等人 (2024).** *GenKubeSec: LLM-based kubernetes misconfiguration detection, localization, reasoning, and remediation.* arXiv:2405.19954.
4. **Minna, F., 等人 (2024).** *Analyzing and mitigating (with LLMs) the security misconfigurations of helm charts.* arXiv:2403.09537.
## 📄 许可证
本项目基于 MIT 许可证授权 - 详情请参阅 LICENSE 文件。
标签:AI智能体, DevSecOps, DLL 劫持, 上游代理, 大语言模型, 检索增强生成, 逆向工具, 错误基检测, 静态代码分析