umang220/DNS-Threat-Hunting-Splunk-Analysis
GitHub: umang220/DNS-Threat-Hunting-Splunk-Analysis
基于Splunk SIEM的DNS日志威胁狩猎方案,提供SPL查询规则和仪表板模板,用于检测隧道、DGA、C2等DNS层攻击。
Stars: 1 | Forks: 0
[](https://github.com/umang220/DNS-Threat-Hunting-Splunk-Analysis)
[](https://github.com/umang220/DNS-Threat-Hunting-Splunk-Analysis/blob/main/LICENSE)
[ ](https://github.com/umang220/DNS-Threat-Hunting-Splunk-Analysis/stargazers)
[ ](https://github.com/umang220/DNS-Threat-Hunting-Splunk-Analysis/forks)
[ ](https://github.com/umang220/DNS-Threat-Hunting-Splunk-Analysis/blob/main/LICENSE)
## 🚀 项目概述
本项目演示了如何使用 **Splunk SIEM** 来获取、分析和可视化 DNS 日志文件,以进行威胁狩猎。主要关注点:检测异常情况,例如可疑域名、大容量查询、隧道、DGA(域名生成算法)以及非工作时间活动。
**为什么要进行 DNS 分析?** DNS 通常是攻击的第一步(例如 C2 通信、数据泄露)。此设置有助于 SOC 分析师及早识别威胁。
### 🎯 目标
- 解析并索引 DNS 日志(BIND、Windows 或 Cisco Umbrella 格式)。
- 构建 SPL 查询以进行异常检测。
- 创建交互式仪表板以进行实时监控。
- 模拟威胁场景并生成警报。
## 🛠️ 技术栈
- **Splunk Enterprise**(SIEM 工具)
- **SPL(搜索处理语言)**用于查询
- **Markdown** 用于文档编写
- 样本数据:合成 DNS 日志(出于隐私考虑,不共享真实数据)
## 📊 分步实施
### 1. 数据获取
- 通过 `Add Data` > `Upload` 将样本 DNS 日志上传到 Splunk。
- 配置了 sourcetype:`dns`,并进行了自定义字段提取(例如,通过正则表达式提取 `query`:`r"(?P[^.]+)\..*"`)。
- 索引在 `index=dns_logs` 下。
### 2. 关键 SPL 查询
以下是我构建的核心搜索:
#### 查询量最大的域名(大容量指标)
```
index=dns_logs sourcetype=dns | stats count by query | sort - count | head 10 | rename count as "Query_Volume"
#### 长子域名 (DNS Tunneling 检测)
index=dns_logs sourcetype=dns
| eval length=len(query)
| where length > 50
| stats count by query, src_ip
| sort -count
#### 非工作时间查询激增 (Unusual Timing 检测)
index=dns_logs sourcetype=dns
| eval hour=strftime(_time, "%H")
| where hour < "06" OR hour > "22"
| timechart span=1h count by src_ip
#### 每个 IP 的稀有 / 唯一域名 (DGA / Beaconing 检测)
index=dns_logs sourcetype=dns
| stats dc(query) as unique_domains by src_ip
| where unique_domains > 100
| sort -unique_domains
```
### 3. 创建仪表板
构建了一个用于 DNS 威胁监控的自定义 Splunk 仪表板:
- 包含的面板:热门域名(条形图)、随时间变化的查询量(折线图)、非工作时间峰值、长子域名表、按 IP 排名的主要通信者。
- 使用上述 SPL 查询作为面板的数据源。
- 仪表板有助于快速的视觉化威胁狩猎。
## 示例:Splunk DNS 搜索输出

*显示 DNS 日志分析的 Splunk 搜索结果示例。*
标签:AMSI绕过, C2通信, DGA域名检测, DNS日志分析, DNS隧道, IP 地址批量处理, Splunk Enterprise, SPL查询, 仪表盘, 命令与控制, 威胁检测, 安全运营, 异常检测, 扫描框架, 数据摄取, 数据渗出, 网络安全, 防御加固, 隐私保护