satyamshashwat/CyberSec-Copilot

GitHub: satyamshashwat/CyberSec-Copilot

基于 LangGraph 多代理工作流与 Google Gemini 构建的 AI 网络安全调查助手,聚合多源威胁情报平台实现自动化 IOC 调查、检测规则生成与安全文档 RAG 问答。

Stars: 0 | Forks: 0

# 🛡️ CyberSec Copilot ### AI 驱动的网络安全调查与威胁情报助手 基于 **LangGraph • Google Gemini • Streamlit • ChromaDB • MISP • VirusTotal • AbuseIPDB • URLScan • NVD** 构建 一个 AI 驱动的网络安全 Copilot,通过智能的多代理工作流,自动化 **威胁情报调查**、**检测工程** 以及 **基于 RAG 的安全知识检索**。
# 概述 安全分析师通常需要花费大量时间手动检查多个威胁情报平台、搜索安全文档并编写检测规则。 CyberSec Copilot 通过使用 **LangGraph** 将用户请求智能路由到专门的 AI 工作流,从而自动化这些重复性任务。 该应用程序可以: - 调查 IP 地址 - 调查域名 - 调查 URL - 调查 CVE - 调查文件哈希 - 根据上传的安全策略回答问题(RAG) - 生成 Sigma 规则 - 生成 YARA 规则 - 将威胁映射到 MITRE ATT&CK # 功能 ## 威胁情报调查 自动调查: - IP 地址 - URL - 域名 - 文件哈希 - CVE 使用多个威胁情报提供商。 ## 威胁情报集成 该应用程序聚合来自以下来源的情报: - VirusTotal - AbuseIPDB - URLScan.io - 国家漏洞数据库 (NVD) - MISP 威胁情报平台 所有情报都会被合并到一份 AI 生成的调查报告中。 ## AI 威胁评估 Google Gemini 会分析收集到的证据并生成: - 执行摘要 - 威胁严重程度 - 置信度评分 - IOC 摘要 - 安全建议 ## 检索增强生成 (RAG) 上传安全文档,例如: - 安全策略 - 合规性文档 - 框架文档 - PDF 文件 助手将文档嵌入存储在 **ChromaDB** 中,并使用检索增强生成来回答问题。 ## 检测工程 自动生成: - Sigma 规则 - YARA 规则 - MITRE ATT&CK 映射 基于安全事件和威胁描述。 ## 智能路由 应用程序不将每个请求发送到单个 LLM prompt,而是使用 **LangGraph StateGraph** 将用户请求智能路由到专门的工作流中。 # 系统架构 CyberSec Copilot 使用 LangGraph 多代理工作流构建,其中的路由器会动态选择合适的安全 pipeline。

--- # 威胁情报工作流 ``` User Query │ ▼ Extract IOC │ ▼ VirusTotal │ ▼ AbuseIPDB │ ▼ URLScan │ ▼ MISP │ ▼ NVD │ ▼ Merge Evidence │ ▼ Gemini Threat Assessment ``` # 项目演示 该代码库包含展示完整工作流的演示视频。 ### 威胁情报调查 演示内容: - IOC 提取 - VirusTotal 查询 - AbuseIPDB 查询 - URLScan 查询 - MISP 查询 - AI 威胁摘要 ### RAG 助手 演示内容: - 上传安全策略 - ChromaDB 检索 - 基于 Gemini 的回答 ### 检测工程 演示内容: - Sigma 规则生成 - YARA 规则生成 - MITRE ATT&CK 映射 # 技术栈 ### 编程 - Python ### AI - Google Gemini - LangChain - LangGraph ### 向量数据库 - ChromaDB ### 前端 - Streamlit ### 威胁情报 - VirusTotal - AbuseIPDB - URLScan - MISP - NVD ### 检测工程 - Sigma - YARA - MITRE ATT&CK # 项目结构 ``` CyberSec-Copilot │ ├── assets/ ├── docs/ ├── src/ │ ├── core/ │ ├── graph/ │ ├── rag/ │ ├── tools/ │ └── tests/ │ ├── app.py ├── requirements.txt ├── README.md ├── LICENSE └── .env.example ``` # 安装说明 克隆代码库 ``` git clone https://github.com/satyamshashwat/CyberSec-Copilot.git ``` 进入项目 ``` cd CyberSec-Copilot ``` 创建虚拟环境 ``` python -m venv .venv ``` 激活环境 Windows ``` .venv\Scripts\activate ``` Linux / macOS ``` source .venv/bin/activate ``` 安装依赖项 ``` pip install -r requirements.txt ``` 使用 `.env.example` 创建 `.env` 文件。 运行应用程序 ``` streamlit run app.py ``` # 必需的 API 密钥 创建 `.env` 文件并添加: ``` GEMINI_API_KEY= VIRUSTOTAL_API_KEY= ABUSEIPDB_API_KEY= URLSCAN_API_KEY= MISP_URL= MISP_API_KEY= ``` # 工作原理 1. 用户提交网络安全查询。 2. LangGraph 路由器确定意图。 3. 选择合适的工作流。 4. 执行威胁情报 API 或 RAG pipeline。 5. Gemini 分析收集到的证据。 6. 显示最终调查报告。 # 未来改进 - Shodan 集成 - GreyNoise 集成 - AlienVault OTX 集成 - 混合搜索 - 多代理协作 - SIEM 集成 - 自动化事件响应 - 恶意软件沙箱集成 # 学习成果 这个项目帮助我获得了以下方面的实践经验: - Agentic AI - LangGraph - LangChain - 检索增强生成 (RAG) - Prompt 工程 - 威胁情报 - 检测工程 - API 集成 - 向量数据库 - Streamlit 开发 # 许可证 该项目基于 **MIT License** 授权。 # 作者 ## Satyam Shashwat **B.Tech 电子与通信工程** 🔗 LinkedIn https://www.linkedin.com/in/satyam-shashwat-38a5a6259 如果您觉得这个项目有趣,请考虑给它点个 star!
标签:AI智能助手, DLL 劫持, IP 地址批量处理, Kubernetes, 域名收集, 多智能体, 大语言模型, 威胁情报, 开发者工具, 检索增强生成, 网络信息收集, 网络安全, 自动化分析, 跨站脚本, 逆向工具, 隐私保护