NuclearPeanutt/python-log-analyzer
GitHub: NuclearPeanutt/python-log-analyzer
一款基于 Python 的内存高效型 CLI 安全日志分析工具,专为解析海量 Web 服务器日志并自动检测暴力破解和 SQL 注入威胁而设计。
Stars: 0 | Forks: 0
## Python 高性能日志分析器
一款使用 Python 构建的内存高效、基于 CLI 的安全工具,用于解析海量 Web 服务器日志、检测活跃威胁,并在不耗尽系统资源的情况下呈现可操作的情报。
该工具旨在超越人工分类(triage),通过处理 Web 日志 (Apache/Nginx) 来自动标记暴力破解 (Brute Force) 尝试和 SQL 注入 (SQL Injection) payload。
### 🚀 核心功能
* **O(1) 内存流式处理引擎:** 通过利用字节流分块,能够处理 50GB 以上的日志文件,而不会引发内存溢出 (OOM) 崩溃。
* **双层检测架构:** 在执行繁重的状态机 Regex 解析之前,先通过超快速的初始字符串过滤器传递日志,从而节省 CPU 周期。
* **动态 CLI 仪表盘:** 基于 `rich` 库构建,提供实时进度跟踪和颜色编码的严重性表格,以便快速进行事件分类。
* **攻击模拟脚本:** 包含一个内置日志生成器,可模拟混合了恶意向量的基线流量,以便进行即时测试。
### 🛠️ 安装说明
1. 下载此仓库或将其克隆到您的本地计算机。
2. 确保您已安装 Python 3。
3. 安装所需的依赖项:
pip install -r requirements.txt
💻 使用方法
第 1 步:生成测试数据
如果您手头没有庞大的 access.log 文件,请使用随附的生成器脚本创建一个高度逼真的 Nginx/Apache 日志文件,其中包含标准流量、SQLi payload 和暴力破解集群。
Bash
python generate_logs.py
第 2 步:运行分析器
执行主脚本来流式传输日志文件、解析威胁并渲染分类仪表盘。
Bash
python analyzer.py
🧠 架构说明
依赖 `file.readlines()` 的标准 Python 脚本会将整个数据集拉入 RAM,这在企业环境中会造成灾难性的失败。该工具的架构设计旨在迭代地读取文件,无论日志文件是 10 MB 还是 100 GB,都能将内存占用保持在仅几兆字节。
通过将底层字节流处理与高级终端 UI 组件相结合,该项目弥合了原始数据工程与实际安全运营之间的差距。
标签:AMSI绕过, CISA项目, Python, Web安全, 威胁检测, 无后门, 红队行动, 蓝队分析, 逆向工具