oguarni/cloud-security-lab-gcp

GitHub: oguarni/cloud-security-lab-gcp

基于 GCP 的攻防安全实验室,以基础设施即代码方式端到端复现五种 Cyber Kill Chain 攻击场景及其云原生检测与缓解方案。

Stars: 0 | Forks: 0

# ☁️🔐 云安全实验室 — 攻防实战 (GCP) 一个注重实践操作的**攻击_与_防御**安全实验室,**完全基于命令行** (`gcloud`,基础设施即代码) 在 **Google Cloud (GCP)** 上构建。实验室沿着 **Cyber Kill Chain** 端到端复现了五种真实的攻击技术,并且每种技术都配备了使用**云原生**遥测技术的**检测、取证审计和缓解**方案。 ## 🏗️ 架构 位于隔离 VPC 中的两台 **Ubuntu 22.04** 虚拟机,通过代码进行配置,并从第一天起就启用了 **防火墙日志记录** 和 **流日志**: ``` Internet │ (operator IP only, /32) ┌────────────┴──────────────┐ │ GCP — project lab-seg │ │ VPC: lab-net │ │ Subnet: 10.10.0.0/24 │ │ │ ┌────────────┴────────┐ ┌─────────┴───────────────┐ │ VM: atacante │ LAN │ VM: alvo │ │ Ubuntu 22.04 │◄──────►│ Ubuntu 22.04 │ │ nmap, hydra, │ 10.10. │ Apache+DVWA (80) │ │ sqlmap, tshark, │ 0.0/24 │ SSH (22) │ │ SET, nikto │ │ vsftpd (21) │ │ IP: 10.10.0.3 │ │ Ops Agent · 10.10.0.2 │ └─────────────────────┘ └─────────────────────────┘ Firewall (logging): allow-internal, allow-ssh-admin, allow-web Observability: VPC Flow Logs + Firewall Logging + Cloud Logging ``` - **`atacante`** — 攻击工具箱:`nmap`、`hydra`、`sqlmap`、`tshark`、`SET`、`nikto` - **`alvo`** — 漏洞目标:`Apache+DVWA`、`SSH`、`vsftpd`、`Ops Agent` - **审计:** VPC Flow Logs · Firewall Rules Logging · Cloud Logging (Ops Agent) · Cloud IDS 只需两个脚本即可启动和销毁整个实验室: ``` bash scripts/00-provisionar-lab-gcp.sh # create VPC, firewall (w/ logging), 2 VMs bash scripts/99-destruir-lab-gcp.sh # destroy everything (ethics + cost control) ``` 虚拟机通过启动脚本 ([`startup-atacante.sh`](scripts/startup-atacante.sh), [`startup-alvo.sh`](scripts/startup-alvo.sh)) 进行自动配置 —— 完全实现**基础设施即代码**,可复现且用后即毁。 ## ⚔️ 攻击 → 🛡️ 防御 每种技术都对应一个 **Cyber Kill Chain** 阶段以及一起**近期发生的真实事件**,并通过云原生检测和缓解措施进行应对: | # | Kill Chain 阶段 | 攻击 | 工具 | 检测与缓解 | 真实案例 | |:-:|---|---|---|---|---| | 1 | 初始访问 (Web) | **SQL 注入** | sqlmap / DVWA | Apache 日志特征 · 预处理语句 · WAF | MOVEit / Clop (2023) | | 2 | 凭据获取 | **SSH 暴力破解** | Hydra | `auth.log` + Cloud Logging · **Fail2Ban** · 密钥认证 + MFA | SSH 暴力破解僵尸网络 (2023–24) | | 3 | 侦察 | **端口扫描与防火墙绕过** | Nmap | VPC Flow Logs · Firewall Logging · Cloud IDS | — | | 4 | 初始访问 (人为) | **网络钓鱼 / 凭据收集** | SET | 安全意识培训 · 防钓鱼 **MFA (FIDO2)** | 0ktapus / Scattered Spider | | 5 | 收集 / 数据外发 | **HTTP 嗅探** | Wireshark | **TLS/HTTPS** · GCP Packet Mirroring · Cloud IDS | — | 基于 **NIST SP 800-61** 的**模拟事件响应策略**将这一切串联起来(检测 → 遏制 → 消除 → 恢复 → 经验教训),并包含了量化的响应指标(例如,Fail2Ban 在 **3 次登录失败**后即遏制了暴力破解)。 ## 🔎 取证样本 (真实运行记录) **使用 SET 收集凭据** — 克隆的登录页面捕获受害者的凭据 (`WE GOT A HIT!`): ![SET 凭据收集器](https://raw.githubusercontent.com/oguarni/cloud-security-lab-gcp/main/screenshots/07_setoolkit_real.png) **使用 Wireshark 进行 HTTP 嗅探** — 凭据通过 HTTP 以明文形式传输 (`user=admin&pass=…`): ![Wireshark HTTP POST](https://raw.githubusercontent.com/oguarni/cloud-security-lab-gcp/main/screenshots/06_wireshark_http_post.png) ## 🧰 技术与展示技能 `Google Cloud (GCP)` · `gcloud CLI` · `Infrastructure as Code` · `VPC / Firewall / Flow Logs` · `Cloud Logging / Ops Agent` · `Cloud IDS` · `Packet Mirroring` · `Nmap` · `sqlmap` · `Hydra` · `Wireshark / tshark` · `SET` · `Fail2Ban` · `DVWA` · `Linux` · `Bash` · `Cyber Kill Chain` · `NIST SP 800-61` PDF 报告由自定义的 **Pandoc → Chromium (Playwright)** pipeline 生成(请参阅项目的构建脚本)。 ## ⚖️ 道德与范围 所有实验均在**隔离且经授权**的 VPC 中进行,外部访问仅限操作员的 IP (`/32`)。**未针对任何第三方系统进行攻击**,所有目标均属于本实验室,并且**所有资源在结束时均已销毁**。展示的弱凭据(例如 `teste:123456`)是刻意设置的实验室数值。**仅供教育目的使用**。 ## 📂 布局 ``` . ├── scripts/ # GCP provisioning, teardown and VM startup (IaC) ├── screenshots/ # evidence (images + a .pcap capture) ├── docs/ # full technical report (PDF, PT-BR) └── README.md ``` 在 **UTFPR** 开发的学术项目 — Bacharelado em Engenharia de Software (Câmpus Dois Vizinhos)。完整报告以葡萄牙语编写。
标签:CISA项目, CTI, GCP, OPA, TGT, 应用安全, 插件系统, 攻防演练, 网络安全, 防御绕过, 隐私保护, 靶场