Skip to content

Commit c769b1f

Browse files
committed
ops/security: ctime
1 parent eb791d9 commit c769b1f

File tree

1 file changed

+1
-1
lines changed

1 file changed

+1
-1
lines changed

docs/ops/security.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -297,7 +297,7 @@ int main() {
297297

298298
如果攻击者拥有机器的 root 权限,那么这些日志可能会被删除;如果入侵与发现之间距离时间很长,旧的日志也有可能会被 rotate。因此在有必要的情况下,需要定时备份日志,或者利用 `rsyslog` 等工具将日志实时发送到其他服务器上。
299299

300-
此外,如果机器已经被感染,那么执行的命令输出结果可能不可信。例如,攻击者可以修改 `/etc/ld.so.preload` 文件,在所有动态链接的程序执行之前加载自己的恶意代码,或是直接将系统程序替换为有问题的版本。如果不便使用 LiveCD 等方式加载其他操作系统检查,可以使用静态链接的 busybox 工具初步排查是否存在恶意篡改的问题。
300+
此外,如果机器已经被感染,那么执行的命令输出结果可能不可信。例如,攻击者可以修改 `/etc/ld.so.preload` 文件,在所有动态链接的程序执行之前加载自己的恶意代码,或是直接将系统程序替换为有问题的版本;攻击者也可能通过直接注入恶意内核模块的方式干扰所有用户态程序的运行。如果不便使用 LiveCD 等方式加载其他操作系统检查,可以使用静态链接的 busybox 工具初步排查是否存在恶意篡改的问题。一种可以快速判断某个特定文件是否被修改的方式是使用 `stat`(建议在离线环境中)检查文件的 `Change` 时间戳——`Modify` 时间戳(mtime)表示文件内容的最后修改时间,可以被修改,而 `Change` 时间戳(ctime)表示文件元数据(包括 mtime)的最后修改时间,无法被随意修改
301301

302302
在必要的情况下,也可以使用工具 dump 系统的内存镜像或是磁盘镜像到其他机器上,以便进一步分析。磁盘镜像可以使用 `dd` 工具提取,而内存镜像可以使用 [AVML](https://github.com/microsoft/avml) 或者 [LiME](https://github.com/504ensicsLabs/LiME) 提取后,使用 [Volatility](https://volatilityfoundation.org/the-volatility-framework/) 分析。
303303

0 commit comments

Comments
 (0)