# Configuring Windows Event Logging For Detection

> 配置 Windows 事件日志与高级审计策略，以生成高质量安全事件用于威胁检测和取证调查。 适用于为登录事件、进程创建、权限使用和对象访问启用审计策略，以支撑 SIEM 检测规则的场景。

- Skill: `killvxk/configuring-windows-event-logging-for-detection` (Agent Skill, multi-file: 8 files)
- Install (CLI): `npx skillmds@latest add killvxk/configuring-windows-event-logging-for-detection`
- Raw SKILL.md: https://api.skillmd.com/api/skills/killvxk/configuring-windows-event-logging-for-detection/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- License: Apache-2.0
- Author: killvxk (https://skillmd.com/u/killvxk)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/killvxk/configuring-windows-event-logging-for-detection

---

# 配置用于检测的 Windows 事件日志

## 使用场景

在以下情况下使用本技能：
- 配置 Windows 高级审计策略以实现安全监控
- 启用带命令行日志记录的进程创建审计（事件 4688）
- 设置登录/注销审计以进行身份认证监控
- 调整事件日志存储大小并转发到 SIEM 平台

**不适用于** Sysmon 配置（独立技能）或 Linux 审计日志。

## 操作流程

### 步骤 1：通过 GPO 配置高级审计策略

```
计算机配置 → Windows 设置 → 安全设置
  → 高级审计策略配置 → 审计策略

推荐设置：
账户登录：
  - 审计凭据验证：成功、失败
  - 审计 Kerberos 认证：成功、失败

账户管理：
  - 审计安全组管理：成功
  - 审计用户账户管理：成功、失败

登录/注销：
  - 审计登录：成功、失败
  - 审计注销：成功
  - 审计特殊登录：成功
  - 审计其他登录/注销事件：成功、失败

对象访问：
  - 审计文件共享：成功、失败
  - 审计可移动存储：成功、失败
  - 审计 SAM：成功

策略更改：
  - 审计审计策略更改：成功、失败
  - 审计身份验证策略更改：成功

权限使用：
  - 审计敏感权限使用：成功、失败

详细跟踪：
  - 审计进程创建：成功
  - 审计 DPAPI 活动：成功、失败
```

### 步骤 2：在进程创建事件中启用命令行记录

```powershell
# 注册表：在事件 4688 中启用命令行日志记录
New-ItemProperty -Path "HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System\Audit" `
  -Name ProcessCreationIncludeCmdLine_Enabled -Value 1 -PropertyType DWORD -Force

# GPO：计算机配置 → 管理模板 → 系统 → 审计进程创建
# "在进程创建事件中包含命令行" → 已启用
```

### 步骤 3：配置事件日志大小

```powershell
# 将安全日志增加到 1 GB（默认 20 MB 不够用）
wevtutil sl Security /ms:1073741824

# 增加 PowerShell Operational 日志
wevtutil sl "Microsoft-Windows-PowerShell/Operational" /ms:536870912

# 设置日志保留策略为按需覆盖
wevtutil sl Security /rt:false

# 通过 GPO 配置：
# 计算机配置 → 管理模板 → Windows 组件
#   → 事件日志服务 → 安全
# 最大日志文件大小（KB）：1048576
```

### 步骤 4：配置 Windows 事件转发（WEF）

```powershell
# 在收集器服务器上：
wecutil qc /q

# 为高价值事件创建订阅：
# 事件 ID：4624（登录）、4625（登录失败）、4688（进程创建）、
# 4672（特殊权限）、4720（创建用户）、4728（组成员变更）、
# 7045（安装服务）、1102（日志清除）

# 在源端点上（GPO）：
# 配置 WinRM：winrm quickconfig
# 配置事件转发：计算机配置 → 管理模板
#   → Windows 组件 → 事件转发
# 配置目标订阅管理器：Server=http://collector:5985/wsman/SubscriptionManager/WEC
```

### 步骤 5：用于检测的关键事件 ID

```
认证事件：
  4624 - 登录成功（类型 2=交互式, 3=网络, 10=远程交互式）
  4625 - 登录失败
  4648 - 使用显式凭据登录（RunAs、哈希传递指示器）
  4672 - 分配特殊权限（管理员登录）
  4776 - NTLM 凭据验证

进程事件：
  4688 - 进程创建（启用后含命令行）
  4689 - 进程终止

账户事件：
  4720 - 创建用户账户
  4722 - 启用用户账户
  4724 - 尝试重置密码
  4728 - 成员添加到安全组
  4732 - 成员添加到本地组
  4756 - 成员添加到通用组

服务/系统事件：
  7045 - 安装新服务（持久化指示器）
  1102 - 清除审计日志（证据篡改）
  4697 - 在系统中安装服务

横向移动指示器：
  4648 + 4624(类型 3) - 基于凭据的横向移动
  5140 - 访问网络共享
  5145 - 网络共享访问检查（详细文件共享）
```

## 关键概念

| 术语 | 定义 |
|------|------|
| **高级审计策略** | 细粒度审计子类别（58 个子类别，对比基本的 9 个类别） |
| **事件 ID 4688** | 进程创建事件；对跟踪端点上的执行行为至关重要 |
| **WEF** | Windows 事件转发（Windows Event Forwarding），无需第三方代理即可集中收集日志 |
| **登录类型** | 表示认证方式的数字代码（2=交互式, 3=网络, 10=RDP） |

## 工具与系统

- **Windows 事件转发（WEF）**：内置集中式日志收集
- **NXLog**：用于 Windows 事件的开源日志转发代理
- **Winlogbeat**：将 Windows 事件日志传送到 Elasticsearch 的 Elastic Agent
- **Palantir WEF 配置**：开源 WEF 订阅模板

## 常见误区

- **使用基本审计策略而非高级策略**：基本和高级审计策略会产生冲突，始终只使用高级审计策略。
- **默认日志大小过小**：繁忙服务器上 20 MB 的安全日志几分钟就会写满。最小设置为 1 GB。
- **缺少命令行日志记录**：没有命令行内容的事件 4688 几乎没有检测价值。务必启用 ProcessCreationIncludeCmdLine_Enabled。
- **未转发日志**：端点被勒索软件清除时，本地事件日志也会丢失。应立即转发到集中式 SIEM。

