📦如何检查是否已添加或修改了任何RPM文件

问题:在某些情况下,怀疑安装rpm后系统上的文件已被修改或篡改。

例如,系统受到攻击,并且ssh二进制文件被篡改。

自安装以来进行比较,如何检查是否已对其进行更改?

要检查自安装以来在系统上使用rpm或yum安装的文件是否已更改,请使用以下命令:

# rpm -V [PACKAGE_NAME]

如果自安装以来在rpm中修改了任何文件,则将在上述命令的输出中列出该文件。 每行将以指示更改的特定标志开始。 每个标志的含义如下表所示:

标志值
小号文件大小不同
中号

模式不同(包括权限和文件类型)

MD5数量不同

d

主要/次要设备号不匹配

大号readLink(2)路径不匹配
ü

用户所有权不同

G

小组所有权不同

Ť时差

1.怀疑SSH服务器已被黑客入侵。

因此,让我们首先检查文件分发的rpm:

# yum provides */sshd
openssh-server

因此,openssh-server是在我们的系统上提供ssh二进制文件的rpm。

2.然后检查openssh-server rpm提供的文件中的更改:

# rpm -V openssh-server

如果任何文件已被修改,它将在上面命令的输出中列出。 像这样:

S.5....T. /usr/sbin/sshd

此处的标志表示SSH服务器二进制文件已被修改:

S Размер файла отличается
5 Сумма MD5 отличается
T Разница во времени

该文件的大小,MD5校验和和修改时间戳不同于RPM分发的文件。

3.现在,我们可以尝试使用yum重新安装软件包,以从存储库中获取原始可再发行文件:

# yum reinstall openssh-server

特别地,例如。 您需要重新启动SSH服务器。

# service sshd restart

对于基于systemd的发行版,请使用systemctl重新启动服务:

# systemctl restart sshd

Sidebar