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.

Linux Server auf Botnet Windigo testen

Der Sicherheitsspezialist ESET hat in dieser Woche über die Operation Windigo berichtet. Angeblich wurden seit 2011 mehr als 10 000 linuxbasierte Server von diesem Botnet befallen.

Über diverse Rootkits (Linux/Ebury, Linux/Cdorked, Linux/Onimiki oder Perl/Calfbot) verschafft sich das Botnet Zugriff auf SSH Zugangsdaten oder DNS.

Zusätzlich werden OpenSSH Dateien manipuliert (ssh, sshd, ssh-add). Bei neueren Versionen (Stand Februar 2014) des Rootkits wird angeblich die libkeyutils.so abgehändert und dadurch um einige KB größer.

Ein Befall durch das Botnetz lässt sich mit einem Konsolenbefehl überprüfen:

ssh -G 2>&1 | grep -e illegal -e unknown > /dev/null && echo "System sauber" || echo "System infiziert"

Sollte das System befallen sein, empfehle ich den Server komplett neu aufzusetzen, da durch die offenen Zugangsdaten zusätzliche Änderungen am System vorgenommen worden sein könnten.

linux-logo

Carrier IQ auf dem iPhone und Android deaktivieren

Carrier IQ war und ist bei vielen Smartphonebesitzern weiterhin in aller Munde. Nachdem die Spionagesoftware auf nahezu jedem Gerät verschiedener Mobilgerätehersteller entdeckt wurde (Iphone, Android, Blackberry) ist immer noch nicht genau bekannt, welche Daten die Sniffersoftware vom Anwender Preis gibt. Auch ist weiterhin unklar in wie weit deutsche Nutzer betroffen sind.

Trotz der ungeklärten Fakten, gibt es bereits die Möglichkeit das Rootkit zu erkennen und bei Bedarf abzuschalten.

Carrier IQ auf dem iPhone erkennen und blockieren

  • Unter iOS5 auf Einstellungen/Allgemein/Info/Diagnose & Nutzung/ gehen und "nicht senden" auswählen
  • Für ältere Systeme wie iOS 3 und iOS4 ist hier eine Anleitung zu finden

carrier-iq

Apple hat bereits verkündet die Software in neuen iOS5 Geräten nicht mehr zu verwenden.

Carrier IQ auf Android erkennen und abschalten

Google macht es den Nutzern von Androiden nicht gerade einfach Carrier IQ zu deaktivieren. Eine Variante bietet Trevor Eckhart mit einer eigenen App an:

  • Logging Test App v7 herunterladen
  • Da es sich um einen APK Installer handelt, mailt man sich die Anwendung am besten selbst um sie zu installieren
  • Funktioniert das nicht, muss der Androide erst gerootet werden
  • Sobald "CIQ Checks" ausgewählt wird, prüft das Gerät auf die Installation von Carrier IQ
  • Ist das Sniffing Tool vorhanden verlangt die App $1 um es zu entfernen

carrier-iq-android

Natürlich kann es vorkommen, das beim Entfernen etwas schief geht oder der $1 für manchen zu viel ist. Als kostenlose Alternative existiert leider nur ein App, das die Carrier IQ Funktionen einfriert bzw. abschaltet.