VikashChoudhary-04/failed-login-detection
GitHub: VikashChoudhary-04/failed-login-detection
这是一个基于Splunk的SOC检测工程项目,专注于通过监控失败登录事件来检测潜在身份验证攻击。
Stars: 1 | Forks: 0
# 失败登录检测项目(Splunk SOC 检测工程)
## 项目概述
- 本项目演示了一个面向初学者的 SOC 检测工程工作流,专注于识别过多的失败登录尝试,使用了:
* Splunk SPL
* Windows 安全日志
* Sigma 规则
* MITRE ATT&CK 映射
* 基本的 SOC 调查方法论
- 该项目模拟了 SOC 分析师或初级检测工程师将如何:
1. 收集身份验证日志
2. 检测可疑的失败登录行为
3. 构建 SIEM 搜索
4. 创建检测逻辑
5. 调查可疑活动
6. 专业地记录调查结果
## 项目目标
### 主要目标
- 检测可能表明以下情况的重复身份验证失败尝试:
* 暴力破解攻击
* 密码喷射攻击
* 凭证填充攻击
* 账户针对性攻击
* 身份验证滥用
## 展示的技能
* Splunk 日志分析
* SPL 查询
* 检测工程基础
* 身份验证监控
* Sigma 规则创建
* MITRE ATT&CK 映射
* SOC 调查工作流
* 安全文档编写
## 使用的技术
| 技术 | 用途 |
| ------------------ | -------------------- |
| Splunk Free | SIEM 平台 |
| Windows 事件日志 | 身份验证遥测数据 |
| SPL | 检测查询 |
| Sigma | 可移植检测规则 |
| MITRE ATT&CK | 威胁映射 |
## MITRE ATT&CK 映射
| 技术 | ID | 战术 |
| ----------- | ------ | -------------- |
| 暴力破解 | T1110 | 凭证访问 |
## 检测逻辑
### 主要检测目标
- 识别经历过多失败登录尝试的账户。
## 使用的 Windows 事件 ID
| 事件 ID | 描述 |
| ------- | ------------ |
| 4625 | 登录失败 |
| 4624 | 登录成功 |
| 4672 | 特权登录 |
## Splunk 检测查询
```
index=main "4625"
| stats count by Account
| where count > 5
| sort - count
```
## 检测逻辑说明
- 此查询:
1. 搜索失败登录事件 (4625)
2. 统计每个账户的失败尝试次数
3. 筛选出失败次数超过 5 次的账户
4. 按最高次数排序
## 示例调查工作流
### 第 1 步 — 审查失败账户
- 识别:
* 哪些账户被针对
* 尝试频率
* 账户是否具有特权
### 第 2 步 — 调查源系统
- 审查:
* 源主机
* IP 地址
* 地理位置指标
* 登录模式
### 第 3 步 — 检查是否有成功身份验证
- 确定:
* 失败尝试后来是否成功
* MFA 是否被绕过
* 是否可能发生入侵
### 第 4 步 — 确定严重性
- 问题:
* 这是暴力破解吗?
* 是用户失误吗?
* 这是密码喷射攻击吗?
* 该账户是否敏感?
## Sigma 规则
```
title: Excessive Failed Login Attempts
id: 11111111-1111-1111-1111-111111111111
status: experimental
description: Detects repeated failed authentication attempts
references:
- https://attack.mitre.org/techniques/T1110/
author: Vikash Choudhary
date: 2026/05/19
logsource:
product: windows
service: security
detection:
selection:
EventID: 4625
condition: selection
level: medium
```
## 误报
- 潜在的良性原因:
* 用户忘记密码
* 凭证过期
* 服务配置错误
* VPN 登录问题
* 保存的密码不正确
## 检测改进(未来工作)
- 潜在的未来增强功能:
* 添加源 IP 追踪
* 添加时间窗口关联
* 检测密码喷射模式
* 添加 MFA 失败关联
* 检测失败后的成功登录
* 添加警报阈值
* 集成威胁情报
## 增强的 SPL 查询示例
```
index=main "4625"
| stats count by Account, src_ip
| where count > 10
| sort - count
```
## SOC 严重性评估
| 严重性 | 标准 |
| ------ | ---------------------------------- |
| 低 | 失败次数少 |
| 中 | 多次重复失败 |
| 高 | 特权账户被针对 |
| 严重 | 暴力破解后成功入侵 |
## 建议的 SOC 响应措施
- 可能的响应操作:
* 调查账户活动
* 审查源 IP
* 强制密码重置
* 验证 MFA
* 锁定受损账户
* 上报至事件响应团队
## 示例检测场景
### 场景
- 一个用户账户收到:
* 15 次登录失败
* 来自同一源 IP
* 在短时间内
### SOC 解读
- 潜在情况:
* 暴力破解尝试
* 密码喷射活动
* 凭证攻击
### 建议的操作
* 调查源 IP
* 审查用户活动
* 检查登录成功事件
* 验证 MFA 活动
## 仓库结构
```
failed-login-detection/
│
├── README.md
├── sigma/
│ └── failed_login_detection.yml
│
├── splunk/
│ └── failed_login_detection_queries.md
│
├── screenshots/
│ ├── splunk_dashboard.png
│ ├── failed_login_query.png
│ └── detection_results.png
│
├── reports/
│ └── mini_investigation_report.md
│
└── mitre/
└── attack_mapping.md
```
## 关键经验教训
* 失败登录监控是 SOC 的基础工作
* 身份验证遥测数据在现代环境中至关重要
* 检测工程需要理解攻击者行为
* ATT&CK 映射可提升检测上下文
* 必须始终考虑误报
* SIEM 查询应具有可操作性和可解释性
## 截图
### Splunk 仪表板

### 失败登录检测查询

### 成功登录调查

### 进程创建分析

### 可疑进程狩猎

标签:AMSI绕过, Cloudflare, MITRE ATT&CK, PB级数据处理, Sigma规则, SPL查询, Windows安全日志, 凭证安全, 失败登录监控, 威胁检测, 安全文档, 安全运维, 密码喷洒, 暴力攻击检测, 目标导入, 认证监控