diemoeve/oxide-infra

GitHub: diemoeve/oxide-infra

一套结合Terraform与Ansible的自动化C2部署框架,专为红蓝对抗和紫队演练提供云端攻击基础设施与本地闭环靶场。

Stars: 2 | Forks: 0

# Oxide 基础设施 用于安全研究和紫队演练的自动化 C2 基础设施部署。 **仅供实验室使用。所有部署目标必须是您拥有或已获得明确书面授权进行测试的系统。默认目标为隔离的虚拟机实验室 (10.10.0.0/24)。请参阅 `DISCLAIMER.md`。** ## 技术栈 | 工具 | 用途 | |------|---------| | Terraform | VPS 配置管理 (DigitalOcean / Hetzner),DNS,重定向器 | | Ansible | Panel 部署,重定向器配置,监控设置 | | libvirt + Packer | 本地紫队实验室 (5台 VM 拓扑,S36,截至 v1.0-preview 仅支持 IaC) | ## 结构 ``` terraform/ # Cloud attacker infra (existing) ├── modules/ │ ├── c2-server/ # Panel VPS │ ├── redirector/ # Traffic redirector │ └── dns/ # Domain + records └── environments/ ├── lab/ # Local VirtualBox lab (legacy) └── cloud/ # Cloud deployment libvirt/ # Purple lab on libvirt (S36, new) ├── network-oxide-lab.xml # Isolated host-only network 10.10.100.0/24 ├── pools/ # qcow2 storage pool └── domains/ # Domain XML templates per VM role packer/ # Base image build templates (S36) ├── alpine-base.pkr.hcl ├── ubuntu-base.pkr.hcl └── win11-base.pkr.hcl ansible/ └── roles/ ├── panel/ # Deploy oxide panel (cloud) ├── redirector/ # Configure nginx / Apache ├── monitoring/ # Elastic + Zeek (cloud) ├── victim/ # Legacy victim VM setup ├── lab-siem/ # S36 Wazuh 4.9 manager + indexer + dashboard ├── lab-zeek/ # S36 Zeek 6 sensor on labBr0 PROMISC ├── lab-win11/ # S36 Win11 + Defender + Sysmon (Olaf Hartong modular) ├── lab-ubuntu/ # S36 auditd victim + Wazuh agent └── lab-attacker/ # S36 attacker VM + tooling scripts/ # S36 lab control plane ├── bootstrap.sh # up | down | status | snapshot ├── is_up.sh # Health check ├── lab-revert.sh # Snapshot rollback per VM └── lab-seal-base.sh # Freeze packer base into reusable qcow2 ``` ## 使用方法(云端) ``` cd terraform/environments/cloud && terraform apply cd ansible && ansible-playbook site.yml ``` ## 使用方法(本地 libvirt 紫队实验室,S36) ``` ./scripts/bootstrap.sh up ./scripts/is_up.sh ``` **S36 状态 (v1.0-preview):** 代码已完成,运行时未经校验。首次启动时有六个已知问题需要解决。请参阅 `docs/lab/TROUBLESHOOTING.md`。摘要: 1. 从 sysinternals.com 下载 Sysmon 二进制文件(实验室为 host-only 模式) 2. Wazuh apt 安装程序在首次配置 (`siem` role) 期间需要连接互联网 3. Win11 OpenSSH Server 存在鸡生蛋还是蛋生鸡的问题(Ansible 需要 SSH;封装的基础镜像必须包含 OpenSSH) 4. 复用现有的 137 GB qcow2 作为 Win11 基础镜像,其中包含先前会话残留的未知状态 5. 将 Sigma 规则同步至 `siem.lab` 需要在宿主机和 VM 之间执行 rsync 6. 尚未测试部分启动(先启动 siem + zeek,然后启动受害者)作为分组定义的情况 该实验室是闭环基准测试路径(S36 至 S38)的一部分。0/72 stage1 路径独立于此实验室。 ## 检测集成 libvirt 紫队实验室部署了 Wazuh manager + indexer + dashboard、Sysmon (Olaf Hartong 模块化配置) 以及带有 foxio/ja4 zkg 软件包的 Zeek 6。来自 oxide 主仓库 (`oxide/detection/sigma/`) 的 Sigma 规则,会在 SIEM 配置阶段通过 sigma-cli 的 `wazuh` 后端转换为 Wazuh XML 格式,转换失败的规则列表将被记录下来以便手动重写。 ## 相关项目 - [oxide](https://github.com/diemoeve/oxide) - Implant + Panel - [oxide-loader](https://github.com/diemoeve/oxide-loader) - 交付链 - [oxide-stealer](https://github.com/diemoeve/oxide-stealer) - 凭据提取 ## 许可证 MIT
标签:Ansible, auditd, C2基础设施, EC2, ECS, Hetzner, IaC, libvirt, OPA, OpenCanary, Packer, Rootkit, Sysmon, Terraform, VPS, Wazuh, Windows 11, Zeek, 企业安全, 域名系统, 基础架构即代码, 应用安全, 插件系统, 数字海洋, 数据展示, 流量重定向, 特权提升, 监控, 系统提示词, 紫队训练, 红队, 网络信息收集, 网络安全, 网络资产管理, 自动化部署, 隐私保护, 靶场