应急响应中的文件时间:mtime、atime、ctime

admin 2023年12月23日10:28:28评论23 views字数 2321阅读7分44秒阅读模式

文件时间的区别?

应急响应中的文件时间:mtime、atime、ctime

01

Modify:最后一次修改文件内容的时间

Access:最后一次访问文件内容的时间

Change:最后一次文件属性变化的时间

modify修改和change变化的区别是,修改侧重人为修改(用户控制),变化侧重客观变化(系统控制)。


02

Modify:文件内容从内存到硬盘中

Access:文件内容从硬盘到内存中

Change:文件属性从内存到硬盘中


03

改变mtime的命令:

  • vim(修改)、nano

  • 管道符(如:echo >> 文件名)

改变atime的命令:

  • 改变mtime的命令(管道符改变mtime时不改变atime)

  • vim(查看)、cat

  • grep、sed、awk

  • less、more

改变ctime的命令:

  • 改变mtime的命令(ctime会比mtime晚几毫秒)

  • chmod、chown、chgrp

  • mv

mtime改变时atime可能改变所以mtime等于或晚于atime,atime改变时mtime不改变所以mtime早于atime,因此:mtime与atime之间没有明显的先后关系

mtime改变时ctime肯定改变所以mtime等于或早于ctime,ctime改变时mtime不改变所以mtime早于ctime,因此:mtime不可能晚于ctime


04

查看MAC时间:stat 文件名

查看mtime:ls -l 文件名

查看atime:ls -lu 文件名

查看ctime:ls -lc 文件名

显示详细时间:ls --full-time

按mtime排序,由近到远:ls -lt

按mtime排序,由远到近:ls -ltr

按atime排序,由近到远:ls -lut

。。。


05

上面都是Linux文件时间的介绍,Windows文件时间“修改时间、访问时间、创建时间”由于没有歧义,就不做介绍了。查看方式是:

查看全部时间:选中文件,单击鼠标右键,选择属性

查看修改时间:dir 文件名 /t:w

查看访问时间:dir 文件名 /t:a

查看创建时间:dir 文件名 /t:c

应急响应中的文件时间:mtime、atime、ctime

应急响应中的文件时间:mtime、atime、ctime

文件时间在应急响应中的作用?

判断攻击时间,以便围绕攻击时间排查入侵痕迹。

文件时间的可信度?

01 攻击者为什么要篡改文件时间?

干扰防守方应急


02 往前改还是往后改?

往前改到入侵开始前的时间,日志量变大可以拖慢防守方的排查效率,如果历史日志被覆盖了还可以影响防守方的排查思路。

往后改到入侵结束后的时间,由于日志没有入侵痕迹从而可以切断防守方的应急线索。

HVV求快或开始入侵时,可以往前改;APT求稳或完成入侵时,可以往后改。


03 篡改文件时间的方法?

Linux更新mtime和atime和ctime:

  • touch 文件名:若不存在文件,创建空文件;若存在文件,更新mtime和atime和ctime

  • touch -m 文件名:若不存在文件,创建空文件;若存在文件,更新mtime和ctime

  • touch -a 文件名:若不存在文件,创建空文件;若存在文件,更新atime和ctime

  • touch -c 文件名:若不存在文件,不创建空文件若存在文件,更新mtime和atime和ctime


Linux篡改mtime和atime:

  • touch -t 时间 文件名:篡改mtime和atime,更新ctime(touch -t 202311220102.03 文件名)

  • touch -d 时间 文件名:篡改mtime和atime,更新ctime(touch -d "2023-11-22 01:02:03.123456789" 文件名)

  • touch -r 文件名1 文件名2:篡改mtime和atime成文件名1的,更新ctime

因此,-t只能精确到秒,毫秒/微秒/纳秒都是0,容易被识破,不建议使用;-d和-r可以精确到毫秒/微秒/纳秒,更真实,建议使用。

应急响应中的文件时间:mtime、atime、ctime


Linux篡改ctime:

  1. date -s "2023-11-22 01:02:03.123456789":篡改系统的日期和时间

  2. touch 文件名:篡改文件的mtime和atime和ctime

  3. ntpdate  ntp.aliyun.com:恢复系统的日期和时间(或用“date -s 时间”来恢复)

应急响应中的文件时间:mtime、atime、ctime


Windows篡改“修改时间”和“访问时间”:

  1. date 2023/11/22:篡改系统的日期

  2. time 01:02:03:篡改系统的时间

  3. copy 文件名 +,, :篡改文件的“修改时间”

  4. copy 文件名 +.. :篡改文件的“修改时间”和“访问时间”


Windows篡改“创建时间”:

命令行无法直接篡改,需要借助工具,一般攻击场景不会为这个细节特地上传工具,此处暂不介绍。


04 如何识别文件时间是否被篡改?

1、如果攻击者偷懒,篡改mtime和atime时,没有精确到毫秒/微秒/纳秒,系统默认会设为000000000。所以如果遇到秒后面全是0的mtime和atime,说明文件时间被篡改过。

应急响应中的文件时间:mtime、atime、ctime

2、如果攻击者偷懒,篡改ctime时,只篡改了日期,没有篡改时间,系统默认就从00:00:00开始。所以如果ctime距离0点很近,说明文件时间大概率被篡改过。

应急响应中的文件时间:mtime、atime、ctime

3、由于date命令需要root权限才能执行,因此可以通过判断攻击者是否获得root权限,来判断ctime是否会被篡改。文件上传漏洞时中间件用户是否root权限、date命令是否4000权限等

应急响应中的文件时间:mtime、atime、ctime

4、mtime改变时ctime肯定改变所以mtime等于或早于ctime,ctime改变时mtime不改变所以mtime早于ctime,因此:mtime不可能晚于ctime。所以如果mtime晚于ctime,说明文件时间被篡改过。

应急响应中的文件时间:mtime、atime、ctime

5、如果历史命令日志还在,可以查看是否存在篡改时间的记录,来判断文件时间是否被篡改过。

应急响应中的文件时间:mtime、atime、ctime

原文始发于微信公众号(OneMoreThink):应急响应中的文件时间:mtime、atime、ctime

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2023年12月23日10:28:28
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   应急响应中的文件时间:mtime、atime、ctimehttps://cn-sec.com/archives/2229994.html

发表评论

匿名网友 填写信息