Вопрос: В некоторых случаях есть подозрение, что файлы в системе после установки rpm были изменены или подделаны.
Например, система была взломана и бинарный файл ssh подделан.
Как проверить, внесены ли в него изменения, сравнивая с момента установки?
Чтобы проверить это, изменились ли файлы, установленные в системе с rpm или yum, с момента установки, используйте следующую команду:
# rpm -V [PACKAGE_NAME]
ФЛАГ | ЗНАЧЕНИЕ |
---|---|
S | Размер файла отличается |
M |
Режим отличается (включая разрешения и тип файла)
|
5 |
Сумма MD5 отличается
|
D |
Несоответствие старшего / младшего номера устройства
|
L | readLink (2) несоответствие пути |
U |
Право собственности пользователей отличается
|
G |
Групповое владение отличается
|
T | Разница во времени |
Пример
1. Есть подозрение, что SSH-сервер был взломан.
Итак, давайте сначала проверим rpm, по которому распространяется файл:
# yum provides */sshd openssh-server
Итак, openssh-server – это rpm, который предоставляет бинарные файлы ssh в нашей системе.
2. Затем проверьте наличие изменений в файлах, предоставленных openssh-server rpm:
# rpm -V openssh-server
S.5....T. /usr/sbin/sshd
S Размер файла отличается 5 Сумма MD5 отличается T Разница во времени
Этот файл имеет другой размер, контрольную сумму MD5 и метку времени модификации, чем тот, который распространяется вместе с RPM.
3. Теперь мы можем попробовать переустановить пакет с помощью yum, чтобы получить исходные распространяемые файлы из репозиториев:
# yum reinstall openssh-server
В частности, например. необходимо перезапустить SSH-сервер.
# service sshd restart
Для дистрибутивов на основе systemd используйте systemctl для перезапуска службы:
# systemctl restart sshd