Auf Viren und Rootkits prüfen

Aus Gargi.org
Zur Navigation springen Zur Suche springen

Viren unter Linux? Gibt es das? Sicherlich gibt es nur wenige Linuxviren. Hier sprechen wir eher von Rootkits, die im Hintergrund ihr unerwünschtes Dasein fristen können und einen Server kompromittieren. Viren selbst sind nur dahingegen interessant, da diese eventuell auf einen Webserver in ein Uploadverzeichnis landen können und Usern Schaden zufügen, die diese Datei wieder auf ihren Windows Rechner herunterladen. Dies kann in Form von Bildern, gepackten Dateien etc. passieren.

Wir wollen hier nun zwei Möglichkeiten besprechen, regelmäßig ein Auge auf diese mögliche Bedrohung zu werfen. Das Tutorial wir hier zwei Schädlingsbekämpfer betrachten:

  1. Der rkhunter (Rootkit Hunter)
  2. ClamAV Der Linux Virenscanner


rkhunter

Den rkhunter installieren wir mit einem

apt-get install rkhunter

Editiert zuerst die /etc/rkhunter.conf:

nano /etc/rkhunter.conf

Den Parameter

ALLOW_SSH_ROOT_USER=no

setzt auf yes:

ALLOW_SSH_ROOT_USER=yes

Eure E-MAil Adresse könnt Ihr beim Parameter MAIL-ON-WARNING= festlegen. Ihr bekommt dann eine Mail, sollte der rkhunter etwas Verdächtiges gefunden haben. Speichert die Änderung ab.

Nach der Installation lassen wir gleich mal ein

rkhunter -C

los, um die Config zu prüfen. Danach kann die Datenbank mit den installierten Dateien abgeglichen werden:

rkhunter --propupd

Die Datenbank selbst wird wie folgt aktualisiert:

rkhunter --update
Checking rkhunter data files...
  Checking file mirrors.dat                                  [ No update ]
  Checking file programs_bad.dat                             [ No update ]
  Checking file backdoorports.dat                            [ No update ]
  Checking file suspscan.dat                                 [ No update ]
  Checking file i18n/cn                                      [ No update ]
  Checking file i18n/de                                      [ No update ]
  Checking file i18n/en                                      [ No update ]
  Checking file i18n/tr                                      [ No update ]
  Checking file i18n/tr.utf8                                 [ No update ]
  Checking file i18n/zh                                      [ No update ]
  Checking file i18n/zh.utf8                                 [ No update ]

Als nächstes lassen wir einen Scan loslaufen:

rkhunter -c --sk

Solltet Ihr hier Warnungen erhalten, dann seht Euch die /var/log/rkhunter.log etwas näher an. Diese verrät dann genauer, wo der rkhunter seine Probleme hat. Der rkhunter reagiert sehr empfindlich, von daher sollte man nicht gleich mit dem Schlimmsten rechnen, allerdings sollte man hier genau hinsehen. Im Internet findet man oft Hilfe zu manchen Meldungen, insbesondere ob sich die Meldung um einen sogenannten false-positive handelt.

Legt Euch nun ein Skript an (Exim4 muss installiert sein):

nano /usr/local/bin/rkcheck

Dieses befüllt wie folgt:

#!/bin/sh
# Rootkit Checkskript by Gargi 2015
#
#
# Set your e-mail
mail_adr=deine@mail.adresse
#
rm /var/log/viri.log
rm /var/log/rkhunter.log
echo "ROOTKITCHECK" >> /var/log/viri.log
date >> /var/log/viri.log
rkhunter --update
rkhunter -c --cronjob
echo "" >> /var/log/viri.log
echo "Rootkit Scan Results" >> /var/log/viri.log
cat /var/log/rkhunter.log | grep Possible >> /var/log/viri.log
cat /var/log/rkhunter.log | grep Suspect >> /var/log/viri.log
echo "" >> /var/log/viri.log

sys_name=$(hostname)
mail -s "Rootkit Check on $sys_name" $mail_adr < /var/log/viri.log

Tragt oben Eure E-Mail Adresse ein. Danach macht das Script ausführbar:

chmod +x /usr/local/bin/rkcheck

Damit dieses dann regelmäßig auf Suche geht, baut das in die crontab ein:

crontab -e

Fügt diese Zeilen ein:

# Check for rootkits every 2 hours
0  */2  * * *   /usr/local/bin/rkcheck > /dev/null

Speichert die Änderung ab. Alle zwei Stunden erfolgt dann die Prüfung und Ihr erhaltet eine E-Mail mit den Ergebnissen. Bei einem Fund bekommt Ihr dann noch eine zweite Mail mit einer deutlichen Warnung.

ClamAV

Mit dem ClamAV wollen wir im Grunde unser Webverzeichnis auf Viren prüfen. Uns interessiert dabei besonders, ob irgendwelche Schädlinge (wie auch immer) hochgeladen wurden. Ein Virenscanner ist dennoch keine 100%ige Garantie oder gar ein absoluter Schutz, aber er kann helfen, zumindest bekannte Schädlinge aufzustöbern.
Zunächst installieren wir die benötigten Pakete:

apt-get install clamav clamav-base clamav-daemon clamav-freshclam unzip

Der freshclam sorgt dafür, dass regelmäßig eine neue Virensignatur heruntergeladen wird. Prüft nach, ob Ihr die aktuelle Signatur habt:

freshclam