进程创建事件取证用法是什么
Windows 安全日志中的 4688 事件记录新进程及其父进程。开启命令行审核后,事件里包含完整命令行,能直接回答「是谁拉起了什么命令」;不开命令行记录时只能看到进程路径,溯源价值明显打折。
基本信息
| 适用平台 | Windows 安全日志,需开启进程创建审核 |
|---|---|
| 关键字段 | NewProcessName、CommandLine、ParentProcessName、SubjectUserName |
| 前置配置 | 审核策略开启进程创建审核,并开启命令行包含 |
| 互补数据源 | Sysmon 事件 1,字段更全且含哈希 |
典型使用场景
- 还原执行链:谁拉起了谁
- 排查脚本解释器与系统工具的异常调用
- 通过父进程判断是否为办公软件或 Web 服务派生
- 结合登录事件确认执行身份
- 未部署 Sysmon 的环境里,这是主要的执行痕迹来源
- 把进程创建与登录事件按时间对齐,还原登录后立即执行的命令
- 按父进程路径批量统计,找出异常的父进程与子进程组合
- 对高频出现的系统工具建立基线,偏离基线的调用优先看
检索可疑命令
检索可疑命令
Get-WinEvent -FilterHashtable @{LogName='Security'; Id=4688} -MaxEvents 200 |
Where-Object { $_.Message -match 'powershell|cmd|certutil' } |
Select-Object -First 20 TimeCreated, Message
# 也可按父进程收窄:把 Web 服务、办公软件、脚本宿主作为父进程的事件单独看字段读法
| 字段 | 含义 | 注意 |
|---|---|---|
| NewProcessName | 新进程映像路径 | 临时目录与用户目录下的路径高度可疑 |
| CommandLine | 完整命令行 | 未开启命令行审核时该字段为空 |
| ParentProcessName | 父进程映像路径 | 用于判断由谁触发 |
| SubjectUserName | 发起账号 | 服务账号出现交互式派生需关注 |
| TokenElevationType | 令牌提升类型 | 不完全令牌常见于 UAC 相关场景 |
命令行包含开关默认关闭。字段为空只能说明没有记录,不能解释成「没有参数」,这个区别在报告里必须写清楚。
该事件量很大。先按时间窗与关键字收窄再逐条看,直接全量导出会让分析变成翻日志。
同一进程在极短时间内可能产生多条记录(例如派生多个子进程),统计数量前先去重,否则数字会明显偏高。