Wie die Fachpresse derzeit berichtet, hat die Firma Sophos kürzlich ein Antivirus-Programm für Linux vorgestellt. Vielerorts sind seitdem Diskussionen im Gange, ob solche Programme für Linux notwendig sind oder nicht. In diesem Artikel möchte ich meine Meinung zum Thema zusammenfassen.

Benötigt Linux einen Virenscanner?
Benötigt Linux einen Virenscanner?
Grafik „Stethoscopiux“ von Ariel Hernandez, Lizenz Creative Commons BY-NC-SA
Update 25.07.2019
Dieser Beitrag ist über vier Jahre alt (Stand Juli 2019). Aufgrund aktueller Ereignisse habe ich einen aktuelleren Beitrag als Ergänzung verfasst, den ich als Anschlusslektüre empfehlen würde: Schadsoftware für den Linux-Desktop.

Linux-Virenscanner sind nicht neu

Zunächst einmal sind Linux-Virenscanner keine besondere Neuigkeit. Viele Hersteller bieten kostenlose Virenscanner für Linux an. Liest man aber die Beschreibung dieser Programme, dann stellt man rasch fest, dass hier kein konkreter Schutz vor Linux-Viren geboten wird. Es geht hauptsächlich darum, mit diesen Virenscannern Windows-Systeme und für Windows-Rechner bestimmte Dateien zu prüfen, z.B. E-Mail-Anhänge.

Fast jeder Antivirenhersteller bietet eine bootfähige CD oder DVD auf Linuxbasis zum Download an, auf der die jeweilige Antivirussoftware läuft. Der Vorteil solcher Bootmedien ist, dass sie Windows scannen und säubern können, während das Windows-System selbst nicht aktiv ist – und die darauf befindliche Schadsoftware deshalb ebenfalls nicht.

Für solche Zwecke sind Linux-Virenscanner durchaus sinnvoll. Aber es lohnt sich nicht, einen Virenscanner auf einem Desktop-Linux zu installieren, nur um gelegentlich mal einen E-Mail-Anhang zu scannen. Dafür sind Dienste wie virustotal.com, die hochgeladene Dateien mit über 50 Scannern analysieren, wesentlich nützlicher.

Linux-Virenscanner werden z.B. auch auf Firewall-Appliances eingesetzt, um Netzwerke gleich am Eingang vor Schadsoftware zu schützen. Solche Appliances scannen den http-Verkehr (also Webseiten) sowie den E-Mail-Verkehr und können so manche Schadsoftware schon frühzeitig vom Netzwerk fernhalten – sofern der Datenverkehr die Firewall nicht verschlüsselt passiert, also per https-Protokoll oder transportverschlüsselten E-Mail-Verbindungen, was aber zunehmend der Fall ist.

Schadsoftware für Linux

Ich verwende in diesem Text den Begriff „Linux“ als Oberbegriff für verschiedene Distributionen. Ausdrücklich nicht gemeint ist Android, das zwar auf Linux basiert, sich aber aufgrund seiner Struktur doch deutlich von dem üblichen Desktop-Linux unterscheidet. Über die Sicherheit von Android habe ich bereits früher geschrieben.

Für Linux selbst gibt es keine nennenswerte Schadsoftware. Das gilt insbesondere für Desktop-Linux, also Distributionen wie Ubuntu, Mint, Suse, Fedora usw., die auf Computern und Notebooks als Arbeitsstationen eingesetzt werden.

Ich selbst nutze seit 2003 fast ausschließlich Linux auf meinen Computern, sowohl beruflich als auch privat. Genau so lange verfolge ich sehr genau die Berichterstattung zu Schadsoftware für Linux.

Immer mal wieder tauchen Informationen über Linux-Schadsoftware auf. Es gab schon 2001 einen Wurm namens Kork, der alte Versionen des lpd-Daemons angriff, 2002 folgte der Wurm Slapper, der Linux-Server befiel, oder genauer gesagt, Apache-Server. Es ist also nicht so, dass es keinerlei Schadsoftware für Linux gibt oder gar geben könnte. Aber es gibt gute Gründe dafür, dass es keine Schadsoftware-Epidemie gibt, so wie es sie für Windows gibt.

Auf Desktop-Linux-Systemen laufen normalerweise keine Serverdienste. Angriffe auf solche Dienste sind also keine Gefahr für normale Anwender. Und normale Anwender verwenden Linux in aller Regel nicht mit Root-Privilegien, also vollem administrativem Zugriff – ganz im Gegensatz zu Windows, wo Benutzer mit eingeschränkten Privilegien äußerst selten sind.

Linux bietet Schadsoftware also wenig Angriffsfläche. Dazu kommt, dass eventuelle Lücken regelmäßig und schnell gestopft werden. Praktisch sämtliche bekannt gewordenen erfolgreichen Infektionen von Linux-Servern mit Schadsoftware nutzten Lücken in alter Software, die schon längst hätte aktualisiert werden können. Die eigentliche Sicherheitslücke ist in einem solchen Fall der Administrator.

