Frage :In einigen Szenarien, in denen der Verdacht besteht, dass die Dateien im System aus einer RPM-Installation geändert, geändert oder manipuliert wurden. Beispielsweise wurde das System gehackt und eine Binärdatei von ssh manipuliert. Wie kann ich überprüfen, ob seit der Installation Änderungen daran vorgenommen wurden?
Um zu überprüfen und zu überprüfen, ob die auf einem System mit rpm oder yum installierten Dateien seit der Installation geändert wurden, verwenden Sie den folgenden Befehl:
# rpm -V [PACKAGE_NAME]
Wenn Sie seit der Installation eine der Dateien im RPM geändert haben, wird dies in der obigen Befehlsausgabe aufgelistet. Jede Zeile beginnt mit einem bestimmten Flag, das die Änderung anzeigt. Die Bedeutung der einzelnen Flags ist in der folgenden Tabelle aufgeführt:
Flag | Bedeutung |
---|---|
S | Dateigröße unterschiedlich |
M | Modus unterschiedlich (einschließlich Berechtigungen und Dateityp) |
5 | MD5-Summe unterschiedlich |
D | Nichtübereinstimmung der Haupt-/Nebennummer des Geräts |
L | readLink(2)-Pfad stimmt nicht überein |
U | Benutzerbesitz ist unterschiedlich |
G | Gruppenbesitz ist unterschiedlich |
T | mTime unterscheidet sich |
Beispiel
1. Es besteht der Verdacht, dass der SSH-Server manipuliert wurde. Überprüfen wir also zuerst die RPM, die die Datei verteilt:
# yum provides */sshd openssh-server
Also openssh-server ist die RPM, die die ssh-Binärdateien im System bereitstellt.
2. Prüfen Sie als Nächstes, ob Änderungen in den von openssh-server rpm bereitgestellten Dateien vorhanden sind:
# rpm -V openssh-server
Wenn eine der Dateien manipuliert wurde, wird sie in der obigen Befehlsausgabe aufgeführt. Etwas Ähnliches wie unten:
S.5....T. /usr/sbin/sshd
Die falgs hier bedeuten, dass die Binärdatei des SSH-Servers manipuliert wurde:
S file Size differs 5 MD5 sum differs T mTime differs
Die Datei hat eine andere Größe, MD5-Prüfsumme und einen Änderungszeitstempel als die Datei, die mit dem RPM verteilt wird.
3. Hier können wir versuchen, das Paket mit yum neu zu installieren, um die ursprünglich verteilten Dateien aus den Repositories zu erhalten:
# yum reinstall openssh-server
In diesem speziellen zB. der SSH-Server muss neu gestartet werden.
# service sshd restart
Verwenden Sie für systemd-basierte Distributionen systemctl, um den Dienst neu zu starten:
# systemctl restart sshd