abhinavkishor9/splunk-soc-lab-06-sql-injection-detection
GitHub: abhinavkishor9/splunk-soc-lab-06-sql-injection-detection
基于 Splunk Enterprise 和 Apache 访问日志的 SQL 注入检测实战实验,帮助 SOC 分析师掌握 Web 应用威胁狩猎与事件调查技能。
Stars: 0 | Forks: 0
# splunk-soc-lab-06-sql-injection-检测
## 概述
本实验演示了如何使用 Splunk Enterprise 和 Apache access logs 检测和调查 SQL Injection (SQLi) 攻击。
SQL Injection 是最常见的 Web 应用程序攻击之一,可允许攻击者绕过身份验证、访问敏感数据、操纵数据库,并可能危害整个应用程序。
本实验的目的是识别 SQL Injection 尝试,调查攻击者行为,分析目标资源,并利用 Splunk 培养实用的威胁狩猎技能。
# 实验环境
- Splunk Enterprise
- Search & Reporting App
- Apache Access Logs
- Windows 主机
# 场景
SOC 团队收到报告,称有可疑的 Web 请求针对面向公众的应用程序。
作为 SOC 分析师,您的任务是调查 Apache access logs,识别 SQL Injection 尝试,确定攻击模式,识别攻击者基础设施,并评估潜在影响。
# 目标
- 识别 SQL Injection 尝试
- 调查恶意 payload
- 分析攻击者活动
- 识别目标资源
- 检测自动化攻击工具
- 构建 SQL Injection 检测逻辑
- 培养应用程序威胁狩猎技能
# 数据源
| 源 | 事件 |
|----------|----------|
| sql_Injection_Lab.log | 928 |
# MITRE ATT&CK 映射
| 技术 | 描述 |
|------------|------------|
| T1190 | 利用面向公众的应用程序 |
| T1595 | 主动扫描 |
| T1595.002 | 漏洞扫描 |
| T1071.001 | 应用层协议:Web 协议 |
# 严重性
**高**
SQL Injection 攻击可能导致身份验证绕过、未经授权的数据库访问、敏感数据泄露和应用程序被攻陷。
# 检测逻辑
## 验证数据集
```
index=main source="sql_Injection_Lab.log"
| stats count
```
## 基于 UNION 的 SQL Injection
```
index=main source="sql_Injection_Lab.log"
"UNION"
```
## SELECT 语句
```
index=main source="sql_Injection_Lab.log"
"SELECT"
```
## 身份验证绕过尝试
```
index=main source="sql_Injection_Lab.log"
("' OR '1'='1" OR "OR 1=1")
```
## SQL 注释
```
index=main source="sql_Injection_Lab.log"
"--"
```
## 破坏性 SQL 命令
```
index=main source="sql_Injection_Lab.log"
("DROP TABLE" OR "INSERT INTO" OR "UPDATE ")
```
## 常见 SQL Injection 指标
```
index=main source="sql_Injection_Lab.log"
("UNION" OR "SELECT" OR "' OR" OR "--" OR "DROP")
```
## 高频攻击 IP 地址
```
index=main source="sql_Injection_Lab.log"
("UNION" OR "SELECT" OR "' OR" OR "--" OR "DROP")
| stats count by clientip
| sort -count
```
## 目标资源
```
index=main source="sql_Injection_Lab.log"
("UNION" OR "SELECT" OR "' OR" OR "--" OR "DROP")
| stats count by uri
| sort -count
```
## SQL Injection 时间线
```
index=main source="sql_Injection_Lab.log"
("UNION" OR "SELECT" OR "' OR" OR "--" OR "DROP")
| timechart count
```
# 误报
- 内部漏洞评估
- 安全测试活动
- 渗透测试任务
- 开发者测试环境
# 建议的遏制措施
封锁恶意 IP 地址,实施参数化查询,验证用户输入,审查受影响的应用程序,并监控持续的 SQL Injection 活动。
# 展示技能
- Splunk SPL
- Apache 日志分析
- SQL Injection 检测
- 威胁狩猎
- SIEM 操作
- 安全监控
- Web 应用程序安全
- 事件调查
# 经验教训
本实验提升了对以下方面的理解:
- SQL Injection 攻击技术
- Web 应用程序威胁狩猎
- Apache access log 分析
- 检测工程
- 攻击者行为分析
- SOC 调查工作流
标签:CISA项目, DOE合作, SQL注入检测, 主机安全, 安全运营中心, 密码管理, 网络安全, 网络映射, 隐私保护