SantaLauk/Log-Analyzer
GitHub: SantaLauk/Log-Analyzer
一个用 Python 编写的轻量级 Web 日志分析工具,能将原始服务器日志转化为安全洞察,识别可疑活动并生成可读报告。
Stars: 0 | Forks: 0
# 🛡️ Log Analyzer
## 项目概述
**Log Analyzer** 是一个 Python 工具,用于将原始 Web 服务器日志转化为网络安全洞察。它能识别可疑活动,如登录失败、敏感端点访问以及异常请求模式,然后生成清晰、易读的报告。
## 🚀 功能特性
* 将 Web 服务器日志解析为结构化数据。
* 检测可疑活动:
* 登录尝试失败 (`/login` 上的 HTTP 401)
* 访问敏感端点 (`/admin`, `/config`, `/.env`, `/wp-admin`, `/phpmyadmin`)
* 单个 IP 的高请求量
* HTTP 404 扫描活动
* 服务器错误 (HTTP 5xx 响应)
* 异常 HTTP 方法 (GET 或 POST 以外的任何方法)
* 生成汇总发现的可读报告。
## 📂 文件结构
| File | Description |
| ---------------- | ------------------------------------------------- |
| `parser.py` | 读取并解析日志文件 |
| `detector.py` | 用于分析日志中可疑活动的函数 |
| `report.py` | 生成人类可读的报告 |
| `main.py` | 运行日志分析器 |
| `sample_log.txt` | 用于测试的示例日志文件 |
## ⚡ 快速开始
### 环境要求
* 您的机器上已安装 Python 3.x。
### 安装与使用
1. 克隆此仓库:
```
git clone https://github.com/SantaLauk/Log-Analyzer.git
cd Log-Analyzer
```
2. 运行主程序:
```
python main.py
```
3. 程序将解析日志文件并打印发现报告。
## 📋 示例报告
```
===== LOG ANALYSIS REPORT =====
Total Requests Per IP:
192.168.1.11: 12
192.168.1.10: 11
192.168.1.13: 3
Failed Login Attempts:
192.168.1.17: 3 failed logins
192.168.1.10: 2 failed logins
Sensitive Endpoint Access:
192.168.1.12: accessed ['/admin']
192.168.1.15: accessed ['/config']
High Request Volume:
192.168.1.11: 12 requests
192.168.1.10: 11 requests
404 Scanning Activity:
192.168.1.13: 3 HTTP 404 responses
Server Errors (5xx):
192.168.1.16: 2 server errors
Suspicious HTTP Methods:
192.168.1.14: ['DELETE']
===== END OF REPORT =====
```
## 🎯 未来改进
* 针对暴力破解登录尝试 (brute force login attempts) 的基于时间的检测。
* 检测端点扫描和枚举模式。
* 综合可疑度评分 (mini SIEM 风格)。
* 可疑活动的可选可视化。
## 📜 许可证
MIT License – 可免费用于学习和作品集展示。
标签:AMSI绕过, DNS解析, Python, Web安全, 代码示例, 初学者项目, 威胁检测, 字典暴力破解检测, 安全运营, 密码管理, 开源项目, 异常检测, 扫描框架, 敏感路径扫描, 数据分析, 无后门, 日志解析, 服务器日志, 渗透测试辅助, 网络安全, 网络安全审计, 自动化报告, 蓝队分析, 证书伪造, 逆向工具, 速率限制, 隐私保护