Ein weiteres Problem für Schadsoftware-Autoren ist die Schwierigkeit der blinden Verteilung von Linux-Schadsoftware. In letzter Zeit sind einige Trojanerbaukästen aufgetaucht, die von sich behaupten, auch Linux-Systeme angreifen zu können. Das gilt zum Beispiel für den Bankingtrojaner Hand of Thief, der allerdings gar keine Sicherheitslücke des Systems ausnutzt, sondern vom Anwender mehr oder weniger bewusst installiert werden muss – und auch dann nicht zuverlässig funktioniert.

Während man E-Mails mit einer Schadsoftware im Anhang an Millionen von Windows-Benutzern senden kann und sich recht sicher sein kann, einen gewissen Prozentsatz zu erwischen, ist diese Wahrscheinlichkeit bei Linux als Ziel gering. Die meisten wichtigen Sicherheitslücken in Windows gelten für alle oder wenigstens die meisten Versionen von Windows 95 bis 8.1 (und sicher auch 10), da sich unter der Haube offensichtlich nur sehr wenig von Version zu Version ändert. Bei Linux läuft die Entwicklung wesentlich rasanter ab, darüber hinaus ist der Kernel konfigurierbar. Es gibt also sehr viel weniger Monokultur unter Linux, die Systeme sind oft sehr unterschiedlich. Die Zielgruppe ist einfach zu klein für eine erfolgreiche automatisierte Epidemie.

Man braucht sich nur kommerzielle und nicht quelloffene Software für Linux anzusehen, um zu verstehen, wie verhältnismäßig schwierig es ist, ein Programm für Linux in binärer, also kompilierter, direkt lauffähiger Form anzubieten. Kaum ein Anbieter kommerzieller geschlossener Programme bietet sein Programm für mehr als eine oder zwei Distributionen mit Laufgarantie an – wenn überhaupt. Da weder die Ersteller der Distribution noch die Anwender den Code selbst kompilieren können, ist es durchaus möglich, dass ein solches Programm auf einer anderen Distribution nicht funktioniert. Gleiches gilt für etwaige Schadsoftware. Und da Schadsoftware möglichst klein sein sollte, kann man etwaige Abhängigkeiten auch nicht immer einkompilieren.

Zu guter Letzt ist noch ein Faktor ganz wichtig: Ein Anwender müsste unter Linux eine Schadsoftware, die ihm gesendet wird, erst einmal ausführbar machen. Übers Netz transportierte Skripte und Programme sind nämlich grundsätzlich erst einmal nicht ausführbar, das Ausführungsbit kann nicht gesetzt sein. Ein Anwender, der ein unbekanntes, unverlangt zugesendetes Programm selbst ausführbar macht, ist sein Unglück selber Schuld.

Wie Virenscanner arbeiten

Man sollte sich noch vor Augen halten, wie Virenscanner arbeiten. Sie haben drei grundlegende Techniken, um Schadsoftware zu erkennen: Signaturerkennung, Heuristik und Verhaltensanalyse.

Die Signaturerkennung benutzt eine Art Fingerabdruck der Schadsoftware. Sie führt durch die Vielzahl sich ständig verändernder Windows-Schadsoftware dazu, dass Virenscanner riesige Signatur-Datenbanken mitbringen, die auch noch ständig mit neuen Signaturen erweitert werden. Diese Datenbanken und der Zugriff darauf sind extreme Ressourcenfresser. Nicht selten sind Windows-Systeme mit funktionierenden Virenscannern daher langsamer als infizierte Systeme ohne Scanner – der Virenscanner ist heutzutage eine spürbarere Belastung als eine Schadsoftware, wenn man nur die Systemfunktionalität betrachtet.

Wer also einen Virenscanner für Linux installiert, installiert diese Belastung gleich mit: Millionen von Signaturen für Windowsviren und bestenfalls nur eine Handvoll von Signaturen für Linux-Schadsoftware, die es gar nicht zur Verbreitung geschafft hat.

Die Heuristik untersucht Dateien auf typische Elemente und Funktionen von Schadsoftware. Dabei gibt es keine Hinweise darauf, dass auch linuxspezifische Funktionen berücksichtigt werden. Die Verhaltenserkennung wiederum überwacht das Verhalten von Programmen während und nach der Installation. Auch hier ist nicht sicher, dass Vorgänge unter Linux überhaupt überwacht werden. Es ist meines Erachtens nicht einmal möglich, „illegale Verhaltensweisen“ zu definieren, vor allem nicht über Distributionsgrenzen hinweg.

Solche Virenscanner, wenn sie tatsächlich Echtzeitscans ausführen, also ständig alles überwachen, was geschieht, rauben also im besten Fall Systemleistung für den extrem unwahrscheinlichen Fall, dass tatsächlich lauffähiger Linux-Schadcode das System erreicht. Ob er dieses Opfer bringen will, muss jeder Anwender für sich selbst entscheiden.

