一款自动化风险处置工具

我做了一个可直接运行的自动化风险处置工具,名称为 AI-SOC Autopilot Guard v0.1.0。它包含 Python 工具、规则、示例日志、自动修复逻辑、AI 摘要接口、Markdown/JSON 报告、部署教程、设计文档和样例报告的完整包。

下载:

AI-SOC-Autopilot.zip

我在沙盒里已经执行过:

bash 复制代码
python aisoc_guard.py --config config.example.yaml init-baseline
python aisoc_guard.py --config config.example.yaml scan
python aisoc_guard.py --config config.example.yaml scan --apply-safe-fixes

工具可以成功识别示例中的 SSH 爆破、登录成功、sudo 高危命令、Web 攻击探测、Log4Shell/JNDI 探测、疑似 WebShell 上传、反弹 Shell、敏感文件权限过宽、EICAR 测试样本,并生成检测、处置、攻击流水账和溯源报告。


一、必须先明确边界

这个系统可以尽量减少人工工作量,但不能设计成"AI 拿 root 权限自动处理一切"。

原因很简单:

  • 0day 没有公开 CVE、没有稳定签名,不能保证被任何工具完全检测出来。合理做法是通过异常行为、进程链、文件落地、网络外连、崩溃日志、IDS/EDR 告警做关联检测。
  • 1day / Nday 可以通过漏洞库、CISA KEV、EPSS、Trivy、pip-audit、资产暴露面和攻击迹象排序处理。CISA KEV 用于跟踪已知被利用漏洞,EPSS 每天发布 CVE 被利用概率和排名,可用于漏洞优先级排序。(网络安全和基础设施安全局1)
  • APT 识别 不能靠单条日志判断,必须看长期 TTP、基础设施复用、工具链、攻击阶段和威胁情报。MITRE ATT&CK 是基于真实观察的攻击战术和技术知识库,适合做攻击链映射,但不能替代人工归因。(MITRE ATT\&CK2)
  • 溯源报告 只能输出"基于证据的技术溯源",例如源 IP、命中行为、ATT&CK 技术、攻击时间线、情报命中情况。不能把源 IP 直接等同于真实攻击者身份。

二、总体设计方案

架构分为六层:

text 复制代码
数据采集层
  ↓
检测引擎层
  ↓
风险分级与攻击链关联层
  ↓
自动处置 / 修复建议层
  ↓
AI 报告生成层
  ↓
审计、溯源、工单与团队协作层

1. 数据采集层

建议生产环境接入这些数据源:

数据源 作用
Linux auth.log / secure 登录、爆破、sudo、提权行为
Web access.log / error.log SQLi、RCE、目录穿越、WebShell 上传、0day 利用迹象
应用日志 异常调用、命令执行、崩溃、业务异常
进程信息 反弹 Shell、curl/wget 管道执行、base64 执行
网络连接 C2 外连、异常监听、敏感服务暴露
文件系统 WebShell、木马、敏感文件权限、完整性变化
ClamAV / YARA 木马、病毒、恶意样本检测
Trivy / pip-audit 依赖、镜像、文件系统漏洞检测
Wazuh / Falco / Suricata SIEM/XDR、运行时安全、网络威胁检测

Wazuh 是开源 XDR/SIEM 平台,覆盖威胁检测、日志分析、漏洞评估、文件完整性监控、恶意软件检测和事件响应;Suricata 是开源 IDS/IPS/NSM 引擎;Falco 面向主机、容器、Kubernetes 和云环境做运行时威胁检测。(Wazuh3)

2. 检测引擎层

本版本已经实现:

  • SSH 暴力破解检测;
  • SSH 成功登录检测;
  • sudo 高危命令检测;
  • Web SQL 注入探测;
  • 目录穿越探测;
  • Log4Shell/JNDI 探测;
  • WebShell 上传行为检测;
  • 应用日志中的反弹 Shell 检测;
  • 进程命令行高危行为检测;
  • 网络连接到本地威胁情报 IP;
  • 敏感文件权限过宽;
  • 文件完整性基线变化;
  • EICAR 测试样本检测;
  • 简单 PHP WebShell 文件特征检测;
  • 可选接入 ClamAV、Trivy、pip-audit。

Sigma 适合把日志检测逻辑标准化为通用 SIEM 规则,YARA 适合用文本或二进制模式识别和分类恶意样本;ClamAV 是开源反病毒引擎,可检测木马、病毒、恶意软件等威胁。(GitHub4)

3. 风险分级与攻击链关联层

本工具会把每条 finding 标准化为:

