Z3X-1337/auth-log-analyzer

GitHub: Z3X-1337/auth-log-analyzer

一个用于解析 OpenSSH 认证日志并生成可解释 JSON 与 Markdown 报告的 Python CLI 工具,帮助识别暴力破解和密码喷洒等可疑登录行为。

Stars: 0 | Forks: 0

# Auth 日志分析器 [![tests](https://static.pigsec.cn/wp-content/uploads/repos/cas/6b/6b52945adbf8d9e421fe243515ae54cfbd3da263f16b1eabda37cdc0b797b8eb.svg)](https://github.com/Z3X-1337/auth-log-analyzer/actions/workflows/tests.yml) ![Python](https://img.shields.io/badge/Python-3.10--3.12-blue) ![Version](https://img.shields.io/badge/version-0.1.0-informational) ![License](https://img.shields.io/badge/license-MIT-green) Auth Log Analyzer 是一个确定性的 Python 命令行工具,用于审查支持的 OpenSSH 认证事件并识别可疑的登录行为。 它专为 SOC 学习实验室、经过脱敏处理的事件分析练习以及可解释的检测工程而设计。它不能替代 SIEM、EDR 或分析师的验证。 ## 检测覆盖范围 - 来自同一源 IP 的重复认证失败。 - 针对多个目标用户名的密码喷洒式活动。 - 重复失败期间出现的无效用户尝试。 - 按源 IP 统计的接受登录次数,用于提供调查上下文。 - IPv4 和 IPv6 源地址。 - 支持的失败方法:`password`、`publickey` 和 `keyboard-interactive/pam`。 ## 面向分析师的输出 - 具有 schema 版本控制且机器可读的 JSON。 - 用于工单和案件记录的 Markdown 报告。 - 检测原因和配置的阈值。 - 按来源观察到的认证方法。 - 基于证据的 MITRE ATT&CK 建议: - `T1110` — 暴力破解。 - `T1110.003` — 针对多个账户时的密码喷洒。 - 需要分析师审查的明确限制。 ## 安装 从本地克隆安装: ``` python -m pip install . ``` 隔离的 CLI 安装: ``` pipx install . ``` 安装后的命令为: ``` auth-log-analyzer --help ``` ## 用法 ``` auth-log-analyzer sample_auth.log --pretty auth-log-analyzer sample_auth.log --failed-threshold 3 --spray-threshold 4 --pretty auth-log-analyzer sample_auth.log --format markdown ``` 依然支持源文件形式: ``` python auth_log_analyzer.py sample_auth.log --pretty ``` ## 示例摘要 ``` { "accepted_events": 1, "events_parsed": 5, "failed_events": 4, "suspicious_sources": 1, "unique_source_ips": 2 } ``` ## 验证 ``` python -m unittest -v ``` 当前测试套件包含 12 个单元和 CLI 测试,覆盖了解析、IPv6、认证方法、阈值验证、风险分类、ATT&CK 映射、JSON 输出和 Markdown 输出。 GitHub Actions 测试了 Python 3.10、3.11 和 3.12,安装了软件包,并验证了 CLI 入口点。 ## 项目治理 - [更新日志](CHANGELOG.md) - [路线图](ROADMAP.md) - [MIT 许可证](LICENSE) 当前软件包版本为 `0.1.0`,并遵循语义化版本控制。 ## 限制 - 阈值检测是无上下文的,可能会产生误报。 - 仅解析已记录的 OpenSSH 接受/失败格式。 - Syslog 时间戳作为原始证据保留,不包含年份或时区。 - ATT&CK 条目是辅助分析师的建议,并非对手意图的证据。 ## 安全 请勿发布真实的生产日志、用户名、主机名、凭据、IP 地址或私有基础设施详情。请使用脱敏后的示例以及您有权分析的数据。
标签:Blue Team, OpenSSH, Python, 动态分析, 安全运营(SOC), 无后门, 红队行动, 逆向工具