Rootkits aufspüren mit rkhunter

Rootkits gehören wohl zu den besonders unschönen Arten von Schadsoftware. Rootkits verstecken sich meist so tief im System und können sich so geschickt tarnen, dass ein Auffinden schwierig bis unmöglich wird. Rootkits dienen einem Angreifer primär sich unbemerkt Zugriff zu verschaffen bzw. Schadsoftware nachzuladen. Je nach Rootkit Art nistet sich der Schädling in unterschiedlichen Bereichen des Systems ein. Das kann der Arbeitsspeicher sein, der Kernel oder bestehende Prozesse. Besonders spannend wird es, wenn sich ein Rootkit das BIOS/EFI eines Systems oder den Controler der Festplatte als neues Heim aussucht. Hier hilft dann nur noch der Tausch der Hardwarekomponenten. Auch Anwender, die zu Hause Ihre eigene Cloud auf einem Einplatinencomputer wie einem Raspberry Pi oder Banana Pi betereiben, sollten auf der Hut sein, um die eigenen Daten bzw. die der Freunde und Familie zu schützen.

Unter Linux gibt es mehrere Möglichkeiten einen Versuch zu starten, Rootkits aufzuspüren. Eine davon ist die Software „rkhunter“. Im Optimalfall verwendet man für den Scan ein Live Linux, um ein möglichst sauberes und vertrauenswürdiges System zu haben. Natürlich ist es auch möglich, die Software auf dem bereits vorhandenen Linux zu installieren.

Installation unter Arch Linux:

sudo pacman -S rkhunter

Installation unter Debian Linux:

sudo apt-get install rkhunter

Nach der Installation lässt sich prüfen, ob auch die aktuellste Version zur Verfügung steht.

sudo rkhunter --versioncheck

Sollte die gewählte Distribution nicht die neueste Version anbieten, lässt sich rkhunter auch manuell updaten. Die aktuellste Version findet sich hier: Klick. Das Archiv muss vor der Installation noch entpackt werden.

tar -xvf rkhunter-1.4.2.tar.gz

Das mitgelieferte Installationsskript wird ausführbar gemacht.

chmod +x ./rkhunter-1.4.2/installer.sh

Jetzt kann die Installation ausgeführt werden.

cd rkhunter-1.4.2
sudo sh ./installer.sh --install

Nach der Installation sollten die Datenbanken auf den aktuellsten Stand gebracht werden.

sudo rkhunter --update --propupd

rkhunter rootkit

Sobald rkhunter inklusive der Datenbanken aktuell ist, kann der erste Scan gestartet werden. Der Parameter „–rwo“ sorgt dafür, dass nur Warnungen ausgegeben werden.

sudo rkhunter -c --rwo

rkhunter rootkit

Nach dem erstem Scan gibt es eine ganze Menge Warnungen und Hinweise. Diese können jedoch durchaus harmlos sein und in einer Whitelist hinterlegt werden. Aufschluss darüber gibt die rkhunter FAQ. Wem der Abgleich mit der FAQ zu blöd oder zu aufwendig ist, kann sich mit einem Skript weiterhelfen. Das Skript durchforstet das rkhunter Logfile und listet auf, was alles in die Whitelist kann. Hierbei ist wichtig zu wissen, dass das Skript keine Änderungen durchführt. Es analysiert ausschliesslich das Logfile.

wget https://github.com/MediaCluster/SysAdminScripts/blob/master/rkhunter-whitelist.sh
chmod +x rkhunter-whitelist.sh
sudo ./rkhunter-whitelist.sh

rkhunter rootkit

Die angezeigten Whitelisteinträge können direkt kopiert und in die Datei „/etc/rkhunter.conf.local“ kopiert werden. Die Datei existiert initial nicht und muss daher angelegt werden.

sudo nano /etc/rkunter.conf.local

rkhunter rootkit

Nachdem die Einträge der Whitelist hinzugefügt wurden, lässt sich der Scan erneut starten.

sudo rkhunter -c --rwo

rkhunter rootkit

Das Ergebnis sollte jetzt deutlich weniger „kryptisch“ erscheinen. Die Lösungen für Warnungen oder Hinweise können entweder über eine Suchmaschine der Wahl oder die FAQs erfragt werden. Klick Der Scan mit rkhunter ist natürlich nicht 100% aussagekräftig. Es gibt durch auch Rootkits, die darauf trainiert sind, nicht von bestimmter Software erkannt zu werden. Daher ist es immer empfehlenswert mindestens eine zweite Software zu nutzen und auch regelmäßig einzusetzen. Das kann z.B. „chkrootkit“ sein. Wie diese Software funktioniert und zu verwenden ist, beschreibe ich in einem eigenen Beitrag. Hinweise oder Wünsche werden wie immer gerne in den Kommentaren gesehen.