Eine tatsächliche „Infektion“

Der Vollständigkeit halber sollte die einzige tatsächliche Schadsoftware-Infektion eines Anwender-Linuxsystems nicht unerwähnt bleiben, die ich in meinen 13 Jahren mit Linux aus erster Hand gesehen habe. Einem mir persönlich bekannten Anwender ist es 2014 tatsächlich auf nicht näher bestimmbare Weise gelungen, seinen Firefox-Browser in Ubuntu mit einem sogenannten Potentiell Unerwünschten Programm zu infizieren, das Webseiten mit Werbung anreicherte. Aber im Gegensatz dazu, wie solche Programme sich in Windows-Systeme eingraben können, war die Entfernung unter Linux geradezu trivial: Add-On deinstallieren, fertig.

Dieses Beispiel zeigt, dass es durchaus Schadsoftware geben kann, die Anwenderprogramme angreift, ohne das System selbst berühren zu müssen. Der Browser ist dafür ein guter Kandidat, ebenso z.B. Libre Office, das Dokumente mit Schadsoftware-Makros öffnen könnte. Trotzdem reicht meines Erachtens hier umsichtiges Verhalten und ein Mindestmaß an Verstand und Lernfähigkeit seitens der Anwender aus, um echten Schaden zu verhindern. Antivirusscanner für Linux sind nach wie vor unnötig.

Bitte geben Sie mir ein kleines Feedback!

War dieser Beitrag für Sie nützlich?

[thumbs-rating-buttons]

3 Kommentare

    1. Viele Distributionen bringen bereits eine Firewall mit, auch wenn diese z.B. bei Ubuntu nicht standardmäßig aktiviert ist. Aber wirklich notwendig ist sie meines Erachtens für reine Desktops nicht. Der Zweck einer Firewall besteht darin, den Zugriff auf offene Ports und Dienste von außen zu verhindern. „Außen“ ist in diesem Fall das Internet. Aber Angriffe aus dem Internet treffen gar nicht direkt auf den Rechner, sondern auf den DSL-Router. Auf diesem sollten bereits alle unnötigen Ports geschlossen sein. Wenn das der Fall ist, ist die Aufgabe der Firewall bereits dort weitestgehend erledigt. Natürlich könnte der Router selbst eine Sicherheitslücke enthalten, die diese erste Schutzfunktion unterläuft.

      Auf dem Linux-Desktop selbst gibt es üblicherweise keine Dienste, die auf Signale aus dem Internet lauschen, sofern der Benutzer sie nicht selbst installiert hat: z.B. einen Webserver, Torrent-Dienst, Fernwartung per VNC oder ähnliches. Ein Angriff aus dem Internet müsste also erst den Router passieren und dann noch auf einen offenen Dienst auf dem Linux-Rechner treffen, der dann wiederum für den Angriff empfänglich sein müsste.

      Wenn natürlich auf Ihrem System solche Dienste installiert wurden, dann beginnt eine Firewall Sinn zu haben, weil sie den Zugriff auf diese Dienste notwendigerweise auch im Router erlaubt haben, dieser also den Zugriff nicht mehr blockiert. Eine Firewall ist allerdings nur so gut wie die für sie formulierten Regeln, und es kann immer Wege um die bekannten Standardregeln herum geben. Normale Anwender dürften nicht in der Lage sein, weitergehende Regeln zu formulieren.

      Unter Windows haben die auf dem Rechner selbst installierten sogenannten „Personal Firewalls“ (die im Übrigen auch nicht notwendig sind, da die Windows-eigene Firewall bereits ausreicht) noch die Aufgabe, Schadsoftware oder Raubkopien daran zu hindern, nach Hause zu telefonieren, unterbinden also Verkehr vom Rechner ins Internet. Für diese Aufgabe gibt es auf Linux-Desktops mangels entsprechender Schadsoftware keinen Grund.

      Ein mögliches Ziel für Angriffe von außen ist der Browser. Dieser sollte, wenn möglich, durch Plugins wie NoScript zusätzlich geschützt werden. Auch hier gilt, dass dieses Plugin sinnvoll konfiguriert werden muss und der Umgang damit geübt werden muss. Insbesondere bei unbedarften Anwendern, die die Funktionsweise nicht verstehen, führt NoScript zu Ärgernis, wenn bekannte Webseiten zunächst nicht mehr so funktionieren wie gewohnt.

      Unterm Strich würde ich sagen: eine Firewall kann auch auf dem Linux-Desktop für ein wenig mehr Sicherheit installiert werden, aber absolute Notwendigkeit dafür sehe ich bisher nicht.

  1. Pingback: Anonymous

Schreiben Sie einen Kommentar

Ihre E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert