计划任务文件与事件联合核查是什么
计划任务不只在日志里:任务定义以 XML 文件存放在系统任务目录下,同时创建与修改会留下 4698、4699、4702 事件。文件与事件联合核查更可靠——文件给出当前定义,事件给出变更时间与操作者,两者互为校验。
基本信息
| 适用平台 | Windows 任务计划程序 |
|---|---|
| 位置 | 系统任务目录(System32/Tasks)下的 XML 文件 |
| 对应事件 | 4698 创建任务、4699 删除任务、4702 更新任务 |
| 联合价值 | 文件内容配合事件时间与操作者,可以互相校验 |
典型使用场景
- 核查可疑任务的完整定义:触发条件与执行命令
- 用事件时间识别任务是否被事后篡改
- 发现隐藏任务,任务目录下同样有对应 XML
- 判断任务由哪个账号创建
- 为清理动作与后续基线固化提供依据
- 把任务动作指向的脚本一并分析,还原执行的完整内容
- 统计任务的触发条件,找出高频触发或随登录触发的任务
- 对比任务创建时间与主机上线时间,识别随机器部署植入的任务
清单
清单
schtasks /query /fo LIST /v | Select-String -Pattern 'TaskName|Task To Run|Run As User'
Get-ChildItem C:/Windows/System32/Tasks -Recurse | Select-Object FullName, LastWriteTime
Get-WinEvent -FilterHashtable @{LogName='Security'; Id=4698,4699,4702} -MaxEvents 50 |
Select-Object TimeCreated, Id, Message
# XML 文件的 LastWriteTime 与 4698 时间对照,可识别任务被事后篡改证据对照
| 证据 | 能回答的问题 | 注意 |
|---|---|---|
| XML 文件 | 任务的当前完整定义 | 反映当前状态,不代表创建时间 |
| 4698 事件 | 任务创建时间与操作者 | 需开启相应审核策略 |
| 4702 事件 | 任务被更新的时间 | 与 XML 时间对照可发现篡改 |
| 文件时间戳 | 最近修改时间 | 与事件矛盾时需要进一步核实 |
隐藏任务在任务目录下同样有对应 XML 文件。只依赖查询命令的默认列表看不到,必须落到文件系统层面核对。
任务的执行命令常经过参数拼接与引号变形。阅读 XML 时要还原真实命令,注意路径与参数的截断方式。
任务定义可以引用外部脚本与参数文件,只看 XML 无法看清最终行为,要跟到脚本正文。
任务动作里可能使用环境变量与相对路径,还原时要先把变量展开,再判断真实执行位置。