Guillermo1987/project-security-log-analysis
GitHub: Guillermo1987/project-security-log-analysis
一个使用 Python 模拟 SIEM 并检测暴力破解与异常的安全日志分析项目。
Stars: 0 | Forks: 0
# 安全日志分析 — SIEM 模拟
[](https://proyectos-personales.web.app)
[](.)
[](.)
[](.)
[](LICENSE)
## 解决的问题
每台服务器每天都会生成数以千计的日志行;攻击往往隐藏在这些噪音之中。安全运营中心的首要任务是将**原始日志转化为信号**——统计失败的登录、发现暴力破解爆发并对值得封禁的 IP 进行排名。该项目端到端地模拟了这一 pipeline,还原了 SIEM(Splunk、Wazuh、Sentinel)的大规模处理机制。
本项目由持有 **ISC2 Certified in Cybersecurity (CC)** 认证的开发者构建,展示了日志解析、异常检测和威胁报告,且无需任何外部依赖。
## 工作原理
1. **生成** — `generate_logs.py` 生成包含正常和恶意流量的真实安全日志文件。
2. **解析** — `log_analysis.py` 通过 regex 读取每一行,对事件(如 `LOGIN_FAILED` 等)进行分类。
3. **检测** — 统计失败的登录次数,标记**暴力破解尝试**,并使用 `collections.Counter` 对**最高频的恶意 IP** 进行排名。
4. **报告** — 生成 Markdown 格式的威胁报告(`security_analysis_report.md`)。
| 检测内容 | 方法 |
|-----------|--------|
| 失败的登录 | 事件分类 |
| 暴力破解尝试 | 单个来源的重复失败 |
| 排名前列的攻击者 IP | 频率排名(前 5 名) |
## 技术栈
| 层级 | 技术 |
|-------|-----------|
| 语言 | Python 3.12(仅使用标准库 — `re`, `collections`) |
| 输出 | Markdown 威胁报告 |
| 领域 | 网络安全 · SIEM · 日志分析 |
## 快速开始
```
git clone https://github.com/Guillermo1987/project-security-log-analysis.git
cd project-security-log-analysis
python generate_logs.py # build a sample security log
python log_analysis.py # analyze and write security_analysis_report.md
```
无需第三方依赖。
## 仓库结构
```
project-security-log-analysis/
├── generate_logs.py # synthetic security-log generator
├── log_analysis.py # parser + anomaly detection + report
├── LICENSE # MIT
└── README.md
```
## 许可证与联系方式
基于 **[MIT 许可证](LICENSE)** 发布。
- **作品集:** [proyectos-personales.web.app](https://proyectos-personales.web.app)
- **LinkedIn:** [Guillermo Ubeda Garay](https://www.linkedin.com/in/guillermo-ubeda-garay)
- **Email:** guille.ubeda.garay@gmail.com
# 🇪🇸 Español
# Security Log Analysis — SIEM 模拟
## 解决的问题
每台服务器每天都会生成数以千计的日志行;攻击往往隐藏在这些噪音之中。安全运营中心的首要任务是将**原始日志转化为信号**——统计失败的登录、发现暴力破解爆发并对值得封禁的 IP 进行排名。该项目端到端地模拟了这一 pipeline,还原了 SIEM(Splunk、Wazuh、Sentinel)的大规模处理机制。
本项目由持有 **ISC2 Certified in Cybersecurity (CC)** 认证的开发者构建,展示了日志解析、异常检测和威胁报告,且无需任何外部依赖。
## 工作原理
1. **生成** — `generate_logs.py` 生成包含正常和恶意流量的真实安全日志文件。
2. **解析** — `log_analysis.py` 通过 regex 读取每一行,对事件(如 `LOGIN_FAILED` 等)进行分类。
3. **检测** — 统计失败的登录次数,标记**暴力破解尝试**,并使用 `collections.Counter` 对**最高频的恶意 IP** 进行排名。
4. **报告** — 生成 Markdown 格式的威胁报告(`security_analysis_report.md`)。
| 检测内容 | 方法 |
|-----------|--------|
| 失败的登录 | 事件分类 |
| 暴力破解尝试 | 单个来源的重复失败 |
| 排名前列的攻击者 IP | 频率排名(前 5 名) |
## 技术栈
| 层级 | 技术 |
|------|-----------|
| 语言 | Python 3.12(仅使用标准库 — `re`, `collections`) |
| 输出 | Markdown 威胁报告 |
| 领域 | 网络安全 · SIEM · 日志分析 |
## 快速开始
```
git clone https://github.com/Guillermo1987/project-security-log-analysis.git
cd project-security-log-analysis
python generate_logs.py # genera un log de seguridad de ejemplo
python log_analysis.py # analiza y escribe security_analysis_report.md
```
无需第三方依赖。
## 仓库结构
```
project-security-log-analysis/
├── generate_logs.py # generador de logs de seguridad sintéticos
├── log_analysis.py # parser + detección de anomalías + informe
├── LICENSE # MIT
└── README.md
```
## 许可证与联系方式
基于 **[MIT 许可证](LICENSE)** 发布。
- **作品集:** [proyectos-personales.web.app](https://proyectos-personales.web.app)
- **LinkedIn:** [Guillermo Ubeda Garay](https://www.linkedin.com/in/guillermo-ubeda-garay)
- **Email:** guille.ubeda.garay@gmail.com
*由 [Guillermo Ubeda](https://github.com/Guillermo1987) 构建 · 数据与 BI 分析师 · MBA · ISC2 CC*
标签:AMSI绕过, PB级数据处理, Python, SIEM, 威胁检测, 安全运维, 异常检测, 无后门, 日志分析