AA_BXP66759h.jpg

Eingedämmt

Sicherheit unter Linux

01.03.2006
Linux ist sicher – aber nur, wenn User und Programmierer mithelfen. Sie schützen ihre eigenen Rechner und verhindern, dass sich Schadprogramme ausbreiten.

Wer unter Windows mit Internet Explorer und Outlook Express online geht, auf Antiviren-Software und Personal Firewall aber verzichtet, gilt gemeinhin als fahrlässig. Was unter Windows stimmt, ist für Linux noch lange nicht richtig: Statt sich mit Virenscanner & Co. einzudecken, setzen die Freunde des Pinguins auf andere Schutztechniken. Allen voran stehen Sicherheits-Updates, sichere Konfiguration und vorsichtiger Umgang mit Mail und Web. Wer mehr will, aktiviert die Firewall und sperrt seine Programme in möglichst enge Käfige (etwa AppArmor).

Fremdkörper

Virenscanner sind unter Linux zwar anzutreffen – aber nicht auf dem Desktop, sondern im E-Mail- oder Datei-Server. Dort schützen sie Windows-Clients und nicht die Linux-Maschine. Theoretisch könnten Viren zwar auch das freie System bedrohen, praktisch passiert das so gut wie nie. Die Gründe dafür sind vor allem in der Technik zu suchen.

Viren verändern vorhandene Programme und sorgen dafür, dass jeder Start auch den Viren-Code ausführt. Das funktioniert auch unter Linux. Um sich weiter zu verbreiten, infiziert ein Virus andere Programme, die er im Dateisystem findet. Ältere Windows-Versionen lassen ihm dabei freie Hand, Linux bremst ihn. So lange sich das Programm mit User-Rechten begnügt und nicht als Root läuft, darf es andere Programmdateien nicht überschreiben. Dem Virus fehlt damit ein Ausbreitungsweg.

Dazu kommt, dass sich Linux-Anwender kaum gegenseitig fertig kompilierte Programme zuschicken. Daran wird sich so schnell nichts ändern: Bei frei verfügbarer Software sind Warez (Raubkopien) uninteressant. Originalsoftware lädt man leichter und schneller von der Distributions-DVD, einer Heft-CD oder der Originalseite der Entwickler.

Fachbegriffe

Die Sicherheitsgemeinde verwendet für viele Arten von Lücken, Angriffstechniken und Schadprogrammen eigene Namen.

Authentication Error: Das Programm prüft die Identität des Benutzers nicht ausreichend.

Buffer Overflow oder Boundary Error: Bei diesem Programmierfehler kopiert ein Programm Daten in einen zu kleinen Speicherbereich und überschreibt die dort vorhandenen Werte. Wenn die Daten vom Angreifer stammen, dann kontrolliert er Speicherstellen, auf die er normalerweise keinen Einfluss hätte. Das kann er beispielsweise nutzen, um eigenen Code einzuschleusen und so die Kontrolle über den Prozess zu übernehmen.

Cross Site Scripting: Javascript-Kommandos dürfen nur auf die Web-Anwendung zugreifen, für die sie gedacht sind. Durch Fehler in Web-Applikationen und in den Browsern gelingt es einem Angreifer, seinen Code im Kontext einer fremden Seite laufen zu lassen und so beispielsweise an Authentifizierungsdaten (Passwörter, Cookies) zu gelangen.

Denial of Service (DoS): Der Saboteur legt einen Dienst lahm. Er erhält zwar keine Kontrolle über das Programm, aber der Absturz fällt mindestens lästig. Eventuell kostet er auch Geld, was DoS-Attacken für Erpresser interessant macht.

Dot-Dot-Bug: Häufig anzutreffen in Web-Anwendungen. Durch Folgen von ../../ bricht der Angreifer aus dem gewollten Dokumentenverzeichnis aus und greift auf Dateien zu, die er nicht erreichen dürfte.

Eingabekontrollfehler (Input Validation Error): Oberbegriff über alle Programmierfehler, bei denen der Entwickler Benutzereingaben zu vertrauensselig behandelt.

Entfernte Lücke (Remote Vulnerability): Diese Schwachstelle ist über das Netzwerk ausnutzbar, ohne vorher einen Account auf dem angegriffenen Rechner zu besitzen.

Format-String-Fehler: Hier benutzt ein Programmierer eine Funktion falsch. Im Format-String haben Steuerzeichen (etwa %) eine Sonderbedeutung. Stammt der Format-String vom Angreifer, verhilft ihm das zu ähnlichen Angriffsmöglichkeiten wie beim Buffer Overflow.

Konfigurationsfehler: Manchmal ist nicht das Programm selbst fehlerhaft, sondern nur seine Einstellungen. Dazu gehören auch falsch gesetzte Dateizugriffsrechte.

Lokale Lücke: Um diese Sicherheitslücke auszunutzen, muss der Angreifer bereits einen Login auf der Maschine haben.

Makrovirus: Virus, der Dokumente befällt. Viele Dateitypen können Makros enthalten, die ein Editor oder Dateibetrachter als Code ausführt.

PHP-Include-Fehler: Der Angreifer schafft es, eigene PHP-Anweisungen in eine fremde Web-Applikation einzuschleusen. Diese Kommandos laufen dann mit den Rechten der Web-Anwendung.