json 复制代码
{
  "id": "SSH_BRUTE_FORCE:203.0.113.66",
  "severity": "high",
  "confidence": "high",
  "category": "credential_access",
  "mitre": ["T1110"],
  "evidence": {}
}

然后按源 IP、时间、行为类别和 MITRE ATT&CK 技术生成:

  • 攻击活动时间线;
  • 攻击者活动流水账;
  • 溯源分析报告;
  • 修复建议;
  • 自动处置记录。

4. 自动处置层

默认保守,只允许低风险白名单动作:

风险 自动动作
.env 等敏感文件权限过宽 chmod 600
EICAR 测试样本 隔离到 quarantine
明确测试场景中的安全配置问题 可按规则扩展

默认不自动做:

  • 删除可疑真实恶意文件;
  • kill 可疑进程;
  • 改防火墙;
  • 自动封禁 IP;
  • 自动升级核心依赖;
  • 修改数据库权限;
  • 修改云 IAM / Kubernetes RBAC;
  • 重启核心生产服务。

这些动作建议走审批或 SOAR playbook。

5. AI 报告层

AI 只负责:

  • 风险摘要;
  • 攻击链归纳;
  • 修复建议措辞;
  • 工单说明;
  • 复盘初稿;
  • 溯源报告文本组织。

AI 不负责:

  • 执行 shell;
  • 修改生产系统;
  • 决定是否删除文件;
  • 直接封禁 IP;
  • 未经证据做 APT 组织归因。

包里支持可选接入 Ollama:

yaml 复制代码
ai:
  enabled: true
  provider: "ollama"
  ollama_url: "http://127.0.0.1:11434/api/chat"
  model: "qwen2.5:7b"

三、包内内容

压缩包结构如下:

text 复制代码
AI-SOC-Autopilot/
├── aisoc_guard.py              # 主程序
├── config.example.yaml         # 配置示例
├── requirements.txt            # Python 依赖
├── Dockerfile                  # 容器镜像示例
├── docker-compose.yml          # Docker Compose 示例
├── README.md                   # 快速开始
├── docs/
│   ├── DESIGN.md               # 详细设计方案
│   ├── DEPLOYMENT.md           # 部署教程
│   ├── OPERATIONS.md           # 使用与运维手册
│   ├── LIMITATIONS.md          # 边界与风险说明
│   └── SAMPLE_REPORT.md        # 样例报告
├── rules/
│   ├── detections.yaml         # 检测规则说明模板
│   └── malware.yar             # YARA 示例规则
├── samples/
│   ├── auth.log                # SSH 爆破与登录样例
│   ├── nginx_access.log        # Web 攻击样例
│   ├── app.log                 # 反弹 Shell 样例
│   ├── .env                    # 权限风险样例
│   └── eicar.txt               # EICAR 测试文件
├── scripts/
│   ├── install.sh
│   ├── run_once.sh
│   └── run_daemon.sh
├── reports/
├── state/
└── quarantine/

四、最短部署命令

bash 复制代码
unzip AI-SOC-Autopilot.zip
cd AI-SOC-Autopilot

python3 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt

python aisoc_guard.py --config config.example.yaml init-baseline
python aisoc_guard.py --config config.example.yaml scan
python aisoc_guard.py --config config.example.yaml scan --apply-safe-fixes

报告位置:

text 复制代码
./reports/

常驻运行:

bash 复制代码
python aisoc_guard.py --config config.example.yaml daemon --interval 300 --apply-safe-fixes

Docker 运行:

bash 复制代码
docker compose up --build -d

五、下一步生产化建议

这个包是可以直接运行的参考版本,但不是完整商业 EDR/XDR。你要给团队使用,建议按这个顺序推进:

  1. 第一阶段:内部 dry-run

    • 只接入测试机、测试日志;
    • 不开启自动修复;
    • 观察误报率。
  2. 第二阶段:低风险自动修复

    • 开启敏感文件权限修复;
    • 开启 EICAR/测试样本隔离;
    • 仍不自动 kill 进程、不自动封 IP。
  3. 第三阶段:接入现有安全组件

    • Wazuh 做主机日志、FIM、漏洞和合规;
    • Falco 做运行时安全;
    • Suricata 做网络 IDS/IPS;
    • Trivy 做镜像和依赖漏洞;
    • ClamAV/YARA 做恶意文件识别。
  4. 第四阶段:SOAR 化

    • 低风险自动闭环;
    • 高风险自动生成工单;
    • critical 事件自动拉群、冻结证据、等待审批;
    • 所有动作写入审计日志。

下载包在这里:

AI-SOC-Autopilot.zip