Schwerer Linux-Bug kann Absturz bewirken

16.06.2004
Ein schwerwiegender Bug im Linux-Kernel bewirkt, dass Anwender das System mit einem einfachen C-Programm lahm legen können. Für diesen Eingriff brauchen sie keine Root-Rechte; der Shell-Account genügt. Betroffen sind die Linux-Kernel 2.4.x und 2.6.x.

Ein schwerwiegender Bug im Linux-Kernel bewirkt, dass Anwender das System mit einem einfachen C-Programm lahm legen können. Für diesen Eingriff brauchen sie keine Root-Rechte; der Shell-Account genügt. Betroffen sind die Linux-Kernel 2.4.x und 2.6.x.

Die Kollegen vom Tecchannel schreiben dazu:

"Die Meldung des Bugs stammt von Stian Skjelstad. Neben dem aus 20 Zeilen C-Code bestehenden Exploit für den Bug gibt es aber auch schon diverse Patches vom Kernel-Team. Die Patches entschärfen den Code des Exploits soweit, dass das System nicht mehr abstürzt, dennoch verbraucht der Prozess nahezu die gesamte Systemleistung, wenn er nicht beendet wird, berichtet linuxreviews.org.

Der Exploit funktioniert bei jedem Linux-User, der einen Shell-Account besitzt. Root-Rechte sind nicht erforderlich, ein Intel-basiertes System jedoch Voraussetzung. Bei Multiprozessor-Systemen wird nur die CPU überlastet, auf der der Prozess läuft. Um den Rechner komplett zum Absturz zu bringen, müsste ein Prozess für jede CPU gestartet werden. Die Kernel-Patches gegen den Exploit sind bei linuxreviews.org gelistet.

Als Workaround wird empfohlen, nur vertrauenswürdigen Nut-zern Accounts zu gewähren. Der Code in dem kritischen Programm löst aufgrund einer fehlerhaften Assembler-Anweisung in einem Signal-Handler eine Floating-Point-Exception im Kernel aus, die nicht korrekt abgefangen wird. Der FPU-Fehler tritt in einer Endlosschleife immer wieder auf, die CPU-Last steigt auf 100 Prozent.

Einprozessor-Maschinen frieren komplett ein. Auf Mehrprozessor-Maschinen und Hyperthreading-Prozessoren ist lediglich die CPU lahm gelegt, auf der das Programm läuft, und die dem Programm zugeordnete Konsole blockiert. Ein Einloggen übers Netz ist weiterhin möglich. User-Mode-Linux-Kernel (UML) stürzen mit einer floating point exception ab. Das Problem und mögliche Lösungen werden bereits auf der Linux-Kernel-Mailingliste diskutiert.

Patches für einige Kernelversionen stehen schon bereit. Als erste Sicherheitsmaßnahme empfiehlt es sich, die Accounts aller nicht vertrauenswürdigen User zu deaktivieren. Bei Linux-Servern, die über das Internet erreichbar sind, sollte man Netz-Logins wenn möglich komplett abschalten." (wl)

Zur Startseite