praveenkumarjoregala/log-anomaly-detector

GitHub: praveenkumarjoregala/log-anomaly-detector

基于 Python 和 Pandas 的认证日志分析工具,通过可解释的规则引擎自动检测暴力破解与凭证填充攻击。

Stars: 0 | Forks: 0

# 认证日志异常检测器 一款 Python 安全工具,通过解析认证日志并利用行为分析来标记可疑模式,特别是暴力破解和凭证填充攻击。 旨在展示网络安全概念(威胁检测、攻击模式识别)在 Python 和 Pandas 中的实际应用。 ## 解决的问题 安全团队每天要处理成千上万条认证日志条目。人工审查是不可能的。该工具自动检测两种最常见的攻击模式,使分析师能够专注于已确认的威胁。 ## 检测到的攻击模式 暴力破解 (Brute Force):- 单个 IP 针对单一账户进行反复的登录失败尝试。 阈值:来自同一源 IP 的 8 次以上失败尝试。 凭证填充 (Credential Stuffing) :- 单个 IP 遍历许多不同的用户名,通常使用泄露的凭证列表。 阈值:来自同一源 IP 尝试了 5 个以上不同的用户名。 ## 检测结果(基于 2,090 条日志条目的合成数据集) | 攻击类型 | 源 IP | 数量 | 严重程度 | | 暴力破解 | 192.168.1.199 | 50 次失败尝试 | HIGH | | 暴力破解 | 10.0.0.88 | 40 次失败尝试 | HIGH | | 凭证填充 | 10.0.0.88 | 40 个不同用户名 | HIGH | 正常流量的误报率:2,000 条干净条目中标记数为 0。 ## 为什么采用基于规则的检测(而非 ML) 特意选择基于规则的阈值而不是 ML 异常检测,原因有二: 1. 可解释性 :- 每个告警都可以追溯到特定规则,这在分析师需要了解*为什么*某些内容会被标记的安全领域非常重要。 2. 可审计性 :- 阈值逻辑是透明且可调的,不同于黑盒模型。 ## 技术栈 - Python 3.12 - Pandas :- 日志解析、groupby 分析、模式检测。 - Faker :- 生成逼真的合成日志。 ## 如何运行 ``` pip install -r requirements.txt. python generate_logs.py # generates auth_logs.csv, python analyzer.py # runs detection and prints report. ``` ## 项目结构 ``` ├── generate_logs.py # Synthetic log generator with injected attack patterns ├── analyzer.py # Detection engine and report generator ├── auth_logs.csv # Generated dataset (2,090 entries) └── requirements.txt ```
标签:AMSI绕过, Python, 威胁检测, 无后门, 红队行动