abyasham/security-audit-compliance-agent-v.13

GitHub: abyasham/security-audit-compliance-agent-v.13

SACA是一个LLM驱动的Web应用,用于自动将网络抓包数据与策略文档比较,产生可辩护的合规性发现。

Stars: 1 | Forks: 1

SACA Logo

演示视频

Demo Video

Version Status Node Docker

SACA (安全审计合规智能体) 是一个为网络安全审计提出的下一代解决方案。 它结合了数据包级别的证据、策略感知推理和多智能体分析,旨在从 pcap 数据中生成可辩护的合规性发现。 ## 30 秒快速启动 ``` cd C:\saca\saca13 Copy-Item .env.example .env.docker # 在 .env.docker 中添加至少一个云密钥 (OPENAI_API_KEY 或 DEEPSEEK_API_KEY 或 OPENROUTER_API_KEY) docker compose --env-file .env.docker up --build ``` 打开: - 前端:http://localhost:5173 - 后端健康状态:http://localhost:3001/api/health 为何需要云密钥:没有它们,只有 Ollama 会被标记为已配置。 ## 执行摘要 现代网络团队仍然严重依赖手动的 Wireshark 分诊、临时脚本和碎片化的报告。 SACA 通过提供一个单一工作流来解决此问题,分析师可以在其中: - 上传抓包文件和策略文档。 - 运行一个基于智能体的分析流程。 - 接收基于证据的违规、合规和可疑发现。 - 通过工具辅助的对话式交互,调查和验证这些发现。 设计目标是实际的审计加速,而非黑箱式摘要总结。 ## 定位 SACA 的灵感来源于像 NetTrace Agentix 这样的系统所展示的强大智能体流量分析模式,同时专注于合规性判断和策略到证据的映射作为首要产出。 SACA 的差异化在于: - 从上传的策略文本进行策略无关的合规性评估。 - 在网络分析之后设置专门的合规判断阶段。 - 为审计可辩护性和可追溯性设计的发现结构。 - 内置对常见企业和物联网攻击模式的检测覆盖。 ## 核心能力 - 多智能体流程:策略智能体、网络智能体、合规判断器。 - 基于证据的对话工具循环,支持 tshark 后端检索。 - 检测覆盖包括: - DNS 劫持和欺骗。 - DNS 隧道检测启发式。 - 会话劫持(跨源 IP 的令牌重用)。 - 操作系统指纹识别(SYN 选项特征多样性)。 - ARP 欺骗、暴力破解、SYN 扫描、类 Mirai 行为。 - 用户界面分诊支持,提供以 DNS 优先的发现排序。 - 面向受控安全环境的本地优先部署模型。 ## 架构概览 1. 策略解析与规范化。 2. 网络流量分析与异常提取。 3. 根据策略条款进行合规判断。 4. 发现持久化与分析师审查。 高层组件: - 后端:Express + TypeScript 智能体编排与 API。 - 前端:React + Vite 分析师工作区。 - 数据包引擎:tshark/Wireshark CLI 集成。 - 可选 LLM 提供商:OpenAI, DeepSeek, OpenRouter, Ollama。 ``` flowchart LR U[Analyst UI\nReact + Vite] --> API[Backend API\nExpress + TypeScript] API --> PA[PolicyAgent\nPolicy Parsing + Rule Extraction] API --> NA[NetworkAgent\nTshark + Anomaly Detection] PA --> CJ[ComplianceJudge\nPolicy-to-Evidence Judgement] NA --> CJ CJ --> FS[Findings Store\nSession + Audit Evidence] FS --> U API --> LLM[LLM Providers\nOpenAI / DeepSeek / OpenRouter / Ollama] API --> TS[Tshark Engine] ``` ## 仓库结构 - `backend/` API、智能体和服务。 - `frontend/` Web 应用。 - `pcap/` 数据集映射和抓包资产。 - `plans/` 架构和设计说明。 - `policy/` 示例策略工件。 - `scripts/` 本地启动、停止、重置和实用脚本。 ## 前置条件 - Node.js 20+ - npm 10+ - tshark (Wireshark CLI) Windows 默认路径: - `C:\Program Files\Wireshark\tshark.exe` 如果 tshark 不在 PATH 中,请在本地后端环境中设置 `TSHARK_PATH`。 ## 本地开发 (Windows) 安装依赖: ``` npm install cd backend; npm install cd ../frontend; npm install cd .. ``` 运行应用程序: ``` npm run start ``` 停止应用程序: ``` npm run stop ``` 端点: - 前端:http://localhost:5173 - 后端:http://localhost:3001 - 健康状态:http://localhost:3001/api/health ## Docker 演示 (推荐用于分享) SACA 可以通过使用云提供商 (OpenAI, DeepSeek, OpenRouter) 在无 GPU 环境下运行。 1. 根据模板创建本地 Docker 环境文件: ``` Copy-Item .env.example .env.docker notepad .env.docker ``` 2. 仅添加你计划使用的提供商密钥。 3. 启动容器: ``` docker compose --env-file .env.docker up --build ``` 4. 停止容器: ``` docker compose down ``` 如果未提供云 API 密钥,只有 Ollama 会显示为已配置。 ## 安全与密钥管理 SACA 包含安全防护措施以减少意外提交密钥的风险: - `.gitignore` 阻止 `.env`, `.env.local`, `.env.docker` 以及常见的密钥/证书文件。 - 预提交密钥扫描器会阻止已暂存的敏感文件名和类密钥令牌模式。 在仓库初始化后启用钩子: ``` npm run security:install-hooks ``` 运行手动暂存扫描: ``` npm run security:scan-staged ``` 推荐的本地密钥文件: - `backend/.env.local` 用于后端运行时密钥。 - `.env.docker` 用于基于 Compose 的演示。 已跟踪的模板: - `backend/.env.example` - `.env.example` ## 验证与保真度 (GT-01..GT-13 + RAGAS) SACA v13 使用 GT-01 到 GT-13 作为一个实用的基准范围,用于衡量检测质量和解释的 groundedness。 评估机制: - 真值锚点:来自 GT-01..GT-13 场景的已知攻击行为。 - 待测的 SACA 输出:发现、证据数据包编号、推理文本和策略关联。 - 类 RAGAS 的保真度焦点:验证模型声明是否得到检索到的数据包证据和策略条款的支持,而非幻觉摘要。 本项目的操作性解释: - 高保真度:发现的推理可直接追溯到数据包级别的证据,并映射到策略文本。 - 低保真度:推理包含无支撑的声明、较弱的证据关联或策略不匹配。 本仓库当前的验证重点包括在以下方面已证实的改进: - GT-07 类行为:DNS 劫持/欺骗检测质量。 - GT-10 类行为:操作系统指纹信号提取。 - GT-13 类行为:会话劫持/令牌重用可见性。 此 GT + RAGAS 保真度工作流被用作一种持续机制,用于衡量 SACA 在能力演进过程中是否保持基于证据。 ## 状态 本项目是一个积极演进的提案和实施路径,旨在实现实际、可解释的网络安全审计。
标签:AI风险缓解, Apex, DLL 劫持, Docker, GNU通用公共许可证, MITM代理, Node.js, pcap分析, RAGAS评估, 人工智能, 包捕获分析, 合规发现, 合规性分析, 多代理分析, 大语言模型, 安全防御评估, 审计, 对称加密, 工具辅助聊天, 提示词模板, 机器学习, 用户模式Hook绕过, 策略比较, 网络安全, 网络流量分析, 自动化审计, 自动化攻击, 证据分析, 请求拦截, 违规检测, 隐私保护