Installation und Verwendung von chkrootkit
So prüfen Sie Ihren Server auf Rootkits und richten automatisierte Sicherheitsprüfungen ein.
Chkrootkit (check rootkit) ist ein kostenloses Open-Source-Tool zur Erkennung von Rootkits und anderer Schadsoftware auf Linux-Systemen. Es erkennt nahezu alle bekannten modernen Rootkits und ist in den meisten gängigen Distributionen verfügbar.
Das Tool funktioniert sowohl auf VPS als auch auf dedizierten Servern.
Installation
Option 1 — über den Paketmanager (empfohlen):
apt-get install chkrootkit
Option 2 — aus dem Quellcode kompilieren (für die neueste Version):
wget --passive-ftp ftp://ftp.pangeia.com.br/pub/seg/pac/chkrootkit.tar.gz
tar xvfz chkrootkit.tar.gz
cd chkrootkit-*/
make sense
Nach dem Kompilieren das Verzeichnis an einen sinnvollen Ort verschieben:
cd ..
mv chkrootkit-/ /usr/local/chkrootkit
Einen Symlink erstellen, um chkrootkit von überall aufrufen zu können:
ln -s /usr/local/chkrootkit/chkrootkit /usr/local/bin/chkrootkit
Befehlszeilenoptionen
| Option | Beschreibung |
|---|---|
-h |
Hilfe anzeigen |
-V |
Version anzeigen |
-l |
Alle verfügbaren Tests auflisten |
-d |
Debug-Modus aktivieren |
-q |
Stiller Modus — nur infizierte Dateien ausgeben |
-x |
Erweiterter Modus — ausführliche Ausgabe für jede geprüfte Datei |
-r dir |
Angegebenes Verzeichnis als Root verwenden |
-n |
Prüfungen auf NFS-Mounts überspringen |
-p dir1:dir2 |
Pfade für externe Programme angeben, die chkrootkit verwendet |
Scan ausführen
Für eine vollständige Systemprüfung:
chkrootkit
Beispielausgabe:
ROOTDIR is /' Checking amd'... not found
Checking basename'... not infected Checking cron'... not infected
Checking find'... not infected Checking ls'... not infected
Checking ps'... not infected Checking sshd'... not infected
...
Checking `bindshell'... INFECTED (PORTS: 465)
...
Ausgabe verstehen
| Status | Bedeutung |
|---|---|
not infected |
Keine bekannten Rootkit-Signaturen gefunden |
INFECTED |
Das Programm entspricht einer bekannten Rootkit- oder Malware-Signatur |
not found |
Das Programm wurde auf dem System nicht gefunden und nicht geprüft |
not tested |
Test übersprungen — nicht anwendbar auf dieses Betriebssystem, fehlende Abhängigkeit oder durch Flag deaktiviert |
Vulnerable but disabled |
Programm ist infiziert, aber läuft aktuell nicht |
Bekanntes False Positive: wenn Sie
Checking 'bindshell'... INFECTED (PORTS: 465)auf einem Mailserver sehen, kein Grund zur Panik. Port 465 ist SMTPS (Secure SMTP) — dies ist ein gut dokumentierter Fehlalarm, den chkrootkit auf Mailservern stets auslöst.
Wichtig
chkrootkit meldet Probleme — es behebt sie nicht. Jede Warnung muss manuell untersucht werden, um festzustellen, ob es sich um eine echte Bedrohung oder ein False Positive handelt, bevor Maßnahmen ergriffen werden.
Scans mit cron automatisieren
Sie können regelmäßige Scans planen und die Ergebnisse automatisch per E-Mail erhalten.
Zunächst den vollständigen Pfad zu chkrootkit ermitteln:
which chkrootkit
Ausgabe:
/usr/sbin/chkrootkit
Crontab öffnen:
crontab -e
Einen Job hinzufügen — zum Beispiel für einen vollständigen Scan täglich um 3:00 Uhr nachts:
0 3 * * * /usr/sbin/chkrootkit 2>&1 | mail -s "chkrootkit Report" ihre@email.com
Ersetzen Sie den Pfad durch den von which chkrootkit zurückgegebenen Wert und tragen Sie Ihre eigene E-Mail-Adresse ein.
Hilfe
Bei Fragen oder wenn Sie Unterstützung brauchen, erreichen Sie uns jederzeit über das Ticketsystem — wir helfen Ihnen gern weiter!