单个文件被改变:入侵还是损坏?

单个文件被改变:入侵还是损坏?

rkhunter 报告虚拟服务器 (netstat 二进制文件) 上的单个文件更改。它没有报告任何其他警告。该更改不是软件包升级的结果(我重新安装了它,校验和恢复到以前的样子)。

我想知道这是文件损坏还是入侵。我猜入侵会更改 rkhunter 监视的许多其他文件(如果入侵者有权访问 rkhunter 的数据库,则不会更改任何文件)。

我反汇编了两个二进制文件,objdump -d并将差异存储在这里:https://gist.github.com/3972886

生成的完整转储差异objdump -s在此处:https://gist.github.com/3972937

我猜测文件损坏会改变大块或单个位,而不是像这样的小块。

这些变化看起来可疑吗?我该如何进行进一步调查?

该系统正在运行 Debian Squeeze。

答案1

我抽查了其中几个,发现它们似乎都是单比特错误。此时,我会考虑更换硬盘、使用 RAID/ZFS 等。

答案2

我同意这不是入侵,而是某种硬件错误。

我还会考虑您的 RAM 是否出现故障,并在主机服务器上运行 memtest86 - 单比特错误也可能是非 ECC RAM 错误。如果您有 ECC RAM,则可以排除这种情况(当然,每台服务器都应该使用 ECC RAM,最好使用 ZFS 来检测 RAM 和磁盘损坏)。

也可能是磁盘控制器错误。

一般来说,值得检查日志中的控制器和磁盘错误,并尝试隔离位翻转的原因 - 它是否仅在一个磁盘上,如果交换 RAM 条是否还会发生,等等。

如果您有一个可以对数据块或文件进行校验的备份工具,它的作用有点像 ZFS,可以检测到超过单个文件的更大范围的损坏。

如果这是一台重要的服务器,只需更换 RAM 和磁盘就是一种快速的选择,让您可以在非关键系统中离线测试它们。

CERN 研究的一些背景信息:http://storagemojo.com/2007/09/19/cerns-data-corruption-research/

相关内容