jitendar-singh/securitymind

GitHub: jitendar-singh/securitymind

基于多代理协作和 Gemini 大模型的应用安全态势管理平台,通过自然语言交互实现漏洞分诊、代码审查、云合规审计和威胁建模的全流程安全能力。

Stars: 1 | Forks: 0

# Security Mind: AI 驱动的安全态势管理 (ASPM) 平台 [![License](https://img.shields.io/badge/license-MIT-blue.svg)](LICENSE) [![Build Status](https://img.shields.io/badge/build-passing-brightgreen.svg)](https://github.com/jitendar-singh/securitymind/actions) [![Security](https://img.shields.io/badge/security-active-green.svg)](https://github.com/jitendar-singh/securitymind/security) Security Mind 是一个创新的多代理 AI 系统,旨在增强安全态势管理 (ASPM)。它基于先进的 AI 架构,利用协作代理来自动化安全工作流、识别风险、确保合规性并支持 DevSecOps 实践。无论您是正在进行漏洞分诊、代码审查还是生成报告,Security Mind 都能在整个软件开发生命周期中提供智能、可操作的洞察,以保护您的应用程序。 ## 主要亮点: - **多代理架构:** 专门的代理(例如合规性、威胁检测、修复)协同工作以处理复杂任务。 - **集成友好:** 支持 Jira、GitHub 和云 API(例如 GCP、AWS)等工具。 - **AI 驱动:** 利用 LLM 进行自然语言查询、威胁建模和策略解读。 - **关注领域:** 漏洞管理、许可证合规性、代码审查等。 Security Mind 非常适合旨在降低风险暴露并加速安全开发的安全工程师、开发人员和合规团队。 ## 🚀 功能 - **安全态势报告:** 生成有关项目安全性的综合报告,包括访问管理、漏洞和合规性差距。 - **CVE 分诊:** 分析 CVE 的严重性、影响、受影响版本和缓解策略。 - **许可证合规性检查:** 审查开源软件包的许可证类型(例如 MIT、GPL)及策略遵守情况。 - **策略解读:** 查询安全策略的详细信息,例如版权许可证或漏洞管理中的 SLA。 - **代码/PR 审查:** 扫描 Pull Request 以查找安全问题、最佳实践和漏洞。 - **工单创建:** 自动生成 Jira(或类似)工单以记录问题和修复措施。 - **威胁建模:** 使用 STRIDE 等框架执行结构化威胁评估。 - **云资源扫描:** 列出并审计资源(例如在 GCP 中)以检查安全配置错误。 - **可扩展:** 轻松添加自定义代理或工具以适应特定用例。 ## 示例 ### 🛡️ 分诊 CVE - **描述**:使用 NVD API 对漏洞进行分诊,并检查各生态系统(pypi、npm、maven 等)中的许可证,支持自动检测和网络搜索回退。 - **提示示例**: - `"@azure/identity 包的许可证是什么?"`(自动检测 npm) - `"对此漏洞进行分诊:影响我们 Web 服务器的 CVE-2023-4863。"` - `"分析此 SBOM:[SBOM JSON 内容]"` ### 🛡️ code_review_agent - **描述**:使用 Gemini 执行 AI 驱动的代码审查,关注代码异味、安全性、可读性和最佳实践。支持自动语言检测和 GitHub PR diffs。 - **提示示例**: - `"审查此代码:def add(a, b): return a + b"` - `"审查此 Pull Request 的安全性:https://github.com/org/repo/pull/123"` ### 📋 jira_agent - **描述**:根据发现或请求创建 Jira 问题,通过 Atlassian API 集成。 - **提示示例**: - `"为 auth 模块中的 SQL 注入漏洞创建一个 Jira 工单。"` - `"跟踪新功能:实现 MFA。"` ### 📚 policy_agent - **描述**:从本地文件(txt、pdf、docx)或 Confluence 读取并总结策略。 - **提示示例**: - `"总结我们的开源许可证策略。"` - `"列出可用的策略。"` ### ☁️ cloud_compliance_agent - **描述**:盘点资源并评估多个云环境(GCP、AWS 和 Azure)中的安全态势。它使用原生 API(如 Cloud Asset Inventory、Security Command Center、AWS IAM Access Analyzer 和 Azure Security Center)为您提供安全态势的统一视图。有关特定提供商的详细信息,请参阅相应客户端目录中的 README 文件: - [GCP](./secmind/sub_agents/cloud_compliance_agent/clients/gcp/README.md) - [AWS](./secmind/sub_agents/cloud_compliance_agent/clients/aws/README.md) - [Azure](./secmind/sub_agents/cloud_compliance_agent/clients/azure/README.md) - **提示示例**: - `"检查项目 my-gcp-project-id 中的资源"` - `"我的 AWS 账户的 IAM 建议(最小权限)"` - `"我的 Azure 订阅有哪些安全建议?"` - `"在我的 gcp 项目中识别出超过建议 90 天的服务账号访问密钥。"` - `"检查 GCP 项目 my-project-id 的整体安全态势"` - `"检查我的 AWS 账户的整体安全态势"` - `"检查我的 Azure 订阅的整体安全态势"` ### 🔒 app_sec_review_agent - **描述**:对应用程序进行威胁建模,收集有关框架、网络、部署和云环境的详细信息,然后使用 STRIDE 模型生成分段报告和建议。 - **提示示例**: - `"为我在 AWS 上使用 Django 的 Web 应用程序执行威胁建模。"` - `"应用安全审查:框架 - React/Node,部署 - GCP Kubernetes。"` ## 🧑‍💻 如何使用 通过提出自然语言查询与 SecurityMind 进行交互。它会自动委托任务——无需指定子代理。对于高级用途,请上传 SBOM 或提供代码片段/PR URL。 ## 🛠️ 工具 SecurityMind 使用这些工具进行委托和执行: - `transfer_to_agent(agent_name: str)`:移交给另一个代理。 - 特定于子代理的工具(例如 `review_code`、`triage_vulnerability`、`parse_sbom`——详见代码)。 ## 📦 安装说明 1. 克隆仓库: git clone https://github.com/jitendar-singh/securitymind.git cd securitymind 2. 安装依赖: pip install -r requirements.txt 3. 在 `.env` 中设置环境变量: - `GOOGLE_API_KEY`:用于 Gemini 模型。 - `NVD_API_KEY`:用于漏洞分诊(从 https://nvd.nist.gov/developers/request-an-api-key 获取)。 - `JIRA_URL`、`JIRA_USER`、`JIRA_TOKEN`:用于 Jira 集成。 - 可选:`CONFLUENCE_URL` 等,用于策略代理。 - `GOOGLE_APPLICATION_CREDENTIALS`:用于云合规性的 GCP 服务账号密钥路径。 - `GOOGLE_CLOUD_PROJECT`:默认 GCP 项目 ID。 4. 运行应用程序: adk web ## 📘 使用示例 ``` # 漏洞分类 response = secmind.handle_request("Triage CVE-2023-4863") # 带自动检测的许可证检查 response = secmind.handle_request("License for numpy") # Code review response = secmind.handle_request("Review: print('Hello')") # SBOM 分析 sbom_json = '{"bomFormat": "CycloneDX", "components": [{"purl": "pkg:npm/@azure/identity"}]}' response = secmind.handle_request(f"Analyze SBOM: {sbom_json}") # Jira 创建 response = secmind.handle_request("Create Jira for high severity vuln") # Cloud compliance response = secmind.handle_request("Check overall security posture for projects/my-project-id") # App sec review response = secmind.handle_request("App sec review: Framework - .NET, Deployment - GCP") ``` ## 工作流 ![secmind-workflow](https://github.com/user-attachments/assets/40c17280-4b1d-4425-8778-ea9f5769c292) ## 常见问题 **Q: SecMind 是否需要互联网访问?** - `"是的,用于 API 集成和实时数据;本地扫描可离线进行。"` **Q: 它安全吗?** - `"是的,使用加密连接;不存储用户数据。"` **Q: 支持哪些云?** - `"完全支持 GCP、AWS 和 Azure。"` **Q: 如何扩展?** - `"通过 Python 类添加代理;参见文档。"` ## 路线图 - **v1.0:** 核心功能(当前)。 - **v1.1:** AWS/Azure 全面支持,UI 仪表板。 - **v1.2:** 基于 ML 的异常检测。 - **v2.0:** 企业集成(例如 Splunk、SIEM)。 在 GitHub Issues 上跟踪进度。 ## 📄 许可证 该项目根据 MIT 许可证授权 - 详见 [LICENSE](https://github.com/jitendar-singh/securitymind/blob/main/LICENSE) 文件。 ## 关于 由 [Jitendar Singh](https://github.com/jitendar-singh) 构建。如需 SaaS 托管或自定义集成,请通过 GitHub 联系。
标签:AI安全, ASPM, AWS集成, Chat Copilot, CISA项目, CVE分级, DevSecOps, DLL 劫持, DNS 反向解析, FTP漏洞扫描, GCP集成, GitHub集成, GPT, Jira集成, PyRIT, 上游代理, 代码审查, 多智能体系统, 大语言模型, 威胁建模, 安全态势, 安全报告生成, 安全编排, 应用安全态势管理, 漏洞管理, 结构化查询, 自动化安全, 许可证合规, 软件供应链安全, 远程方法调用, 逆向工具