Amykhanduja/SOC-Threat-Hunting-Lab
GitHub: Amykhanduja/SOC-Threat-Hunting-Lab
SOC威胁检测与狩猎实验室,模拟真实攻击场景,提升安全团队实战能力。
Stars: 0 | Forks: 0
# SOC 威胁检测与狩猎实验室
## 仪表板预览
## 
## 本项目做什么
本实验室模拟了在本地 Linux 机器上真实的 SOC 分析师工作流程。它生成实际的攻击流量,使用自定义 Python 引擎实时检测,并在实时网络仪表板上显示所有内容——无需云服务、无需付费工具、无需捷径。
## 架构
```
Attack Simulation
│
▼
/var/log/auth.log (Linux system log — real entries)
│
▼
realtime_monitor.py (custom detection engine)
│
├── logs/bruteforce_logs.txt
├── logs/sudo_logs.txt
├── logs/user_creation_logs.txt
└── iocs/iocs.json
│
▼
server.py (pure Python HTTP server — zero dependencies)
│
▼
dashboard/index.html (live SPA — auto-refreshes every 3s)
```
## 攻击覆盖
## | 攻击类型 | 如何模拟 | MITRE 技术 | 严重性 |
|----------------------|---------------------------------------------------|-----------------|----------|
| SSH 暴力破解 | `ssh fakeuser@localhost` 重复失败的尝试 | T1110 | 高 |
| 提权攻击 | 对敏感文件的 `sudo` 命令 | T1078 | 严重 |
| 账户创建 | 使用 `sudo useradd` 添加新用户 | T1136 | 中等 |
| 成功登录 | 使用正确密码的 `ssh $USER@localhost` | T1078 | 中等 |
## 项目结构
```
SOC-Threat-Hunting-Lab/
├── detections/
│ ├── detection_engine.py # Static log analyser
│ └── realtime_monitor.py # Live tail-based detection engine
├── iocs/
│ └── iocs.json # Auto-populated IOC store
├── logs/
│ ├── bruteforce_logs.txt # T1110 alerts
│ ├── sudo_logs.txt # T1078 alerts
│ └── user_creation_logs.txt # T1136 alerts
├── mitre/
│ └── mitre_mapping.md # ATT&CK technique documentation
├── reports/
│ ├── alerts_report.txt # Generated alert summaries
│ └── incident_report.md # Full IR documentation
├── screenshots/ # Evidence for reporting
├── sigma_rules/
│ ├── ssh_bruteforce.yml # Sigma rule — T1110
│ ├── privilege_escalation.yml # Sigma rule — T1078
│ └── user_creation.yml # Sigma rule — T1136
├── dashboard/
│ └── index.html # Live SPA dashboard
├── server.py # Pure Python backend (no Flask)
├── start_dashboard.sh # One-command startup
└── README.md
```
## 如何运行
### 1. 启动 SSH 服务
sudo service ssh start
### 2. 启动检测引擎
sudo python3 detections/realtime_monitor.py
### 3. 启动仪表板(新终端)
start_dashboard.sh
仪表板在 **http://localhost:8000** 打开
## 手动模拟攻击
**暴力破解(T1110**)
ssh fakeuser@localhost
然后输入错误的密码
**提权攻击(T1078**)
sudo cat /etc/shadow
sudo whoami
sudo cat /etc/sudoers
**账户创建(T1136**)
sudo useradd -m attacker
sudo userdel -r attacker
**成功登录 — 有效账户(T1078**)
ssh $USER@localhost
## 仪表板功能
- **4 个实时统计卡片** — 总警报数、严重、高、中等(每 3 秒自动刷新)
- **攻击分布图** — T1110 / T1078 / T1136 命中次数的条形图
- **MITRE ATT&CK 覆盖面板** — 实时技术映射
- **警报源表** — 可按严重性和攻击类型筛选
- **IOC 跟踪器** — 源 IP、时间戳、技术标签
- **IST 时间戳** — 所有警报均为印度标准时间
## 检测逻辑
### 暴力破解(T1110)
- 监控 `/var/log/auth.log` 中的 `Failed password` 条目
- 使用 Counter 跟踪每个 IP 的尝试次数
- 在同一 IP 上 3 次尝试后触发 HIGH 警报
- 保存到 `logs/bruteforce_logs.txt` + `iocs/iocs.json`
### 提权攻击(T1078)
- 在 auth.log 中检测 `sudo` + `COMMAND` 模式
- 提取用户名和执行的命令
- 立即触发 CRITICAL 警报
- 保存到 `logs/sudo_logs.txt`
### 账户创建(T1136)
- 检测 `new user` / `useradd` 条目
- 触发 MEDIUM 警报
- 保存到 `logs/user_creation_logs.txt`
### 成功登录
- 检测 `Accepted password` / `Accepted publickey`
- 触发 MEDIUM 警报 — 暴力破解后有效凭证的使用是可疑的
- 标记为 T1078 有效账户
## Sigma 规则
为所有三种技术包含标准 Sigma 格式检测规则——可移植到任何 SIEM(Splunk、Elastic、Microsoft Sentinel)。
```
# ssh暴力破解.yml
title: SSH Brute Force Attempt
status: experimental
logsource:
product: linux
service: auth
detection:
keywords:
- 'Failed password'
condition: keywords | count() > 3
level: high
tags:
- attack.credential_access
- attack.t1110
```
## 展示的技能
## | 区域 | 所做的工作 |
|---------------------------|-----------------------------------------------------------------|
| 检测工程 | 构建了自定义 Python 引擎解析真实的 Linux auth 日志 |
| 威胁狩猎 | 关联失败的登录、权限事件、账户创建 |
| MITRE ATT&CK | 将所有检测映射到 T1110、T1078、T1136 |
| 事件响应 | 生成具有根本原因和补救措施的结构的 IR 报告 |
| Sigma 规则 | 为所有三种技术编写了可移植的检测规则 |
| 仪表板 / 可视化 | 构建了无依赖的实时 SPA,使用 Python HTTP 服务器 |
| IOC 管理 | 自动将 IP、时间戳、技术、严重性填充到 IOC 存储库中|
## 环境
- **OS:** Ubuntu (Windows 上的 WSL2)
- **语言:** Python 3 (服务器无外部依赖)
- **日志源:** `/var/log/auth.log` (真实系统日志)
- **仪表板:** 纯 HTML/CSS/JS SPA
- **后端:** Python `http.server` (内置)
*该项目作为德里国家法医学大学网络安全本科课程的一部分构建。*
标签:AMSI绕过, DNS解析, Linux系统, Python开发, SSH暴力破解, 入侵检测系统, 协议分析, 威胁情报, 威胁检测, 子域名暴力破解, 安全事件响应, 安全培训, 安全实验室, 安全数据湖, 安全测试, 安全运营中心, 开发者工具, 开源项目, 成功登录, 攻击性安全, 攻击模拟, 权限提升, 网络映射, 自动化检测, 账户创建, 逆向工具, 驱动签名利用