4161726f6e/SecOps-Workshop-Platform
GitHub: 4161726f6e/SecOps-Workshop-Platform
SecOps-Workshop-Platform是一个集成的网络安全培训平台,提供CTF和恶意软件分析功能。
Stars: 0 | Forks: 0
# SecOps 工作坊平台
一个集成的网络安全培训平台,结合了 **CTF 引擎** 和 **Windows 恶意软件分析实验室**,可在单个 Linux 主机上部署。
## 这是什么?
本平台为安全培训提供两个集成环境:
### CTF 引擎
涵盖真实世界攻击技术的五个动手挑战:
- **Web 应用** — SQL 注入 (DVWA)
- **注册表取证** — Windows 注册表分析
- **网络取证** — PCAP 分析和凭证提取
- **SSH 侧翼移动** — 横向移动和权限提升
- **计分板** — CTFd 与挑战跟踪
### 恶意软件分析平台
一个可通过浏览器访问的分析实验室,提供三种分析类型:
| 分析类型 | 功能 |
|---|---|
| **静态二进制** | PE 元数据、熵、导入、富字符串(URLs/IPs/注册表/路径)、YARA、CAPA、DIE 编译器检测 |
| **PCAP 分析** | Suricata 警报、结构化 DNS/HTTP/TLS/NTLM、顶级对话者、IP 分类、提取文件哈希 |
| **Windows 爆炸** | KubeVirt Windows 10 VM、Sysmon 遥测、多类型执行(EXE/DLL/PS1/BAT/JS/VBS/HTA/ZIP)、安全事件日志 |
## 架构
```
┌─────────────────────────────────────────────────────────┐
│ Ubuntu 24 Host │
│ │
│ nginx (443/TLS) ──► Analyst Portal (FastAPI) │
│ │ │
│ ┌────────────┼────────────┐ │
│ ▼ ▼ ▼ │
│ MinIO PostgreSQL Kubernetes Jobs │
│ (artifacts) (metadata) │ │
│ ┌───┴───┐ │
│ Static KubeVirt │
│ Analysis Windows VM │
│ │ │
│ Sysmon ◄──►│ │
│ Loki/Grafana │
└─────────────────────────────────────────────────────────┘
```
### 关键组件
- **Kubernetes** (kubeadm v1.29,单节点,Calico eBPF)
- **KubeVirt + CDI** 用于 Windows 虚拟机生命周期管理
- **MinIO** 用于工件和报告存储
- **PostgreSQL** 用于作业和用户元数据
- **Loki + Promtail + Grafana** 用于 Sysmon 和假互联网遥测
- **假互联网陷阱**(DNS + HTTP + SMTP)用于爆炸流量捕获
## 要求
| 项目 | 要求 |
|---|---|
| OS | Ubuntu 24.04 LTS |
| CPU | 8+ 核心带嵌套虚拟化 |
| RAM | 32 GB(无爆炸时 16 GB) |
| 磁盘 | 500 GB+ |
| 嵌套虚拟化 | VMware:`vhv.enable = TRUE` / KVM:`cpu host` |
| Python | 3.10+ |
| 网络 | 静态 IP,安装期间需要互联网访问 |
## 安装
安装由四个连续的 Python 脚本处理 — 无硬编码的主机名、IP、用户名或密码:
```
# 1. 安装系统必备条件
sudo python3 install_00_prereqs.py
# 2. 初始化 Kubernetes 集群 + Calico + KubeVirt
sudo python3 install_01_cluster.py
# 3. 部署平台(生成所有密钥,构建镜像,配置 nginx)
sudo python3 install_02_platform.py \
--repo-dir /opt/secops-platform \
--host-ip AUTO \
--lan-cidr 192.168.1.0/24
# 4. 部署 CTF 挑战并运行健康检查
python3 install_03_ctf.py --repo-dir /opt/secops-platform
```
请参阅 [INSTALL.md](INSTALL.md) 获取完整的安装文档。
## 安全
- 所有密钥在安装时新鲜生成(永不硬编码)
- 门户受 bcrypt 密码 + 签名会话令牌保护
- 认证端点的速率限制(每分钟 10 个请求登录/注册)
- 所有 HTTPS 响应上的六个安全头(HSTS、CSP、X-Frame-Options 等)
- Kubernetes NetworkPolicies 在所有命名空间中默认拒绝所有
- 分析作业在隔离的短暂命名空间中运行
请参阅 [SECURITY.md](SECURITY.md) 了解安全模型和负责任披露政策。
## Windows 爆炸虚拟机
爆炸管道需要预构建的 Windows 10 基础磁盘。这 **不包括** 在存储库中,必须单独准备。请参阅 [docs/windows-vm-setup.md](docs/windows-vm-setup.md) 了解准备说明。
## 自定义标志
CTF 标志在安装期间设置。要使用自己的标志:
```
# 5. 在构建前编辑挑战容器文件
vim ctf/challenges/pivot/Containerfile
vim ctf/challenges/registry/setup.sh
# 6. 编辑传递给 CTF 部署者的 SQLi 标志
python3 install_03_ctf.py --repo-dir . --flag-sqli "flag{your_flag_here}"
```
请参阅 [docs/flags.md](docs/flags.md) 了解所有标志位置。
## 目录结构
```
.
├── install_00_prereqs.py # Step 0: system prerequisites
├── install_01_cluster.py # Step 1: Kubernetes cluster
├── install_02_platform.py # Step 2: platform deployment
├── install_03_ctf.py # Step 3: CTF engine
├── INSTALL.md # Full installation guide
├── SECURITY.md # Security model + disclosure policy
├── analysis/
│ ├── intake-api/ # Analyst portal (FastAPI)
│ │ └── main.py
│ ├── images/
│ │ ├── static-binary/ # PE/ELF static analysis image
│ │ ├── static-pcap/ # PCAP analysis image (tshark + Suricata)
│ │ ├── detonation-sidecar/# VM coordination sidecar
│ │ ├── fake-internet/ # DNS/HTTP/SMTP sinkhole
│ │ ├── jump-host/ # SSH jump host
│ │ └── pool-controller/ # KubeVirt VM pool manager
│ └── manifests/ # Kubernetes manifests
│ ├── analyst-portal.yaml
│ ├── minio.yaml
│ ├── postgres.yaml
│ ├── jump-host.yaml
│ ├── namespace.yaml
│ ├── networkpolicy.yaml
│ ├── pool-controller.yaml
│ ├── fake-internet.yaml
│ └── logging/
│ ├── loki.yaml
│ ├── promtail.yaml
│ ├── grafana.yaml
│ └── grafana-dashboard.yaml
└── ctf/
├── manifests/ # CTF Kubernetes manifests
└── challenges/
├── hashcap/ # Network forensics challenge
├── pcap/ # PCAP service
├── pivot/ # SSH pivot challenge
├── registry/ # Registry forensics challenge
└── webvuln/ # Web application challenge (DVWA)
```
## 贡献
请参阅 [CONTRIBUTING.md](CONTRIBUTING.md).
## 许可证
MIT 许可证 — 请参阅 [LICENSE](LICENSE).
标签:子域名突变, 测试用例, 请求拦截, 逆向工具