Race Condition: Lücken, die nur für einen sehr kurzen Zeitraum ausnutzbar sind. Angreifer können das Wettrennen gegen ihre Opfer aber gewinnen. Beispielsweise bei Symlink-Schwachstellen anzutreffen: Viele Programm prüfen zwar, ob der Namen noch frei ist, zwischen Prüfen und Schreiben verstreicht aber eine (beliebig kurze) Zeitspanne.

Root Access: Der Angreifer erlangt Root-Rechte.

SQL Code Injection: Eine Web-Anwendung nutzt eine Datenbank. In die SQL-Abfragen bettet sie Daten ein, die vom Angreifer stammen. Der schafft es durch geschickten Einsatz von Sonderzeichen, den SQL-Befehl mit eigenen Kommandos zu erweitern und erhält damit Kontrolle über den Inhalt der Datenbank.

Symlink-Schwachstelle: Legt ein Programm Daten in einem Verzeichnis ab, in dem auch potenzielle Angreifer Schreibrecht haben (etwa /tmp), dann platzieren Bösewichte vorher einen Symlink mit gleichem Namen. Unvorsichtige Programme überschreiben dann die verlinkte Datei.

Trojanisches Pferd: In einem harmlos wirkenden Programm verborgene Schadfunktion.

Wurm: Schadprogramm, das selbständig läuft und sich aus eigenem Antrieb verbreitet. Es nutzt dazu Schwachstellen in anderen Programmen.

Virus: Dieses Schadprogramm befällt einen Wirt und kommt künftig als Teil dieses Programms zur Ausführung.

Kosten und Nutzen

In der Kosten-Nutzen-Rechnung der Virenschreiber schneiden Linux-Viren somit schwach ab. Verschiedene Distributionen auf unterschiedlichen Architekturen, kaum Verbreitungsmöglichkeiten und unbestreitbar mehr Windows-Maschinen, die bereitwillig auf Viren warten – all das sorgt dafür, dass andere Angriffe auf Linux wesentlich mehr Erfolg versprechen.

Wer trotzdem auf seinen Virenwächter nicht verzichten möchte, weil der ein komfortables Gefühl der Sicherheit vermittelt und vermeintlich nicht schaden kann, der irrt: Jedes Stück Software, das auf einem Rechner läuft, stellt eine potenzielle Gefahrenquelle dar. Virenscanner bilden keine Ausnahme, ganz im Gegenteil. Sie analysieren quasi jedes Dateiformat, egal wie vertrackt es sich gestaltet, packen Archive aus und durchsuchen den Inhalt mit komplexen Suchoperationen. Das Ganze muss zudem flott ablaufen. Da wundert es nicht, dass auch Scanner Sicherheitslücken aufweisen und selbst zum Angriffsziel mutieren.

LinuxCommunity kaufen

Einzelne Ausgabe
 
Abonnements
 

Ähnliche Artikel

Kommentare

Infos zur Publikation

LU 01/2015: E-Books im Griff

Digitale Ausgabe: Preis € 4,95
(inkl. 19% MwSt.)

Mit der Zeitschrift LinuxUser sind Sie als Power-User, Shell-Guru oder Administrator im kleinen Unternehmen monatlich auf dem aktuelle Stand in Sachen Linux und Open Source.

Sie sind sich nicht sicher, ob die Themen Ihnen liegen? Im Probeabo erhalten Sie drei Ausgaben zum reduzierten Preis. Einzelhefte, Abonnements sowie digitale Ausgaben erwerben Sie ganz einfach in unserem Online-Shop.

NEU: DIGITALE AUSGABEN FÜR TABLET & SMARTPHONE

HINWEIS ZU PAYPAL: Die Zahlung ist auch ohne eigenes Paypal-Konto ganz einfach per Kreditkarte oder Lastschrift möglich!       

Tipp der Woche

Ubuntu 14.10 und VirtualBox
Ubuntu 14.10 und VirtualBox
Tim Schürmann, 08.11.2014 18:45, 0 Kommentare

Wer Ubuntu 14.10 in einer virtuellen Maschine unter VirtualBox startet, der landet unter Umständen in einem Fenster mit Grafikmüll. Zu einem korrekt ...

Aktuelle Fragen

PCLinuxOS Version 2014.08 "FullMonty" Umstellung auf deutsch
Karl-Heinz Welz, 19.12.2014 09:55, 3 Antworten
Hallo, liebe Community, ich bin 63 Jahre alt und möchte jetzt nach Jahrzehnten Windows zu Linux...
ICEauthority
Thomas Mann, 17.12.2014 14:49, 2 Antworten
Fehlermeldung beim Start von Linux Mint: Could not update ICEauthority file / home/user/.ICEauth...
Linux einrichten
Sigrid Bölke, 10.12.2014 10:46, 5 Antworten
Hallo, liebe Community, bin hier ganz neu,also entschuldigt,wenn ich hier falsch bin. Mein Prob...
Externe USB-Festplatte mit Ext4 formatiert, USB-Stick wird nicht mehr eingebunden
Wimpy *, 02.12.2014 16:31, 0 Antworten
Hallo, ich habe die externe USB-FP, die nur für Daten-Backup benutzt wird, mit dem YaST-Partition...
Steuern mit Linux
Siegfried Markner, 01.12.2014 11:56, 2 Antworten
Welches Linux eignet sich am besten für Steuerungen.