用途
security-investigator-automation 是一个自动化安全调查框架,将 GitHub Copilot Agent Skills、VS Code 与 Model Context Protocol(MCP)服务器组合在一起,使安全分析人员能够用自然语言对 Microsoft Sentinel、Defender XDR、Graph API 及威胁情报平台发起调查。框架内置 25 个专用调查工作流,配合 KQL 查询、威胁情报富化和自动化 HTML 报告生成。
主要能力
框架覆盖多个调查方向:
- 用户调查:分析 Entra ID 登录活动与异常、MFA 状态与认证方式、风险登录与 Identity Protection 告警、设备注册与合规、审计日志变更、关联事件与告警,并生成带 IP 富化的 HTML 报告。
- 事件调查:评估严重级别(CRITICAL/HIGH/MEDIUM/LOW)、提取实体(用户、设备、IP、进程)、递归调查实体、映射 MITRE ATT&CK、跨 Sentinel 与 Defender XDR 关联证据。
- IoC 调查:聚合 Defender Threat Intelligence API、Sentinel ThreatIntelligenceIndicator 表、AbuseIPDB 信誉分、Shodan 端口/服务/CVE 数据、VPN 检测(vpnapi.io)、IPInfo 地理位置,并评估组织暴露面。
- 设备调查:分析 Defender 告警与漏洞、设备合规状态、登录用户与会话、进程执行、网络连接、文件操作。
- 认证与访问:追踪 SessionId 认证链、区分令牌重用与交互式 MFA、检测地理异常、分析条件访问策略失败与策略状态变更。
- 行为分析:设备与 SPN 的范围漂移检测,基于可配置基线窗口(默认 30 天)计算五维 Drift Score(Volume、Processes、Accounts、Command Chains、Code Signing)。
- 态势与暴露:威胁脉冲快速扫描(覆盖 9 个安全域,输出 🔴 Escalate / 🟠 Investigate / 🟡 Monitor / ✅ Clear 分级结论)、暴露管理扫描(Defender EASM、互联网暴露资产、影子 IT、SSL/TLS 证书清单、域名枚举)、身份态势分析(来宾用户风险、特权角色、MFA 缺口、旧式认证、不活跃高权限账户)。
使用方式
安装:克隆仓库 https://github.com/SCStelz/security-investigator.git,进入目录后用 VS Code 打开,创建 Python 虚拟环境并激活,然后安装依赖(推荐 pip install --require-hashes -r requirements.lock,或 pip install -r requirements.txt)。
配置:复制 config.json.template 为 config.json 并填写 workspace_id、tenant_id、subscription_id、resource_group、workspace_name;复制 .env.template 为 .env 并填写 IPINFO_TOKEN、ABUSEIPDB_API_KEY、VPNAPI_KEY、SHODAN_API_KEY;复制 .vscode/mcp.json.template 为 .vscode/mcp.json,模板已预配置 @sentinel-datalake、@sentinel-triage、@graph-api、@kql-search、@microsoft-learn、@azure-mcp-server、@sentinel-graph 等 MCP 服务器,以及 geomap、heatmap、incident-comment 等本地 MCP 应用。
使用:在 VS Code 中以 Agent 模式打开 Copilot Chat(Ctrl+Shift+I),输入自然语言指令,例如“Run a threat pulse scan”“Investigate user@domain.com for the last 7 days”“Analyze incident 12345”“Is this IP malicious? 203.0.113.42”“Investigate computer WIN-CLIENT01”“Trace authentication for SessionId abc123”“Detect device drift for WIN-SERVER01”“Run exposure management scan”“Analyze identity posture”。系统会根据关键词自动匹配技能。
Python 工具:可通过 from report_generator import generate_investigation_report 生成 HTML 报告,通过 from enrich_ips import enrich_ip_address 富化 IP,或用 python generate_report_from_json.py investigation_output.json 从 JSON 批量生成报告。
自定义技能:在 .github/skills/ 下按 SKILL.md 模板创建自定义调查技能,并在 .github/copilot-instructions.md 中引用。
适用场景
适用于使用 Microsoft Sentinel 与 Defender XDR 的安全运营团队,进行威胁狩猎、事件响应、身份与设备调查、暴露面评估和定期安全报告生成。
限制
威胁情报 API 存在配额限制:IPInfo 免费层每月 50,000 次请求,AbuseIPDB 免费层每天 1,000 次请求,Shodan 需要付费 API 密钥,VPNapi 免费层仅支持基础检查;API 不可用时富化会优雅降级。@sentinel-graph 处于私有预览阶段。使用前需具备 Azure 租户、Sentinel 工作区及相关凭据。