Rootkit-Erkennung unter Linux – rkhunter und chkrootkit 2025

Kompromittierte Server frühzeitig erkennen

S
SeeColors IT
11. Juni 20264 Min. Lesezeit74 Aufrufe

Was sind Rootkits?

Rootkit = Software die nach einem Einbruch installiert wird um:
1. Den Angreifer zu verstecken (Prozesse, Dateien, Netzwerkverbindungen)
2. Hintertüren offen zu halten
3. Systemtools zu ersetzen (ls, ps, netstat)

Erkennung ist schwierig, da Rootkits genau das verhindern.
Deshalb: externe Scanner (andere System-Tools nutzen)

rkhunter installieren und ausführen

apt install -y rkhunter

# Datenbank aktualisieren
rkhunter --update

# Baseline erstellen (nach Neuinstallation!)
rkhunter --propupd

# Scan ausführen
rkhunter --check --sk  # --sk = Skip Keypress

# Nur Warnungen anzeigen
rkhunter --check --sk 2>/dev/null | grep -i warning

# Typische Ausgabe
# [09:15:34] Checking for rootkits...
# [09:15:34]   Performing check of known rootkit files and directories
# [09:15:34]     Adore Rootkit                                   [ Not found ]
# [09:15:35]     Azazel Rootkit                                  [ Not found ]

rkhunter Konfiguration

# /etc/rkhunter.conf
# Wichtige Einstellungen:
[email protected]
MAIL_CMD=mail -s "[rkhunter] Warning on $HOSTNAME" $MAIL-ON-WARNING
COPY_LOG_ON_ERROR=1

# Whitelist für bekannte Abweichungen
SCRIPTWHITELIST=/usr/sbin/adduser
SCRIPTWHITELIST=/usr/bin/ldd

# Täglicher Scan per Cron
echo "0 3 * * * root /usr/bin/rkhunter --cronjob --update --quiet 2>&1 | mail -s 'rkhunter scan' [email protected]"     > /etc/cron.d/rkhunter

chkrootkit – alternativer Scanner

apt install -y chkrootkit

# Scan
chkrootkit

# Nur Infiziertes
chkrootkit 2>/dev/null | grep INFECTED

# Typisch False Positive:
# Checking `bindshell'... INFECTED (PORTS: 465)
# Port 465 = SMTPS, kein Rootkit! Whitelist:
chkrootkit -q | grep -v "^INFECTED (PORTS: 465)"

AIDE – File Integrity Monitoring

# AIDE überwacht Dateiänderungen
apt install -y aide

# Baseline-Datenbank erstellen (sauber installierter Server)
aideinit -y

# Prüfen gegen Baseline
aide --check

# Update (nach bekannten Änderungen wie System-Updates)
aide --update && mv /var/lib/aide/aide.db.new /var/lib/aide/aide.db

# Täglicher Scan
echo "0 2 * * * root /usr/bin/aide --check | mail -s 'AIDE Check $HOSTNAME' [email protected]"     > /etc/cron.d/aide

Incident Response bei Fund

# 1. System offline nehmen (Netzwerk trennen)
# 2. Forensisches Image erstellen (NICHT live reparieren!)
dd if=/dev/sda | gzip > /mnt/forensik/sda-$(date +%Y%m%d).img.gz

# 3. System neu aufsetzen (Rootkits nie "heilen")
# 4. Logs analysieren um Einbruchsweg zu finden
# 5. Vulnerability patchen die ausgenutzt wurde

FAQ

Kann man einem Rootkit-Scan vertrauen wenn das System infiziert ist?
Nein. Ein aktives Rootkit kann Scanner-Tools manipulieren. Für forensische Sicherheit: System ausschalten, von externer Disk booten und dann scannen.

Fazit

rkhunter, chkrootkit und AIDE zusammen bieten mehrschichtige Rootkit- und Dateiintegritätsprüfung. Täglich per Cron laufen lassen.

Sicherheitsscanning für Linux-Server in Heidelberg, Mannheim und der Rhein-Neckar-Region. Anfragen.

Artikel teilen

War dieser Artikel hilfreich?

Dein Feedback hilft uns, bessere Inhalte zu erstellen.

Kommentar hinterlassen

Verwandte Artikel