Firefox hat ASLR nach Problemen wieder deaktiviert
Mozilla hatte vor kurzem versucht, Firefox für Linux mit den entsprechenden Optionen zu kompilieren. Dabei trat ein unerwartetes Problem auf: Der GNOME-Dateimanager Nautilus erkannte die entsprechend kompilierten ausführbaren Dateien nicht als solche und Firefox ließ sich über den Dateimanager nicht starten. Firefox schaltete daraufhin die entsprechende Funktion wieder ab.
Der Grund für die Nautilus-Probleme, die bei einem Test von Golem.de unter dem KDE-Dateimanager Dolphin in genau derselben Form auftraten: Der Dateimanager greift zur Erkennung von ausführbaren Dateien auf die Bibliothek libmagic zurück, die Teil des Tools file ist. Die libmagic-Bilbiothek wiederum kann positionsunabhängige Linux-Binaries nicht von Bibliotheken unterscheiden und liefert den MIME-Type für Bibliotheken zurück. Sowohl Binaries als auch Bibliotheken verwenden unter Linux das Elf-Dateiformat.
Chrome wird standardmäßig mit Adressrandomisierung ausgeliefert, ebenso der auf Firefox basierende Tor-Browser. Anders als Mozilla liefern diese beiden Browser ein Shellskript zum Starten mit, sie sind somit von dem Problem in den Dateimanagern nicht betroffen.
In Linux-Distributionen kein Standard
Bei den Linux-Distributionen ist die Situation in Sachen ASLR sehr gemischt. Fedora und Debian aktivieren das Feature nur für einzelne Tools, die als besonders sicherheitskritisch gelten. Gleiches gilt auch für andere auf Debian basierende Distributionen wie Ubuntu. Selbst Tails, ein auf Datenschutzeinstellungen und Sicherheit getrimmtes Linux-System, nutzt ASLR nicht standardmäßig.
Es gibt auch immer wieder generelle Probleme mit der ASLR-Implementierung von Linux. Mitglieder von Google's Projekt Zero entdeckten beim Versuch, eine Glibc-Sicherheitslücke auszunutzen, dass man zumindest unter 32-Bit-Systemen die Speicherrandomisierung von Suid-Binaries mit Hilfe des Befehls ulimit weitgehend deaktivieren kann.
offset2lib-Schwäche entdeckt
Zuletzt hatten die Sicherheitsforscher Hector Marco-Gisbert und Ismael Ripoll auf der Deepsec-Konferenz in Wien eine ausführliche Analyse des ASLR-Konzepts von Linux vorgestellt und ein weiteres Problem entdeckt, das sie offset2lib getauft haben: Linux legt zwar den Programmcode an einer zufälligen Stelle im Speicher ab, aber der Hauptprogrammcode und der Code von nachgeladenen Bibliotheken wird immer im selben Abstand abgelegt. Das bedeutet, dass ein Angreifer, der im Hauptprogramm aufgrund eines Fehlers möglicherweise Kenntnis von einer Speicheradresse erlangt, damit eine Sicherheitslücke in einer Bibliothek ausnutzen kann.
Android ist von der offset2lib-Schwäche ebenfalls betroffen. Anders als unter gängigen Linux-Distributionen kommt unter Android in aller Regel auch Adressrandomisierung zum Einsatz. Nicht betroffen sind Linux-Systeme, die Pax benutzen. Die Forscher haben einen Patch vorgelegt, der zur Zeit auf der Kernel-Mailingliste diskutiert wird.
Solange die meisten Linux-Distributionen aber keine Dateien mit positionsunabhängigem Code ausliefern, hilft das alles nicht viel. Die Distributionen sollten hier dringend handeln und die Speicherrandomisierung mittels ASLR auch unter Linux zum Standard machen.
Oder nutzen Sie das Golem-pur-Angebot
und lesen Golem.de
- ohne Werbung
- mit ausgeschaltetem Javascript
- mit RSS-Volltext-Feed
ASLR: Speicher-Randomisierung unter Linux mangelhaft |
- 1
- 2
Ich opfere nicht eine von 100 Minuten Programmlaufzeit dafür, nein danke. Denn Zeit ist...
Es ist leider nicht so einfach. Manchmal haben auch Libraries eine Main-Funktion...