6arthur6/EventViwer-BF-Detector
GitHub: 6arthur6/EventViwer-BF-Detector
一个 Python 脚本,通过分析 Windows 安全日志中的 4625 失败登录事件来检测潜在的暴力破解攻击。
Stars: 0 | Forks: 0
# EventViwer-BF-Detector
一个简单的 Python 脚本,用于检查 Windows 安全日志并尝试查找可能的暴力破解登录尝试。
它直接从 Windows 事件查看器读取失败的登录事件,并在同一来源在短时间内出现过多失败的登录时创建警报。
## 检查内容
该脚本会检查:
* Windows 安全事件 `4625`
* 失败的登录尝试
* 按源 IP 分组的失败登录
* 如果启用,还会检查没有 IP 的本地失败登录
默认情况下,当同一个来源满足以下条件时,它会创建警报:
```
5 failed logins in 10 minutes
```
## 环境要求
你需要:
* Python 3.10 或更高版本
* Windows
* 可用的 PowerShell
* 读取 Windows `Security` 事件日志的权限
在大多数情况下,你需要以管理员身份运行终端。
你也可以使用属于 `Event Log Readers` 组的用户。
## 如何使用
直接从 Windows 事件查看器读取:
```
python3 detector.py
```
包含没有源 IP 的本地失败登录:
```
python3 detector.py --include-local
```
搜索更大的时间范围:
```
python3 detector.py --hours 48 --max-events 5000
```
使用 JSON 文件代替从事件查看器读取:
```
python3 detector.py --source json --events-file events.json
```
## 输出
警报保存在:
```
alerts.json
```
该脚本还会在终端中打印一个小结,例如:
```
analysis done.
event source: windows
events checked: 100
4625 failures found: 8
4625 failures used: 8
4625 local/no-ip failures skipped: 0
alerts created: 1
```
## 辅助脚本
你可以使用 `check_events.py` 检查本地的 `events.json` 文件:
```
python3 check_events.py
```
它会显示:
* 事件总数
* 文件中的第一个事件
* 按事件 ID 分组的摘要
## 注意事项
* `alerts.json` 是由脚本生成的,因此不应被提交。
* `events.json` 可能包含真实的用户名、主机名和内部 IP。
* 如果你需要公开的示例数据,请使用 `events.example.json`。
* 如果遇到权限错误,请以管理员身份运行脚本来读取 Windows 安全日志。
标签:AI合规, PB级数据处理, Python, 免杀技术, 安全运维, 无后门, 暴力破解检测, 逆向工具