首页/安全/应急响应速查/时间戳篡改迹象识别

时间戳篡改迹象识别

时间戳篡改的迹象:mtime 早于 ctime、批量文件时间一致、时间早于系统安装;用四时间戳与日志时间线对照。

应急响应速查安全更新于 2026-10-13

时间戳篡改的迹象

常见迹象有三类:mtime 早于 ctime、同一批文件的时间完全一致、文件时间早于系统安装时间。判定要结合四个时间戳与系统日志的时间线,而不是只看其中一个字段。

分析要在镜像上做

在活系统上检查本身就会更新 atime 与 ctime,等于自己制造新的时间戳噪声。因此时间证据的分析应在只读挂载的镜像副本上进行。

基本信息

核心线索mtime 早于 ctime、批量相同时间、早于装机时间
对比方法stat 四个时间戳与日志时间线交叉
批量定位find -newermt 圈定改动范围
分析前提在镜像上进行,避免自身改动时间戳
字段含义atime 访问、mtime 内容、ctime 元数据、birth 创建
权限要求读取文件属性即可,挂载镜像需 root

典型使用场景

  • 排查木马文件被改时间戳以隐藏自己
  • 验证文件时间与日志记录是否矛盾
  • 圈定某个时间窗内的文件改动
  • 与时间线重建工具配合使用
  • 复盘时说明时间证据的可信度

检查时间戳与批量改动

检查时间戳与批量改动
stat -c '%n mtime=%y ctime=%z birth=%w' /www/wwwroot/suspect.php
find /www/wwwroot -type f -newermt '2026-10-01' ! -newermt '2026-10-12' | head -n 30
find /tmp -type f -newermt '2026-10-01' -printf '%T+ %p\n' 2>/dev/null | sort | head
stat -c '%n %y %z' /usr/bin/ls /bin/ps | head
date -u +%FT%TZ

四时间戳读法

字段含义参考价值
atime最后访问时间受挂载选项影响,参考价值较低
mtime内容最后修改时间最常被篡改的字段
ctimeinode 元数据变更时间无法由用户直接设置,是重要对照
birth文件创建时间部分文件系统支持,与 mtime 矛盾时优先怀疑
部分文件系统支持 birth time,不支持时只能靠 ctime 与日志交叉判断:单凭一个字段无法支撑结论。
mtime 早于 ctime 只是可疑信号:备份恢复、同步工具与解压操作也会造成类似现象,必须结合文件内容与日志一起判断。

判定流程

  • 取四个时间戳并记录
  • 与系统日志的关键时间点对齐
  • 批量扫描同一时间窗内的文件改动
  • 对可疑文件提取样本并计算哈希
  • 结论标注为可疑并说明还需要哪些旁证

易错点

  • 只看单个时间戳:mtime 早于 ctime 只是可疑信号,需结合内容与日志
  • 在活系统上比对分析:检查动作本身会更新 atime 与 ctime
  • 忽略批量相同的异常时间:整批文件同一秒常常说明被批量改写
  • 忘记时区差异:文件时间与日志时间基准不一致会得出相反结论
  • 把结论写成确定事实:时间戳证据通常只能支撑可疑判断

数据来源与参考

  • stat(1):时间戳字段语义
  • MITRE ATT&CK T1070.006 时间戳篡改

相关工具

​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