TechPro369/soc-triage-console

GitHub: TechPro369/soc-triage-console

一个零依赖的纯前端 SOC 一线分析师分诊控制台作品集项目,通过模拟真实攻击场景展示告警分诊、ATT&CK 映射、Sigma 规则编写和威胁狩猎等安全运营核心技能。

Stars: 0 | Forks: 0

# Sentinel Watch — SOC Tier-1 分诊控制台 **🔗 在线演示:** [techpro369.github.io/soc-triage-console](https://techpro369.github.io/soc-triage-console/) ![状态](https://img.shields.io/badge/status-active-success) ![许可证](https://img.shields.io/badge/license-MIT-blue) ![框架](https://img.shields.io/badge/framework-MITRE%20ATT%26CK%20v15-red) ![方法论](https://img.shields.io/badge/IR-NIST%20800--61-orange) ## 目录 - [我为什么开发这个项目](#why-i-built-this) - [展示的技能](#skills-demonstrated) - [涉及的工具与平台](#tools--platforms-referenced) - [功能](#features) - [攻击场景演练](#attack-scenario-walkthroughs) - [架构](#architecture) - [技术栈](#tech-stack) - [快速入门](#getting-started) - [路线图](#roadmap) - [参考资料与延伸阅读](#references--further-reading) ## 我为什么开发这个项目 Tier-1 SOC 分析师的职位描述通常都要求相同的核心能力:在海量压力下进行告警分诊、MITRE ATT&CK 技术映射、使用 Sigma 或 KQL 编写检测规则、IOC 富化,以及按照 NIST 800-61 进行结构化的应急响应。阅读这些工作流程是一回事,能够在单一界面中*展示*它们则完全是另一回事。 我开发 Sentinel Watch 是为了让这些工作流程变得具象化。每一个面板都对应着分析师的真实任务。每一个告警都引用了真实的 MITRE 技术。每一个检测规则都遵循真实的 Sigma 语法。这是一个旨在回答一个问题的作品集项目:*“这个人能从第一天起就胜任 SOC 分析师的工作吗?”* ## 展示的技能 本项目展示了以下领域的实操能力: ### 应急响应 - **Tier-1 告警分诊** — 严重程度评分、基于风险的优先级排序、误报识别 - **NIST 800-61 IR 生命周期** — 检测与分析 → 遏制 → 根除 → 恢复 → 经验教训 - **升级条件** — 何时以及如何移交给 Tier-2 / IR 团队 - **案例文档化** — 调查记录、时间线重建、IOC 捕获 ### 威胁检测与工程 - **MITRE ATT&CK 框架映射** — 涵盖所有 14 种企业战术的技术识别 - **网络杀伤链分析** — 从侦察到目标行动(洛克希德·马丁模型) - **Sigma 检测规则编写** — 与厂商无关的检测逻辑 - **检测即代码原则** — 版本可控、可测试、可进行同行评审的规则 ### 威胁狩猎 - **假设驱动的狩猎** — 提出并测试威胁假设 - **基于 IOC 的狩猎** — 利用哈希、IP、域名、用户代理、父进程进行追踪 - **基于 TTP 的狩猎** — 搜索对手行为模式而非静态指标 - **威胁情报富化** — 将告警与 CTI 源进行关联 ### SIEM 工作流程 - **事件关联** — 合并不同的日志源以揭示攻击 - **查询编写** — 用于过滤和追踪的搜索语法 - **仪表盘设计** — 具备实战价值的视图,而非虚荣指标 - **性能指标** — MTTD(平均检测时间)、MTTR(平均响应时间)、告警疲劳指标 ## 涉及的工具与平台 Sentinel Watch 的设计借鉴了行业标准工具的界面和工作流程: | 功能 | 现实中的平台 | |---|---| | SIEM | Splunk Enterprise Security, Microsoft Sentinel, Elastic Security, IBM QRadar | | EDR | CrowdStrike Falcon, SentinelOne, Microsoft Defender for Endpoint | | 检测即代码 | Sigma, Splunk SPL, KQL, Elastic EQL | | 威胁情报 | MISP, OpenCTI, ThreatConnect, VirusTotal Enterprise | | SOAR | Splunk SOAR (Phantom), Palo Alto Cortex XSOAR, Tines | | 框架 | MITRE ATT&CK v15, NIST 800-61r2, Lockheed Martin Cyber Kill Chain, Pyramid of Pain | ## 功能 ### 🚨 告警分诊队列 实时流式传输的告警流,包含风险评分(0–100)、严重程度分类(严重 / 高 / 中 / 低 / 信息)、MITRE ATT&CK 技术标签、受影响资产详情,以及一键调查操作。支持排序、过滤和批量分配。 ### 🗺️ MITRE ATT&CK 覆盖热力图 交互式的 14 种战术矩阵,展示跨企业 ATT&CK 框架的检测覆盖率。单元格根据检测置信度(高 / 中 / 低 / 无覆盖)进行颜色编码,并支持点击穿透至相关的检测规则和最近匹配的告警。 ### 📜 Sigma 检测规则库 可浏览的检测规则目录,包含 YAML 源码视图、MITRE 技术映射、误报说明和测试状态。规则遵循官方 Sigma 规范,并按日志源(Windows、Linux、网络、云)进行组织。 ### 🔍 威胁狩猎控制台 自由格式的查询界面,支持 IOC 追踪(哈希 → 进程 → 用户 → 主机 → 网络)以及基于 TTP 的狩猎模式。预置的狩猎查询涵盖了常见的对手行为(横向移动、凭证转储、持久化机制、数据打包)。 ### 📊 SOC 指标仪表盘 运营指标包括 MTTD、MTTR、每位分析师的告警数、检测规则有效性以及随时间变化的误报率。围绕真正能推动 SOC 改进的指标设计,而非虚荣数字。 ## 攻击场景演练 该控制台内置了三个基于真实世界攻击模式的场景,每个场景都演练了从初始检测到经验教训的完整 IR 生命周期。 ### 场景 1:网络钓鱼 → 凭证窃取 → 商业电子邮件妥协 **杀伤链阶段:** 初始访问 → 凭证访问 → 收集 → 影响 **主要 ATT&CK 技术:** - T1566.002 — 鱼叉式网络钓鱼链接 - T1078.004 — 有效账户:云账户 - T1114.002 — 电子邮件收集:远程电子邮件收集 - T1564.008 — 隐藏痕迹:电子邮件隐藏规则 **故事情节:** 用户点击了 Office 365 凭证钓鱼链接。攻击者从可疑的地理位置(不可能的旅行)进行身份验证,创建了自动删除安全警报的收件箱规则,并针对财务团队策划了一起电汇欺诈企图。 **展示的分析师操作:** 1. 分诊不可能旅行的登录告警(风险评分 87) 2. 转移到邮箱审计日志并识别恶意的收件箱规则 3. 将活动映射到 ATT&CK 技术 4. 通过撤销会话和禁用账户进行遏制 5. 记录 IOC 并提交给威胁情报进行富化 ### 场景 2:Log4Shell 漏洞利用 → Cobalt Strike → 横向移动 **杀伤链阶段:** 漏洞利用 → 命令与控制 → 发现 → 横向移动 **主要 ATT&CK 技术:** - T1190 — 利用面向公众的应用 (CVE-2021-44228) - T1059.004 — 命令和脚本解释器:Unix Shell - T1071.001 — 应用层协议:Web 协议 (C2) - T1021.002 — 远程服务:SMB/Windows 管理共享 **故事情节:** 外部暴露的 Java 应用程序通过 Log4Shell 被利用。攻击者建立了 Cobalt Strike beacon,通过 SharpHound 执行 Active Directory 侦察,并尝试使用捕获的凭证横向移动到域控制器。 **展示的分析师操作:** 1. 将 WAF 拦截事件与成功的漏洞利用指标进行关联 2. 通过 JA3 指纹和 beacon 间隔分析识别 Cobalt Strike beacon 活动 3. 通过 LDAP 查询模式追踪 AD 侦察 4. 在网络层阻断横向移动尝试 5. 通过 Cobalt Strike 命名管道 IOC 狩猎其他潜在的入侵 ### 场景 3:内部威胁 — 凭证转储 → 数据外发 **杀伤链阶段:** 凭证访问 → 收集 → 外发 **主要 ATT&CK 技术:** - T1003.001 — 操作系统凭证转储:LSASS Memory - T1213 — 来自信息存储库的数据 - T1567.002 — 通过 Web 服务外发:云存储 **故事情节:** 特权用户对 LSASS 运行 Mimikatz,访问了超出其正常范围且敏感的 SharePoint 文档库,并在非工作时间将批量数据上传到个人云存储账户。 **展示的分析师操作:** 1. 检测来自非标准进程的 LSASS 访问 (Sysmon Event ID 10) 2. 建立用户行为基线以识别异常的 SharePoint 访问模式 3. 将数据流出量与典型用户配置文件进行关联对比 4. 应用 UEBA 评分提高告警优先级 5. 按照内部威胁 IR 标准操作程序与 HR 和法务协调 ## 架构 ``` ┌────────────────────────────────────────────────────────────┐ │ Sentinel Watch UI │ │ (Single-page application — vanilla HTML/CSS/JavaScript) │ └────────────────────────────────────────────────────────────┘ │ ├── Alert Queue Module ──── synthetic event generator ├── ATT&CK Matrix Module ── coverage data (JSON) ├── Sigma Library Module ── rule catalog (YAML embedded) ├── Hunt Console Module ─── query parser + indexed data └── Metrics Module ──────── time-series KPIs ``` **设计原则:** - **零依赖** — 可在任何静态主机上运行,无需构建步骤 - **真实数据** — 告警、IOC 和时间线反映了真实的攻击模式 - **教育优先于运营** — 专为学习和演示优化,而非用于生产部署 - **忠实于框架** — MITRE 技术 ID、Sigma 语法、NIST IR 阶段均准确符合当前规范 ## 技术栈 - **前端:** 原生 JavaScript (ES2020), HTML5, CSS3 (Grid + Flexbox) - **可视化:** 自定义基于 canvas 的热力图,SVG 图表 - **数据格式:** JSON 用于事件,YAML 用于 Sigma 规则 - **部署:** GitHub Pages(静态) - **参考框架:** MITRE ATT&CK v15, Sigma v2, NIST SP 800-61r2 没有构建流水线,没有 npm 依赖,没有外部 API 调用 —— 整个控制台是自包含的,加载后可离线运行。 ## 快速入门 ### 本地运行 ``` git clone https://github.com/TechPro369/soc-triage-console.git cd soc-triage-console # 在任意现代浏览器中打开 index.html # 或通过 Python 提供服务: python3 -m http.server 8000 # 然后访问 http://localhost:8000 ``` ### 使用控制台 1. **从告警队列开始** — 查看顶部最高风险的告警 2. **点击告警** 打开调查窗格,查看完整的事件上下文、ATT&CK 映射和建议的操作 3. **尝试各种场景** — 从菜单中加载三个预置攻击场景中的任何一个,以演练完整的 IR 工作流程 4. **探索 ATT&CK 矩阵** 以查看检测覆盖率并识别差距 5. **查阅 Sigma 规则库** 了解检测规则是如何编写的 ## 路线图 - [ ] 为狩猎控制台添加 CrowdStrike Falcon LogScale 查询语法支持 - [ ] 扩展至 10 个攻击场景,涵盖勒索软件、APT 和供应链 - [ ] 集成实时的 MITRE ATT&CK Navigator 导出功能以生成覆盖率报告 - [ ] 为每个场景添加 SOAR 风格的 playbook 可视化 - [ ] 构建一个 Sigma → KQL / SPL 规则转换器演示 ## 参考资料与延伸阅读 **框架与标准** - [MITRE ATT&CK 企业矩阵](https://attack.mitre.org/matrices/enterprise/) - [NIST SP 800-61r2 — 计算机安全应急处理指南](https://csrc.nist.gov/publications/detail/sp/800-61/rev-2/final) - [Lockheed Martin 网络杀伤链](https://www.lockheedmartin.com/en-us/capabilities/cyber/cyber-kill-chain.html) - [痛苦金字塔 — David Bianco](https://detect-respond.blogspot.com/2013/03/the-pyramid-of-pain.html) **检测工程** - [Sigma — 用于 SIEM 系统的通用签名格式](https://github.com/SigmaHQ/sigma) - [SigmaHQ 规则库](https://github.com/SigmaHQ/sigma/tree/master/rules) - [Florian Roth — 检测工程资源](https://github.com/Neo23x0) **SOC 与威胁狩猎** - [SANS FOR508 — 高级 IR 与威胁狩猎](https://www.sans.org/cyber-security-courses/advanced-incident-response-threat-hunting-training/) - [威胁狩猎手册](https://github.com/OTRF/ThreatHunter-Playbook) - [Atomic Red Team — 对手模拟](https://github.com/redcanaryco/atomic-red-team) ## 关于作者 由 **Biruk Aregu** 开发 — 网络安全专业人士,拥有 CompTIA Security+、AWS Solutions Architect Associate 认证以及有效的 DoD 秘密级许可。目前担任 IT 专家 (Tier II),支持国防后勤局。 - 🌐 [birukaregu.com](https://birukaregu.com) - 💼 [LinkedIn](https://www.linkedin.com/in/birukaregu) - 📧 通过作品集联系 ## 许可证 MIT 许可证 — 可免费复刻、学习和改编,用于您自己的学习或作品集。感谢注明出处,但非必须。 如果这个项目帮助您获得了面试机会或通过了 SOC 分析师的技能评估,我很乐意听听您的经历。
标签:Homebrew安装, HTML, 前端, 后端开发, 威胁告警, 安全演练, 安全运营, 扫描框架