Product SiteDocumentation Site

14.3.3. Änderungen erkennen

Nachdem das System installiert und konfiguriert ist, gibt es, abgesehen von Sicherheitsaktualisierungen, normalerweise keinen Grund, dass Dateien und Verzeichnisse sich weiterentwickeln, Daten ausgenommen. Es ist daher interessant sicherzustellen, dass Dateien sich in der Tat nicht ändern: jede unerwartete Veränderung wäre daher eine Untersuchung wert. Dieser Abschnitt stellt einige Hilfsprogramme vor, die Dateien überwachen und den Administrator warnen können, wenn eine unerwartete Veränderung auftritt (oder einfach derartige Veränderungen auflisten).

14.3.3.1. Pakete auditieren: debsums und seine Grenzen

debsums ist ein interessantes Hilfsprogramm, da es mit ihm möglich ist, herauszufinden, welche der installierten Dateien verändert worden sind (möglicherweise von einem Angreifer). Jedoch sollten diese Informationen mit Vorsicht aufgenommen werden, insbesondere weil nicht alle Debian-Pakete die von diesem Programm benötigten digitalen Fingerabdrücke bereitstellen (sie sind, falls vorhanden, in /var/lib/dpkg/info/paket.md5sums zu finden). Zur Erinnerung: ein Fingerabdruck ist ein Wert, häufig eine Zahl (wenn auch in hexadezimaler Schreibweise), die eine Art Signatur für den Inhalt der Datei enthält. Diese Signatur wird mit einem Algorithmus berechnet (MD5 und SHA1 sind bekannte Beispiele), der mehr oder weniger garantiert, dass selbst kleinste Veränderungen des Dateiinhalts eine Änderung des Fingerabdrucks bewirken; dies wird als „Lawineneffekt“ bezeichnet. Er ermöglicht es, einen einfachen numerischen Fingerabdruck als Lackmustest zu verwenden, um zu überprüfen, ob der Inhalt einer Datei verändert wurde. Diese Algorithmen sind nicht umkehrbar; mit anderen Worten, bei den meisten von ihnen ermöglicht die Kenntnis eines Fingerabdrucks es nicht, den dazugehörigen Inhalt zu finden. Jüngste mathematische Fortschritte schwächen anscheinend die absolute Gültigkeit dieser Prinzipien, aber ihre Verwendung ist bisher nicht infrage gestellt, da es wohl nach wie vor eine recht schwierige Aufgabe ist, einen anderen Inhalt zu erstellen, der denselben Fingerabdruck ergibt.
Außerdem sind die md5sums-Dateien auf der Festplatte gespeichert; ein sorgfältiger Angreifer wird daher diese Dateien aktualisieren, so dass sie die neuen Kontrollsummen für die unterwanderten Dateien enthalten.
Der erste Missstand kann dadurch vermieden werden, dass man debsums anweist, seine Überprüfungen auf ein .deb-Paket zu gründen, anstatt sich auf die md5sums-Datei zu verlassen. Hierzu müssen jedoch zunächst die passenden .deb-Dateien heruntergeladen werden:
# apt-get --reinstall -d install `debsums -l`
[ ... ]
# debsums -p /var/cache/apt/archives -g
Es sei auch darauf hingewiesen, dass debsums in seiner Standardkonfiguration automatisch die fehlenden md5sums-Dateien erstellt, wann immer ein Paket mit APT installiert wird.
Das andere Problem kann in ähnlicher Weise vermieden werden: die Überprüfung muss einfach auf einer tadellosen .deb-Datei beruhen. Da dies voraussetzt, dass man über alle .deb-Dateien für alle installierten Pakete verfügt und ihrer Unversehrtheit sicher ist, besteht der einfachste Weg darin, sie sich von einem Debian-Spiegelserver zu beschaffen. Dieser Vorgang kann langsam und mühsam sein und sollte daher nicht als eine regelmäßig zu nutzende proaktive Vorgehensweise angesehen werden.
# apt-get --reinstall -d install `grep-status -e 'Status: install ok installed' -n -s Package`
[ ... ]
# debsums -p /var/cache/apt/archives --generate=all
Man beachte, dass in diesem Beispiel der Befehl grep-status aus dem Paket grep-dctrl verwendet wird, das nicht standardmäßig installiert ist.