mari-ww/log-analysis-elk-stack
GitHub: mari-ww/log-analysis-elk-stack
基于 ELK Stack 模拟 SOC 安全运营工作流,对 Apache 访问日志进行摄取、解析和可视化,识别可疑流量模式和安全威胁的入门级日志分析实战项目。
Stars: 0 | Forks: 0
# 📊 Apache 日志分析 – 使用 ELK Stack 进行 SOC 调查
[]()
[]()
[]()
## 🔎 项目概述
本项目使用 ELK Stack (Elasticsearch, Logstash 和 Kibana) 模拟安全运营中心 (SOC) 调查,以分析 Apache Web 服务器的访问日志。
目标是摄取、解析和可视化 HTTP 日志,从而检测可疑的活动模式,例如:
- 自动化侦察
- 过多的请求行为
- 可能的暴力破解尝试
- 潜在的类似 DoS 的流量峰值
- Web 扫描活动
# 📦 项目结构
```
log-analysis-elk-stack/
├── kibana_dashboard/
│ ├── dashboard.png
│ ├── top-10-ips.png
│ ├── top-ips-timeline.png
│ ├── requests-per-minute.png
│ └── http-status-codes.png
│
├── logstash/
│ ├── apache_logs.log
│ └── pipeline.conf
│
└── docker-compose.yml
```
# 🎯 调查目标
在分析过程中,探讨了以下安全问题:
* 哪些 IP 地址产生了最大的流量?
* 是否存在异常的请求峰值?
* 是否有自动化扫描的迹象?
* HTTP 错误是否在增加?
* 随着时间的推移,是否能看到可疑的模式?
# 📈 安全分析
## 1. 综合仪表板

环境概述包含:
* HTTP 请求总数
* 最活跃的 IP 地址
* HTTP 响应分布
* 流量趋势
该仪表板提供了快速的情况感知视图,类似于 SOC 监控面板。
## 2. 最活跃的前 10 个 IP 地址

### 发现:
* 某些 IP 地址产生了明显更高的流量。
* 该行为与扫描器或僵尸网络等自动化工具常见的模式相符。
* 应使用额外的威胁情报源对这些 IP 进行进一步调查。
## 3. IP 活动时间轴

### 发现:
* 在特定时间窗口内观察到流量集中。
* 重复的活动模式可能表明存在计划任务脚本或自动化侦察。
## 4. 每分钟请求数分析

### 发现:
* 在整个时间轴上识别出了流量峰值。
* 请求的突然增加可能表明:
* 自动化扫描
* Fuzzing 活动
* 小规模的 DoS 尝试
## 5. HTTP 状态码调查

### 发现:
* 大量的 `404` 响应可能表明存在端点探测尝试。
* `500` 响应增加可能表明异常请求触发了服务器端错误。
* HTTP 模式为识别可疑行为提供了有价值的指标。
# 🚨 SOC 分析师视角
基于日志分析,识别出了可疑的活动模式,包括:
| 检测项 | 潜在威胁 |
| ----------------------------------- | ------------------------------- |
| 单个 IP 的高请求量 | 自动化僵尸网络 / 扫描 |
| 多个失败路径 (404) | 侦察 |
| 流量峰值 | 可能的 DoS 行为 |
| 服务器错误 (500) | 潜在的漏洞利用尝试 |
进一步的调查将包括:
* 检查 IP 信誉
* 审查请求 payload
* 与防火墙日志进行关联
* 创建检测规则
# 🧰 使用的技术
| 工具 | 用途 |
| ------------------ | ------------------------------------- |
| Elasticsearch | 日志存储和索引 |
| Logstash | 日志摄取和解析 |
| Kibana | 安全可视化和仪表板 |
| Apache Access Logs | 数据源 |
| Docker | 环境部署 |
# ✅ 结论
本项目展示了 ELK Stack 如何通过将原始的 Apache 访问日志转化为可操作的安全洞察,从而支持 SOC 运营。
通过日志摄取、解析和可视化,我们成功识别了可疑的流量模式,并执行了类似于真实场景监控工作流的初步安全调查。
下一步的改进将是实现自动化的检测规则和告警机制。
标签:ELK Stack, 代码示例, 内容过滤, 可视化监控, 安全运营, 扫描框架, 数据分析, 请求拦截, 越狱测试