Stack Clash: Schwachstelle führt zu Rechteausweitung auf Linux- und BSD-Systemen

Gepostet am Jun 21, 2017

Stack Overflow Calling

(Bild: Helge Øverås / heise online, CC BY 2.5 )

Die Stack Guard Page sollte eigentlich Stack-Overflow-Angriffe verhindern. Nun haben Sicherheitsforscher herausgefunden, wie man diesen Schutz von Unix-Systemen umgehen, oder besser: überspringen, kann.

Mehrere Linux-Distributionen und die Entwickler anderer Unix-artiger Betriebssysteme arbeiten daran, eine Sicherheitslücke zu stopfen, die lokale Rechteausweitung zur Folge haben kann. Forscher der Sicherheitsfirma Qualys hatten entdeckt, dass sich eine Sicherheitsvorkehrung der Speicherverwaltung des Linux-Kernels dazu missbrauchen lässt, Speicherinhalte zu überschreiben. Angreifer können diese als „Stack Clash“ bezeichnete Lücke missbrauchen, um sich höhere Rechte zu erschleichen und damit Schadcode auszuführen. Betroffen sind der Linux-Kernel, FreeBSD, OpenBSD, Solaris und andere Unix-ähnliche Betriebssysteme.

Das Problem mit der Stack Guard Page

Die sogenannte Stack Guard Page wurde im Linux-Kernel eigentlich deswegen eingeführt, um Rechteausweitungen durch Speichermanipulationen zu verhindern. Sie ist eine Antwort auf Bugs, die 2010 im Modul mm/memory.c im Versionszweig 2.6 des Kernels gefunden wurden (CVE-2010-2240). Die Stack Guard Page sollte verhindern, dass ähnliche Bugs in Zukunft ausgenutzt werden. Sie trennt verschiedene Regionen des Speichers, die zu Prozessen im User Space gehören und soll Stack-Overflow-Angriffe abfangen und kaltstellen.

Die von Qualys entdeckte Lücken im Linux-Kernel (CVE-2017-1000364) und in der C-Bibliothek glibc (CVE-2017-1000366) ermöglichen es, diese Implementation zu umgehen und sozusagen über die Barriere im Speicher zu springen. Ein User-Space-Prozess kann somit Speicher hinter einer Stack Guard Page manipulieren und sich so im zweifel höhere Rechte verschaffen.

An Updates wird gefeilt

Ein Patch, der das Problem behebt, wurde in den Entwicklungszweig des Linux-Kernels eingepflegt. Die Sicherheitsteams der großen Linux-Distributionen arbeiten bereits daran, die Änderungen in ihre Kernel einzupflegen, beziehungsweise spielen im Moment entsprechende Updates aus. Der Patch scheint aber unter gewissen Umständen noch Probleme zu bereiten, es ist also denkbar, dass weitere Updates nachkommen. (fab)

Vollständiger Artikel Vollständiger Bericht

Verwandte Beiträge