Skip to content

Rkhunter (Rootkit Hunter) und Chrootkit auf Ubuntu installieren, aktualisieren und konfigurieren

Linux Systeme gelten als relativ sichere Systeme, jedoch sind auch sie immer öfter von Backdoors oder Rootkits befallen (aktuelle Beispiele wären hier Jellyfish oder Ebury) 
Es kann somit nicht schaden die eigenen Systeme regelmäßig auf diverse Schädlinge zu untersuchen

Ein Tool, welches seit Langem für diesem Sektor zuständig ist, nennt sich Rkhunter (Rootkit Hunter).
Die OpenSource Software scannt nicht nur euer Linux System nach unerwünschten Gästen, sondern sucht das System auch nach veränderten Dateien oder offenen Ports ab. 

Auch diverse andere Sicherheitseinstellungen sind in den Tests enthalten. Eine Installation schadet somit sicherlich nicht.

rkhunter

Installation von Rkhunter auf Ubuntu 14.04 (Server)

Da Rkhunter in den Ubuntu Repositories enthalten ist, fällt ein Installation über die Paketverwaltung mehr als einfach aus.

sudo apt-get install rkhunter

In den Repositories von Ubuntu 14.04  ist die Version 1.4.0 enthalten, es kann aber auf die aktuelle Version 1.4.2 aktualisiert werden

Rkhunter auf Version 1.4.2 aktualisieren

wget http://downloads.sourceforge.net/project/rkhunter/rkhunter/1.4.2/rkhunter-1.4.2.tar.gz

Test der Checksumme

md5sum rkhunter-1.4.2.tar.gz

Entpacken und installieren

tar xzvf rkhunter*
cd rkhunter
sudo ./installer.sh --layout /usr --install

            Checking system for:
             Rootkit Hunter installer files: found
             A web file download command: wget found
            Starting update:
             Checking installation directory "/usr": it exists and is writable.
             Checking installation directories:
              Directory /usr/share/doc/rkhunter-1.4.2: creating: OK
              Directory /usr/share/man/man8: exists and is writable.
              Directory /etc: exists and is writable.
              Directory /usr/bin: exists and is writable.
              Directory /usr/lib: exists and is writable.
              Directory /var/lib: exists and is writable.
              Directory /usr/lib/rkhunter/scripts: creating: OK
              Directory /var/lib/rkhunter/db: exists and is writable.
              Directory /var/lib/rkhunter/tmp: exists and is writable.
              Directory /var/lib/rkhunter/db/i18n: exists and is writable.
              Directory /var/lib/rkhunter/db/signatures: creating: OK
             Installing check_modules.pl: OK
             Installing filehashsha.pl: OK
             Installing stat.pl: OK
             Installing readlink.sh: OK
             Installing backdoorports.dat: OK
             Installing mirrors.dat: OK
             Installing programs_bad.dat: OK
             Installing suspscan.dat: OK
             Installing rkhunter.8: OK
             Installing ACKNOWLEDGMENTS: OK
             Installing CHANGELOG: OK
             Installing FAQ: OK
             Installing LICENSE: OK
             Installing README: OK
             Installing language support files: OK
             Installing ClamAV signatures: OK
             Installing rkhunter: OK
             Installing rkhunter.conf in no-clobber mode: OK
             >>>
             >>> PLEASE NOTE: inspect for update changes in "/etc/rkhunter.conf.22942",
             >>> and apply to either "/etc/rkhunter.conf" or your local configuration
             >>> file before running Rootkit Hunter.
             >>>
            Update complete

            

Versionsprüfung der Installation

sudo rkhunter --version

Erster Scan mit Rkhunter

Ein erster Scan gibt Erkenntnisse über das System, aber auch über "false positive" Ereignisse oder ähnliches. Diese werden am Ende in einer ausführlichen Zusammenfassung ausgegeben und lassen sich später auch über die Logs abrufen.

sudo rkhunter -c --enable all

rkhunter-zusa

Konfiguration von rkhunter

Sollten Fehler auftreten oder Warnungen angezeigt werden, welche definitiv keine Gefahr darstellen, kann dies unter "/etc/rkhunter.conf" beispielsweise in einer Whiteliste hinterlegt werden.

sudo nano /etc/rkhunter.conf

Auch Emailoptionen und ähnliches lassen sich hier hinterlegen. So kann unter  "MAIL-ON-WARNING="mail@me.de" der gewünschte Ansprechpartner für Warnungen hinterlegt werden.

rkhunter-unhide

Alternativ können Prozesse und Verzeichnisse mit Hilfe einer Whitelist von der Suche ausgeschlossen werden.

Das ist in Bezug auf einzelne Systeme mit verschiedenen Konfigurationen immer sinnvoll.

Automatisieren mit Cron

Um den Scan regelmäßig auszuführen, bietet sich ein Script in Verbindung mit einem Cronjob an.

sudo nano /home/user/rkhunter-auto.sh

 #!/bin/sh
 (
 rkhunter --versioncheck
 rkhunter --update
 rkhunter -c --cronjob -report-warnings-only
 ) | mail -s 'rkhunter pruefung' mail@me.de

sudo crontab -e

0 20 7 /home/user/rkhunter-auto.sh

Mit dieser Einstellung würde rkhunter jede Woche das System scannen und nur bei Warnungen eine Meldungen abgeben.

Troubleshooting

Wie bereits erwähnt, kann es vorkommen, das Systembereiche angemahnt werden, obwohl diese keine Gefahr darstellen. Hier ein Beispiel:

sudo rkhunter -c --enable all --disable none
Invalid SCRIPTWHITELIST configuration option: Non-existent pathname: /usr/bin/lwp-request
Invalid SCRIPTWHITELIST configuration option: Non-existent pathname: /usr/sbin/prelink

In diesem Fall auf die Konfiguration zurückgreifen und unter "/etc/rkhunter.conf" die beiden Einträge auskommentieren.


Installation von Chkrootkit auf Ubuntu 14.04 (Server)

Doppelt hält bekanntlich besser, darum ist die Installation eines zweiten Tools, welches auf ähnlich Art und Weise das System überprüft sicherlich sinnvoll. In diesem Fall handelt es sich um das Tool Chkrootkit, welches, wie der Name vermuten lässt, ebenso auf Rootkits aus ist.

Die Installation und Konfiguration ist hier ähnlich einfach.

Installation Chkrootkit

sudo apt-get install chkrootkit

Konfiguration von Chkrootkit (wöchentliche Prüfung und Mailbenachrichtigungen)

In der Konfiguration kann eingestellt werden, ob täglich ein Check laufen soll. Alternativ lässt sich dies auch über einen extra Cronjob, z.B. monatlich lösen, wie es bei Rkhunter schon gemacht wurden.

sudo nano /etc/chkrootkit

sudo crontab -e

0 20 30 /usr/sbin/chkrootkit | mail -s "chkrootkit pruefung" me@home.de

Fazit

Beide Tools erfüllen im Prinzip ihren Job. Sollte ein System befallen sein, ist es effektiver solche Tools von einer nicht infizierten Live CD laufen zu lassen.

Bei einem Befall ist die sicherste Variante sowieso das Neusaufsetzen des Systems, wenn möglich.