[Sun/Solaris_x86] Local root exploit durch LDT-Manipulation
(2001-05-04 12:52:28+00) Druckversion
Quelle: http://sunsolve.Sun.COM/pub-cgi/retrieve.pl?type=0&doc=fpatches%2F108529&display=plain
Das Zusammenspiel des Privilegsystems der x86-Architektur und einer fehlerhaften Kernel-Schnittstelle ermöglicht es lokalen Benutzern, das System zu kompromittieren.
Betroffene Systeme
- Solaris 8 auf x86-Prozessoren
- Frühere Versionen von Solaris auf x86-Prozessoren
Typ der Verwundbarkeit
insufficient parameter validation
Beschreibung
Die x86-Architektur stellt ein komplexes System zur Verfügung, mit dem
sich Programmcode auf derselben Hardware mit unterschiedlichen Privilegien
ausführen läßt. Auf gängigen UNIX-Systemen wird dieses System lediglich
dazu ausgenutzt, den User-Prozessen den direkten Zugriff auf die Hardware
und auf den Speicher des Kernels und anderer Prozesse zu verwehren und den
Übergang von User-Programmen in den Kernel-Modus mittels wohldefinierter
syscalls zu ermöglichen (mit denen sich beispielsweise eine Datei
öffnen läßt, sofern die Rechte dazu vorliegen). Der Übergang zu mehr Privilegien
kann beispielsweise durch einen software interrupt oder ein call gate
(einen spezieller Unterprogrammaufruf, der gleichzeitig die Privilegien ändert) erfolgen.
Aus historischen Gründen bieten viele UNIX-Systeme (wie auch Solaris) nichtprivilegierten
User-Prozessen an, selbst Einträge in der local descriptor table (LDT)
anzulegen und so weitere sogenannte selectors zu erzeugen, die
auf bestimmte Teilbereiche des Adreßraums des Prozesses verweisen. Die LDT kann aber
auch Beschreibungen für call gates enthalten, auch wenn das Anlegen dieser Tore
nichtprivilegierten Prozessen in der Regel nicht gestattet ist.
Durch einen Fehler in Solaris/x86 kann ein lokaler Benutzer jedoch
beliebig call gates konstruieren.
Damit ist es möglich, eigenen Code mit Kernel-Privilegien (also auch
root
-Rechten) auszuführen.
Gefahrenpotential
hoch
(Hinweise zur
Einstufung
des Gefahrenpotentials.)
Gegenmaßnahmen
- Für Solaris 8: Einspielen des Patches 108529-07.
Weitere Information zu diesem Thema
- Das NetBSD-Advisory mit einer detaillierten Beschreibung dieser Schwachstelle, wie sie in NetBSD gefunden wurde.
Hinweis
Die in diesem Text enthaltene Information wurde für die Mitglieder der
Universität Stuttgart recherchiert und zusammengestellt. Die Universität
Stuttgart übernimmt keinerlei Haftung für die Inhalte. Dieser Artikel
darf ausschließlich in unveränderter Form und nur zusammen mit diesem
Hinweis sowie dem folgenden Copyrightverweis veröffentlicht werden. Eine
Veröffentlichung unter diesen Bedingungen an anderer Stelle ist
ausdrücklich gestattet.
Copyright © 2018 RUS-CERT, Universität Stuttgart, https://cert.uni-stuttgart.de/
Vorherige Meldung | Weitere Meldungen... | Nächste Meldung |
Bitte lesen Sie auch die Grundsätze, nach denen das RUS-CERT Tickermeldungen veröffentlicht. Der regelmäßige Bezug von Tickermeldungen über E-Mail und RSS-Feed ist ebenfalls möglich.