ijaz-aj/splunk-security-platform
GitHub: ijaz-aj/splunk-security-platform
基于免费工具从零构建的全栈 Splunk 安全平台,整合多源数据接入、CIM 标准化、威胁情报丰富、检测即代码与基于风险的告警,展示完整的平台工程与 SOC 运营能力。
Stars: 0 | Forks: 0
# Splunk 安全平台
这是一个从零开始构建的单实例 Splunk Enterprise 部署——通过三种数据采集架构接入遥测数据,将其标准化至 CIM,并结合威胁情报与资产上下文进行丰富,最终由采用版本控制的代码编写、在 CI 环境中通过真实对手遥测数据验证,并通过基于风险的告警 pipeline 汇总的检测规则来驱动。
完全基于符合严格许可上限的免费工具端到端构建,旨在同时展示 Splunk 平台工程、检测工程和 SOC 运营。
## 架构
```
%%{init: {"theme":"base","themeVariables":{"fontFamily":"Segoe UI, Helvetica, Arial, sans-serif","fontSize":"13px","lineColor":"#9AA7B8","clusterBkg":"#F7F9FC","clusterBorder":"#E2E8F0","titleColor":"#334155"},"flowchart":{"curve":"basis","nodeSpacing":36,"rankSpacing":60,"padding":16,"useMaxWidth":true}}}%%
flowchart TB
subgraph S1["1 · Telemetry sources"]
direction LR
W["Windows 10
Sysmon · Security"] L["Ubuntu
auditd · Sysmon"] Z["Zeek
network metadata"] SU["Suricata
IDS alerts"] TI["Threat feeds
URLhaus · Feodo"] MI["MISP
optional"] end subgraph S2["2 · Collection"] direction LR UF["Universal forwarder
agent · TCP 9997"] SC["SC4S · syslog
UDP 514"] HEC["HTTP event collector
API push · TCP 8088"] end subgraph S3["3 · Telemetry pipeline"] CR["Cribl Stream
route · reduce · enrich · sample"] end subgraph S4["4 · Indexing and normalisation — Splunk Enterprise"] direction LR PIPE["Ingest pipeline
props · transforms"] IDX["Indexes
endpoint · network · risk"] CIM["CIM data models
accelerated · tstats"] end subgraph S5["5 · Enrichment frameworks"] direction LR THREAT["Threat intelligence
KV Store · indicator ageing"] ASSET["Asset and identity
context at search time"] end subgraph S6["6 · Analytics and operations"] direction LR MON["Monitoring console
deployment server"] RBA["Risk-based alerting
scoring · decay"] DASH["Dashboard Studio
cost vs coverage"] end subgraph S7["7 · Detection content supply chain"] direction LR YAML["YAML detections
ATT&CK mapped"] CTL["contentctl
build · test"] GHA["GitHub Actions
attack replay CI"] end W --> UF L --> UF Z --> UF SU --> SC TI --> HEC MI -.-> HEC UF --> CR SC --> CR HEC --> CR CR --> PIPE PIPE --> IDX IDX --> CIM CIM --> THREAT CIM --> ASSET THREAT --> RBA ASSET --> RBA RBA --> DASH IDX --> MON YAML --> CTL CTL --> GHA GHA -. deploys app .-> S4 classDef core fill:#EAF2FE,stroke:#3B82F6,stroke-width:1.5px,color:#1E3A8A; classDef flag fill:#E7FBF3,stroke:#10B981,stroke-width:2px,color:#065F46; classDef base fill:#FFFFFF,stroke:#D5DEEA,stroke-width:1.3px,color:#334155; classDef opt fill:#FBFCFE,stroke:#A9B4C4,stroke-width:1.2px,stroke-dasharray:5 4,color:#64748B; class W,L,Z,SU,TI,UF,SC,HEC,MON,DASH base; class PIPE,IDX,CIM core; class CR,THREAT,ASSET,RBA,YAML,CTL,GHA flag; class MI opt; ``` ## 核心成果 | 指标 | 结果 | |---|---| | 数据摄入缩减量(Cribl + 源过滤) | _待定 第 8 阶段_ | | 保留的 ATT&CK 技术覆盖率 | _待定 第 8 阶段_ | | 告警数量缩减(RBA) | _待定 第 9 阶段_ | | 搜索性能提升 | _待定 第 10 阶段_ | ## 展示内容 - **平台工程** — 安装、index 设计、forwarder 管理、许可管理、性能调优 - **数据工程** — 三种数据摄入方法(UF、syslog/SC4S、HEC)、Cribl pipeline、CIM 标准化 - **数据丰富** — 在 Splunk Core 基础上重建的威胁情报与资产/身份框架 - **检测工程** — 检测即代码、映射 ATT&CK、通过攻击重放进行 CI 测试 - **SOC 运营** — 攻击验证、误报调优、威胁狩猎、基于风险的告警(Risk-Based Alerting) ## 仓库布局 | 路径 | 内容 | |---|---| | `docs/` | 架构、检测标准、实验室生命周期、运行手册、概念笔记 | | `detections/` | 检测唯一真实数据源 (YAML) | | `contentctl/` | contentctl 项目与构建的 Splunk app | | `conf/` | Splunk 配置文件 | | `cribl/` | Cribl Stream pipeline 与路由导出 | | `dashboards/` | Dashboard Studio 源文件 | | `ansible/` | 基础设施即代码部署 | | `case-studies/` | 每种技术对应的一个经过记录的攻击-检测-调优场景 | | `coverage/` | ATT&CK Navigator 覆盖层 | ## 状态 正在积极构建中 — 请参阅 [PROGRESS.md](PROGRESS.md) 获取阶段日志,以及 [LIMITATIONS.md](LIMITATIONS.md) 了解关于实验室与生产环境范围的真实评估。 ## 作者 Ijaz A J — [github.com/ijaz-aj](https://github.com/ijaz-aj)
Sysmon · Security"] L["Ubuntu
auditd · Sysmon"] Z["Zeek
network metadata"] SU["Suricata
IDS alerts"] TI["Threat feeds
URLhaus · Feodo"] MI["MISP
optional"] end subgraph S2["2 · Collection"] direction LR UF["Universal forwarder
agent · TCP 9997"] SC["SC4S · syslog
UDP 514"] HEC["HTTP event collector
API push · TCP 8088"] end subgraph S3["3 · Telemetry pipeline"] CR["Cribl Stream
route · reduce · enrich · sample"] end subgraph S4["4 · Indexing and normalisation — Splunk Enterprise"] direction LR PIPE["Ingest pipeline
props · transforms"] IDX["Indexes
endpoint · network · risk"] CIM["CIM data models
accelerated · tstats"] end subgraph S5["5 · Enrichment frameworks"] direction LR THREAT["Threat intelligence
KV Store · indicator ageing"] ASSET["Asset and identity
context at search time"] end subgraph S6["6 · Analytics and operations"] direction LR MON["Monitoring console
deployment server"] RBA["Risk-based alerting
scoring · decay"] DASH["Dashboard Studio
cost vs coverage"] end subgraph S7["7 · Detection content supply chain"] direction LR YAML["YAML detections
ATT&CK mapped"] CTL["contentctl
build · test"] GHA["GitHub Actions
attack replay CI"] end W --> UF L --> UF Z --> UF SU --> SC TI --> HEC MI -.-> HEC UF --> CR SC --> CR HEC --> CR CR --> PIPE PIPE --> IDX IDX --> CIM CIM --> THREAT CIM --> ASSET THREAT --> RBA ASSET --> RBA RBA --> DASH IDX --> MON YAML --> CTL CTL --> GHA GHA -. deploys app .-> S4 classDef core fill:#EAF2FE,stroke:#3B82F6,stroke-width:1.5px,color:#1E3A8A; classDef flag fill:#E7FBF3,stroke:#10B981,stroke-width:2px,color:#065F46; classDef base fill:#FFFFFF,stroke:#D5DEEA,stroke-width:1.3px,color:#334155; classDef opt fill:#FBFCFE,stroke:#A9B4C4,stroke-width:1.2px,stroke-dasharray:5 4,color:#64748B; class W,L,Z,SU,TI,UF,SC,HEC,MON,DASH base; class PIPE,IDX,CIM core; class CR,THREAT,ASSET,RBA,YAML,CTL,GHA flag; class MI opt; ``` ## 核心成果 | 指标 | 结果 | |---|---| | 数据摄入缩减量(Cribl + 源过滤) | _待定 第 8 阶段_ | | 保留的 ATT&CK 技术覆盖率 | _待定 第 8 阶段_ | | 告警数量缩减(RBA) | _待定 第 9 阶段_ | | 搜索性能提升 | _待定 第 10 阶段_ | ## 展示内容 - **平台工程** — 安装、index 设计、forwarder 管理、许可管理、性能调优 - **数据工程** — 三种数据摄入方法(UF、syslog/SC4S、HEC)、Cribl pipeline、CIM 标准化 - **数据丰富** — 在 Splunk Core 基础上重建的威胁情报与资产/身份框架 - **检测工程** — 检测即代码、映射 ATT&CK、通过攻击重放进行 CI 测试 - **SOC 运营** — 攻击验证、误报调优、威胁狩猎、基于风险的告警(Risk-Based Alerting) ## 仓库布局 | 路径 | 内容 | |---|---| | `docs/` | 架构、检测标准、实验室生命周期、运行手册、概念笔记 | | `detections/` | 检测唯一真实数据源 (YAML) | | `contentctl/` | contentctl 项目与构建的 Splunk app | | `conf/` | Splunk 配置文件 | | `cribl/` | Cribl Stream pipeline 与路由导出 | | `dashboards/` | Dashboard Studio 源文件 | | `ansible/` | 基础设施即代码部署 | | `case-studies/` | 每种技术对应的一个经过记录的攻击-检测-调优场景 | | `coverage/` | ATT&CK Navigator 覆盖层 | ## 状态 正在积极构建中 — 请参阅 [PROGRESS.md](PROGRESS.md) 获取阶段日志,以及 [LIMITATIONS.md](LIMITATIONS.md) 了解关于实验室与生产环境范围的真实评估。 ## 作者 Ijaz A J — [github.com/ijaz-aj](https://github.com/ijaz-aj)
标签:OISF, 威胁情报, 安全运营中心, 开发者工具, 开源框架, 持续集成, 日志管理, 系统提示词, 网络映射