atreyu2/attack-workflow-simulation

GitHub: atreyu2/attack-workflow-simulation

模拟真实攻击者的侦察、枚举和暴力破解行为,帮助团队验证并调优 Wazuh SIEM 的检测规则是否按预期触发告警。

Stars: 0 | Forks: 0

内网渗透测试流程 (侦察 → 枚举 → 暴力破解) ## 阶段 1 — 连通性 + 基础侦察噪声 ``` # 确认网络路径 ping -c 4 # 慢速隐蔽扫描 — recon pattern,无 exploit nmap -sS -T2 -p 22,80,135,139,443,445,3389 ``` ### 参数解析 | 参数 | 作用 | |------|-------------| | `-c 4` | 精确发送 4 个 ICMP 数据包后停止。如果没有此参数,它将一直运行。 | | `-sS` | SYN 扫描 — 发送 SYN,如果端口开放则接收 SYN-ACK,并回复 RST。从不完成完整的握手。比 `-sT` 更隐蔽。 | | `-T2` | 时间模板 2 (礼貌/慢速)。降低触发速率限制或 IDS 规则的风险。T0=偏执模式,T5=疯狂模式。 | | `-p` | 仅扫描特定端口 — 135 (RPC), 139 (NetBIOS), 445 (SMB), 3389 (RDP)。 | ### 这会在 Wazuh 中触发什么 - ICMP 可见性确认(通常不会触发告警,仅确认网络路径) - Windows 防火墙 / 安全日志条目 - 如果网络规则处于活动状态,将检测到端口扫描 ## 阶段 2 — SMB 枚举 (Windows 事件日志宝库) ``` # 匿名共享列表 — 无 creds smbclient -L // -N # null session 完全枚举 enum4linux -a ``` ### 参数解析 | 参数 | 作用 | |------|-------------| | `-L` | 列表模式 — 查询服务器的共享列表。不会挂载或访问任何内容。 | | `-N` | 无密码 — 发送空/匿名会话。如果 Windows 允许,你将获得共享列表。 | | `-a` | 所有枚举 — 共享、用户、组、操作系统信息、密码策略、打印机。全部通过空会话获取。无需漏洞利用,无 payload。 | ### 生成的 Windows 事件 | 事件 ID | 含义 | |----------|--------------| | `4624` | 登录成功 — 如果允许空会话,你将看到一个匿名的 NTLM 登录。**如果触发了此事件,说明你的 Windows 机器配置有误。** | | `4625` | 登录失败 — 如果空会话被阻止。这依然是有用的遥测数据。 | | `4776` | NTLM 凭据验证尝试 — 任何 NTLM 身份验证都会触发,甚至包括匿名身份验证。 | | `5156/5157` | Windows 筛选平台连接允许/阻止。 | ## 阶段 3 — 失败的身份验证 (受控暴力破解噪声) ``` # RDP 暴力破解 — 5–10 秒后 KILL hydra -l administrator -P /usr/share/wordlists/rockyou.txt rdp:// -t 1 -f # 若端口开放则进行 SSH hydra -l administrator -P /usr/share/wordlists/rockyou.txt ssh -t 4 -f -V ``` ### 参数解析 | 参数 | 作用 | |------|-------------| | `-l administrator` | 单个用户名。小写 `-l` = 一个用户。大写 `-L` = 用户名字典文件。 | | `-P rockyou.txt` | 密码字典文件。大写 `-P` = 字典文件,小写 `-p` = 单个密码。 | | `rdp://` | 协议前缀。告诉 Hydra 在 3389 端口上使用 RDP 认证握手。 | | `-t 1` | 1 个并行线程。RDP 非常敏感 — 保持为 1,否则会导致连接断开/触发严厉的账户锁定。 | | `-f` | 在首次成功登录后停止。这是一种安全保护机制,防止 Hydra 无限期运行。 | | `-V` | Verbose 模式 — 打印每次尝试。有助于确认活动确实已发送。 | ### Wazuh 如何检测它 | 规则 ID | 含义 | |---------|--------------| | `18107` | 单次 Windows 登录失败 — 每次单独的错误密码尝试都会触发。 | | `18152` | 多次 Windows 登录失败 — Wazuh 将同一来源在时间窗口内的 N 次失败进行关联。这是暴力破解检测规则。作为 **high/critical**(高/危险)级别触发。 | ## 监控 — 实时告警流 ``` # 在 Wazuh server 上流式传输实时警报,按受害者 IP 过滤 tail -f /var/ossec/logs/alerts/alerts.json | grep # 使用 jq 美化输出(可选) tail -f /var/ossec/logs/alerts/alerts.json | jq '.rule.description + " — level: " + (.rule.level|tostring)' ``` ### 参数解析 | 部分 | 作用 | |------|-------------| | `tail -f` | 跟随模式 — 写入新行时实时打印。这就是你的实时数据流。 | | `alerts.json` | Wazuh 将每个告警作为 JSON 对象逐行写入此处。包含规则 ID、级别、Agent 名称、时间戳和原始日志。 | | `grep ` | 按受害者 IP 进行过滤,这样你就不必阅读来自每个 Agent 的所有告警。 | ## 预检 — 审核策略 (在 Windows 受害者机上运行) ``` auditpol /get /category:* ``` ### 检查要点 | 结果 | 含义 | |--------|---------| | `No Auditing` | **监控盲区。** Windows 未写入安全事件。SMB 和暴力破解测试不会生成任何日志。请首先修复此问题。 | | `Failure only` | 部分记录。你将看到失败的登录,但看不到成功的登录。 | | `Success and Failure` | 完全可见。这就是你需要的状态。 | ### 如果审核策略已关闭,请修复它 ``` Local Security Policy → Audit Policy: - Logon Events → Success & Failure ✓ - Account Logon → Success & Failure ✓ - Object Access → Optional for now ``` ## Wazuh 仪表板 — 监控位置 1. 前往 **Security Events** → 按受害者的 `agent.name` 进行过滤 2. 监控 **18100s**(身份验证失败)和 **40xxx**(侦察/扫描)范围内的规则 ID 3. 确认 `agent.name` 与你的 Windows 机器匹配,而不是 Proxmox 宿主机 ## 告警参考 — 你的 Wazuh 截图显示了什么 | 告警 | 级别 | 触发原因 | |-------|-------|----------------| | Logon failure — unknown user or bad password | 5 | SMB 空会话或身份验证测试到达目标机器 | | Successful remote logon — ANONYMOUS NTLM | 6 | SMB 空会话被 **接受** — Windows 配置有误 | | Windows user logoff | 3 | 上述匿名登录后的会话清理 | | Sysmon — suspicious process — explorer.exe | 12 | explorer.exe 因异常行为被标记 — 检查子进程 | | Executable dropped in malware folder | **15** | **高优先级。** 文件落入了可疑路径 — 在运行更多测试前进行调查 | | PowerShell spawned PowerShell instance | 4 | 很可能是由你之前的测试引起的 — 但 Wazuh 捕获了它 | ## 验证清单 - [ ] 确认受害者 IP 是 Windows 虚拟机,而不是 Proxmox 宿主机 (`192.168.0.12` 是虚拟机监控器) - [ ] 运行 `auditpol /get /category:*` — 确认登录审核已开启 - [ ] 运行 ping → 确认网络路径 - [ ] 运行 nmap → 确认 Windows 虚拟机上的 135、139、445 端口已开放 - [ ] 运行 smbclient → 在 Wazuh 中观察 4624/4625 事件 - [ ] 运行 Hydra (10 秒后终止) → 观察规则 18152 是否被触发 - [ ] 在继续之前,调查级别为 15 的可执行文件释放告警
标签:Nmap, NTLM认证, PE 加载器, PoC, SMB枚举, Wazuh, Windows事件日志, 内部渗透测试, 匿名会话, 安全检测规则, 应用安全, 插件系统, 攻击模拟, 数据统计, 暴力破解, 端口扫描, 网络靶场, 蓝队建设, 虚拟驱动器, 蜜罐模拟, 驱动签名利用