Linux: Bug in Sudo ermöglicht Rechteausweitung

[English]Sicherheitsforscher von Qualsys haben eine Schwachstelle (CVE-2021-3156) im BSD/Linux-Sudo-Befehl entdeckt. Auf Grund eines Heap-Überlaufs konnten Angreifer mit normalen Rechten eine Rechteausweitung auf root erreichen. Für die Schwachstelle gibt es von den gängigen Linux-Distributionen inzwischen aber Updates.


Anzeige

Ich bin vor einigen Stunden über den nachfolgenden Tweet von Qualsys auf die Schwachstelle aufmerksam geworden, die in diesem Blog-Beitrag näher beschrieben wird.

Linux Sudo-Schwachstelle CVE-2021-3156

Der Befehl sudo steht für SuperUser do und wird unter Unix-artigen Betriebssystemen wie bzw. Linux verwendet, um Prozesse mit den Rechten eines anderen Benutzers zu starten. Die Prozesse werden mit den Rechten des jeweiligen Users ausgeführt (kann auch SuperUser sein). Dazu muss der Benutzer aber das Passwort des jeweiligen Kontos kennen, unter dem der Prozess laufen soll. Das Ganze wird von einigen Admins aus Sicherheitsgründen aus Linux entfernt – siehe auch folgende Kommentare.

Das Qualys-Forschungsteam hat eine Heap-Overflow-Schwachstelle (CVE-2021-3156, Baron Samedit) in sudo entdeckt, einem nahezu allgegenwärtigen Dienstprogramm, das auf den wichtigsten Unix-ähnlichen Betriebssystemen (also auch Linux) verfügbar ist. Jeder unprivilegierte Benutzer kann auf einem anfälligen Host mit einer Standard-Sudo-Konfiguration Root-Rechte erlangen, indem er diese Schwachstelle ausnutzt.


Anzeige

Die Sicherheitsforscher von Qualys waren in der Lage, die Schwachstelle unabhängig zu verifizieren und mehrere Varianten des Exploits zu entwickeln und volle Root-Rechte auf Ubuntu 20.04 (Sudo 1.8.31), Debian 10 (Sudo 1.8.27) und Fedora 33 (Sudo 1.9.2) zu erlangen. Es ist wahrscheinlich, dass auch andere Betriebssysteme und Distributionen ausnutzbar sind.

Die Sicherheitslücke selbst existiert seit fast 10 Jahren unentdeckt und wurde im Juli 2011 (Commit 8255ed69) eingeführt. Daher betrifft die Schwachstelle alle Legacy-Versionen von 1.8.2 bis 1.8.31p2 und alle stabilen Versionen von 1.9.0 bis 1.9.5p1 in ihrer Standardkonfiguration. Qualsys hat die Entwickler von Sudo benachrichtigt. Die Schwachstelle wurde in sudo 1.9.5p2 behoben, es sollten Updates für die gängigen Linux-Distributionen verfügbar sein.

Um zu testen, ob Ihr System verwundbar ist, müssen Sie sich als Nicht-Root-Benutzer anmelden und den Befehl "sudoedit -s /" ausführen. Anfällige Systeme geben einen Fehler aus, der mit "sudoedit:" beginnt, während gepatchte Systeme einen Fehler anzeigen, der mit "usage:" beginnt. Weitere Details und ein Video lassen sich in diesem Artikel abrufen.


Anzeige

Dieser Beitrag wurde unter Linux, Sicherheit abgelegt und mit , verschlagwortet. Setze ein Lesezeichen auf den Permalink.

6 Antworten zu Linux: Bug in Sudo ermöglicht Rechteausweitung

  1. 1ST1 sagt:

    Stimmt nicht, er muss nicht das Root-Passwort kennen, das war früher mal so. Jetzt muss er sein Eigenes kennen, welches ihm dann root-Rechte gibt. Der eigentliche root-User ist in allen modernen Linux-Distributionen deaktiviert, Security by obscurity, weil ein Angreifer die Usernamen auf dem Zielsystem erst erraten muss. Aber wie schreiben die im Heise-Forum so gerne? "Mit Linux wäre das nicht passiert!" Und jetzt war diese Lücke trotz Opensource fast 10 Jahre offen, ein simpler C-Bufferoverflow. Übrigens sind auch die sudo-Versionen in WSL betroffen, kann man aber mit sudo apt-get update/upgrade aktualisieren.

    • Dat Bundesferkel sagt:

      Naja, bei heise sind leider viele Trolle unterwegs. Wo teils die Windows-Fanboys dominieren, dominieren andernorts die Linux-Fanboys. Das OS kannst Du beliebig ersetzen.

      Wer glaubt, daß ein OS unangreifbar ist (egal welches), träumt. Was von Menschen geschaffen wurde, kann auch von Menschen unterwandert werden.
      Und Open Source verhindert keine Fehler – aber es erhöht die Chancen beträchtlich, daß Fehler entdeckt und beseitigt werden.

      Man erinnere sich an Heartbleed @ OpenSSL, welches durch einen Fehler eines Telekom-Mitarbeiters entstand. Es dauerte auch 'ne ganze Ecke, bis das entdeckt worden ist. Aber es wurde entdeckt. Bei Closed Source gestaltet sich das ganze etwas schwieriger.

      tl;dr
      *Das* sichere OS gibt es nicht. Und mich kotzen die ganzen Fanboys an, egal welcher Base sie sich zugehörig fühlen. Man kann die Systeme übrigens auch prima mischen… :D

  2. Tom sagt:

    Danke für den Hinweis!
    sudo wurde unter SPARKY mittlerweile auf Version 1.9.5p1-1.1 aktualisiert, mit dem die Schwachstelle behoben zu sein scheint (usage anstatt sudoedit).

  3. Stephan sagt:

    «sudo» gehört nicht zu Linux. Der Maintainer ist von OpenBSD, und es ist auch auf Macs vorhanden.

    «sudo» ist immer das erste, was ich von meinen Linuxsystemen entferne.

  4. nook sagt:

    "doas" was developed by Ted Unangst for OpenBSD as a simpler and safer sudo replacement, Initial release 18 October 2015

    Linuxportierungen gibt es! Also wird es langsam mal Zeit dafür, so nach 6 Jahren ;-)

    • Stephan sagt:

      Sudo ist zwar auf Desktopdistributionen oft per default vorinstalliert, aber eigentlich auch kein Linux-Standard. Es wird auch von OpenBSD verwaltet. Der Standard aus den Linux Utils ist und bleibt su, und das war schon immer viel sicherer.

      Deshalb entferne ich sudo aus allen persönlichen System als erstes. sudo macht nur Sinn, wenn man viele User hat, die kein Rootpasswort wissen dürfen.

      Sudo wird auch so oder so nicht benötigt. Wenn ich im Desktop eine Systemeinstellung vornehmen will, dann benutzt er PolicyKit. Es wird sowieso empfohlen, graphische Tools niemals als Root auszuführen.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Hinweis: Bitte beachtet die Regeln zum Kommentieren im Blog (Erstkommentare und Verlinktes landet in der Moderation, gebe ich alle paar Stunden frei, SEO-Posts/SPAM lösche ich rigoros). Kommentare abseits des Themas bitte unter Diskussion.

Du findest den Blog gut, hast aber Werbung geblockt? Du kannst diesen Blog auch durch eine Spende unterstützen.