Ubuntu-Sicherheitslücke: Snap und Root!

Über einen Trick kann ein Angreifer Ubuntus Paketverwaltung Snap vorgaukeln, dass ein normaler Nutzer Administratorrechte habe - und damit wirklich einen Nutzer mit Root-Rechten erstellen.

Artikel veröffentlicht am ,
Normaler User oder Admin? Die Paketverwaltung Snap lässt sich überlisten.
Normaler User oder Admin? Die Paketverwaltung Snap lässt sich überlisten. (Bild: congerdesign/Pixabay)

Über eine Sicherheitslücke in Ubuntus selbstentwickeltem Paketsystem Snap können Angreifer Root-Rechte erlangen. Der Sicherheitsforscher Chris Moberly hat die Lücke entdeckt und nennt sie Dirty_Sock, in Anlehnung an eine ähnliche Schwachstelle im Linux Kernel mit dem Namen Dirty Cow. Im Unterschied zu den bisher von Ubuntu verwendeten Debian-Paketen werden die Snap-Apps (Snaps) komplett mit allen Abhängigkeiten gepackt. Moberly hatte die Sicherheitslücke im Januar entdeckt und an den Ubuntu-Sponsor Canonical gemeldet. Dieser hat ein Update von Snapd, dem Hintergrunddienst, über den die Snaps verwaltet werden, veröffentlicht. In Version 2.37.1 wurde die Sicherheitslücke geschlossen.

Stellenmarkt
  1. Onlineredakteur / Administrator (m/w/d) für den Bereich »Kommunikation«
    Bezirk Oberbayern Personalreferat, München
  2. Senior Projektleiter (d/m/w)
    NÜRNBERGER Versicherung, Nürnberg
Detailsuche

Anders als die bisher von Ubuntu verwendeten Debian-Pakete werden die Snap-Apps komplett mit allen Abhängigkeiten gepackt. Der Dienst Snapd läuft mit Administratorrechten und kann Befehle als Root ausführen, beispielsweise neue Nutzer erstellen. Damit diese ebenfalls nur von einem Benutzer mit Root-Rechten ausgeführt werden können, überprüft Snapd, ob es sich bei dem Nutzer um Root handelt. Allerdings konnte Moberly die Benutzer-ID seines Nutzers gegen die des Root-Nutzers austauschen und so Befehle mit Root-Rechten ausführen und beispielsweise einen neuen Nutzer anlegen. Dies bewerkstelligt er, indem er einen Socket, also eine Schnittstelle, über welche Daten mit einem Programm ausgetauscht werden können, mit dem Namen sock;uid=0; erstellt und diesen mit Snapd verbindet. Die übergebene UID 0 ist die Root-Benutzer-ID. Diese wird von Snapd übernommen; es lassen sich Befehle als Root ausführen.

Um die Lücke ausnutzen zu können, muss ein Angreifer bereits Zugriff auf ein Ubuntu-System haben. Beispielsweise kann ein Benutzer in einem Multi-User-System Root-Rechte erlangen und das Betriebssystem kontrollieren sowie die Daten der anderen Nutzer einsehen und verändern. Ein anderes Beispiel ist die Kombination mehrerer Sicherheitslücken, das sogenannte Chaining. Mit einer Sicherheitslücke gelangt ein Angreifer auf das System, mit einer weiteren erlangt er Root-Rechte.

Python-Scripts veröffentlicht

Moberly hat zwei Methoden entwickelt, um Code als Root auszuführen. Zu beiden Methoden hat er Proof-of-Concept-Python-Scripts auf Github veröffentlicht. In einer ersten Variante verwendet er die create-user-API von Snapd. Um diese auszunutzen, benötigt er jedoch eine Internetverbindung und das Programm adduser, um einen neuen Benutzer zu erstellen. Manche Linux-Distributionen verwenden jedoch das Programm useradd anstatt adduser - seine erste Methode funktioniert dann nicht mehr. Um noch mehr Fälle abzudecken, entwickelte er eine zweite Methode, bei der er ein Snap-Paket im "devmode" erstellt, bei welchem er ein Bash-Script ausführen kann. Dieses dient jedoch nur als Vehikel, um den Code zu transportieren, auch hier nutzt er die oben genannte Sicherheitslücke aus.

Bitte aktivieren Sie Javascript.
Oder nutzen Sie das Golem-pur-Angebot
und lesen Golem.de
  • ohne Werbung
  • mit ausgeschaltetem Javascript
  • mit RSS-Volltext-Feed


elcaron 18. Feb 2019

Dann review mit der gesparten Zeit halt den fremden Code. Nichttriviale Features (und...

bionade24 17. Feb 2019

Das Dockerfile und das Github-Repo werden nur bei Automated builds angezeigt, heißt ich...



Aktuell auf der Startseite von Golem.de
Strange New Worlds Folge 1 bis 3
Star Trek - The Latest Generation

Strange New Worlds kehrt zu episodenhaften Geschichten zurück und will damit Star-Trek-Fans alter Schule abholen. Das gelingt mit Bravour. Achtung, Spoiler!
Eine Rezension von Oliver Nickel

Strange New Worlds Folge 1 bis 3: Star Trek - The Latest Generation
Artikel
  1. LTE-Patent: Ford droht Verkaufs- und Produktionsverbot in Deutschland
    LTE-Patent
    Ford droht Verkaufs- und Produktionsverbot in Deutschland

    Ford fehlen Mobilfunk-Patentlizenzen, weshalb das Landgericht München eine drastische Entscheidung gefällt hat. Autos droht sogar die Vernichtung.

  2. Flowcamper: Elektro-Wohnmobil Frieda Volt auf VW-Basis vorgestellt
    Flowcamper
    Elektro-Wohnmobil Frieda Volt auf VW-Basis vorgestellt

    Das elektrische Wohnmobil Frieda Volt basiert auf einem umgebauten Volkswagen T5 oder T6 und ist mit einem 72-kWh-Akku ausgerüstet.

  3. Katastrophenschutz: Cell Broadcast funktioniert nur auf jedem fünften Handy
    Katastrophenschutz
    Cell Broadcast funktioniert nur auf jedem fünften Handy

    Der bundesweite Test zur Versendung von Warn-SMS soll verschoben werden. Zu wenig Geräte können die Technik bislang einsetzen.

Du willst dich mit Golem.de beruflich verändern oder weiterbilden?
Zum Stellenmarkt
Zur Akademie
Zum Coaching
  • Schnäppchen, Rabatte und Top-Angebote
    Die besten Deals des Tages
    Daily Deals • Borderlands 3 gratis • CW: Top-Rabatte auf PC-Komponenten • Inno3D RTX 3070 614€ • Crucial P5 Plus 2 TB 229,99€ • Preis-Tipp: Kingston NV1 2 TB 129,90€ • AVM FRITZ!Repeater 1200 AX 69€ • MindStar (u. a. Palit RTX 3050 339€) • MMOGA (u. a. Total War Warhammer 3 29,49€) [Werbung]
    •  /