isreekanthh/ELK-Based-Threat-Detection-and-Log-Correlation
GitHub: isreekanthh/ELK-Based-Threat-Detection-and-Log-Correlation
这是一个基于 ELK Stack 实现的 SIEM 演示项目,通过自定义关联规则和 KQL 查询来检测并分析 Windows 系统中的多阶段攻击行为。
Stars: 0 | Forks: 0
# 基于 ELK 的威胁检测与日志关联
使用 Elasticsearch、Logstash 和 Kibana 设计并实现一个基于日志的威胁检测系统,并通过自定义关联规则来识别多阶段攻击行为。
# 使用 ELK Stack 实现 SIEM(Winlogbeat + Kali 攻击)
## 概述
本项目演示了如何使用 ELK Stack 实现安全信息与事件管理(SIEM)系统,以检测现实世界的网络攻击。
来自 Windows 10 机器的日志通过 Winlogbeat 收集并在 Kibana 中进行分析,同时攻击是从 Kali Linux 机器模拟的。
## 目标
* 使用 ELK Stack 收集并可视化 Windows 日志
* 从 Kali Linux 模拟现实世界的攻击
* 开发关联规则以检测攻击
* 构建用于安全监控的仪表板
## 架构
```
Kali Linux (Attacker)
↓
Windows 10 (Winlogbeat)
↓
Elasticsearch + Logstash (Kali)
↓
Kibana Dashboard
```
## 技术栈
* Elasticsearch
* Logstash
* Kibana
* Winlogbeat
* Kali Linux
* Windows 10
## 设置
### ELK Stack (Kali)
* 安装 Elasticsearch、Logstash、Kibana
* 启动服务:
```
bin/elasticsearch
bin/kibana
```
### Winlogbeat (Windows)
* 安装 Winlogbeat
* 配置:
```
output.elasticsearch:
hosts: ["http://:9200"]
```
### 3. 启用日志记录
* 安全日志(4624、4625 等)
* PowerShell 脚本块日志记录(事件 4104)
## 攻击模拟
### 凭证填充
工具:Hydra
```
hydra -l Administrator -P /usr/share/wordlists/rockyou.txt rdp://
```
生成的日志:
* 4625 → 登录失败
* 4624 → 登录成功
* 4672 → 管理员权限
### PowerShell 利用
```
powershell -EncodedCommand
```
生成的日志:
* 4104 → 脚本执行日志
### DNS 隧道(模拟)
```
nslookup randomstring.test.com
```
生成的日志:
* DNS 查询日志
## 检测规则 (KQL)
### 凭证填充
```
event.code: 4625
```
### PowerShell 攻击
```
event.code: 4104 AND (
message: "*EncodedCommand*" OR
message: "*DownloadString*" OR
message: "*Invoke-Expression*"
)
```
### DNS 隧道
```
dns.question.name: "*.*.*.*"
```
## 关联逻辑
示例攻击链:
```
4625 → 4624 → 4672 → 5379
```
指示:
* 暴力破解 → 成功 → 管理员访问 → 凭证提取
## 仪表板
创建了 Kibana 仪表板以可视化:
* 失败的登录尝试
* 成功的登录
* PowerShell 活动
* DNS 查询
## 关键收获
* 日志关联在 SIEM 中的重要性
* 检测暴力破解和利用后活动
* 用于攻击检测的 PowerShell 日志记录
* 构建用于安全监控的仪表板
## 挑战
* 启用 PowerShell 日志记录
* 处理嘈杂的日志
* DNS 日志记录设置
* 规则调优
## 未来改进
* 集成 Elastic SIEM 模块
* 添加告警系统
* 使用机器学习检测
* 添加威胁情报
## 参考资料
* Elastic 文档
* Microsoft 事件 ID 文档
* MITRE ATT&CK 框架
## 作者
Sreekanth A
网络安全专业学生
标签:AMSI绕过, DNS 隧道, Elasticsearch, ELK Stack, KQL, Logstash, OpenCanary, PowerShell 攻击, Windows 日志, Winlogbeat, 关联规则, 内容过滤, 凭证暴力破解, 多阶段攻击, 威胁检测, 安全监控仪表盘, 攻击模拟, 日志关联, 红队行动, 网络安全, 越狱测试, 速率限制, 隐私保护, 驱动签名利用