FrancescoCitti/ml_threat_detection

GitHub: FrancescoCitti/ml_threat_detection

基于 Isolation Forest 的 Linux SSH 异常登录检测工具,通过分析 auth 日志中的失败率与尝试次数自动发现暴力破解和凭证填充行为。

Stars: 0 | Forks: 0

# ml 威胁检测 使用 Isolation Forest 检测 Linux auth 日志中的异常 SSH 登录活动。按 IP 对事件进行分组,计算失败率,并标记可能代表暴力破解或凭证填充尝试的统计异常值。 ## 工作原理 1. `preprocess.py` 解析原始的 `/var/log/auth.log` 行,提取源 IP,并将每个事件标记为失败或成功。 2. `model.py` 汇总每个 IP 的统计数据(尝试次数、失败次数、失败率),对其进行缩放,并运行 Isolation Forest 以发现异常值。 ## 使用方法 ``` pip install -r requirements.txt # 仅预处理 python src/preprocess.py data/auth.log # 运行完整检测 python src/model.py data/auth.log ``` 将您的 auth 日志放在 `data/auth.log`。该文件已从版本控制中排除。 ## 输出示例 ``` 3 anomalous IP(s) detected: ip_encoded total_attempts failed_attempts failure_rate anomaly 42 847 841 0.993 -1 17 12 12 1.000 -1 3 203 199 0.981 -1 ``` ## 文件 ``` src/preprocess.py Log parsing and feature extraction src/model.py Isolation Forest detection requirements.txt Python dependencies data/ Place auth.log here (gitignored) ```
标签:Apex, Python, 异常检测, 无后门, 机器学习, 逆向工具