Sie entdeckten eine Schwachstelle in sudo, die das Ändern beliebiger Dateien ermöglichte

Verwundbarkeit

Wenn sie ausgenutzt werden, können diese Schwachstellen Angreifern den unbefugten Zugriff auf vertrauliche Informationen ermöglichen oder allgemein Probleme verursachen

Eine Schwachstelle wurde identifiziert (bereits gelistet unter CVE-2023-22809) en das sudo-Paket, das verwendet wird, um Befehle im Auftrag anderer Benutzer auszuführen, wodurch ein lokaler Benutzer jede Datei auf dem System bearbeiten kann, wodurch wiederum Root-Rechte erlangt werden können, indem /etc/shadow oder Skripte des Systems geändert werden .

Um die Schwachstelle auszunutzen, muss der Benutzer das Recht haben, das Dienstprogramm sudoedit oder „sudo“ mit dem „-e“-Flag in den sudoers auszuführen.

Der Fehler erwähnt, dass sudo (su „do“) es einem Systemadministrator ermöglicht, die Berechtigung zu delegieren, bestimmten Benutzern (oder Benutzergruppen) die Möglichkeit zu geben, einige (oder alle) Befehle während der Ausführung als root oder einen anderen Benutzer auszuführen der Befehle und ihrer Argumente.

Die Sicherheitsanfälligkeit beruht auf einem Mangel an ordnungsgemäßer Behandlung der „–“-Zeichen beim Analysieren der Umgebungsvariablen, die das zum Bearbeiten der Datei aufgerufene Programm bestimmen.

In sudo wird die Zeichenfolge "–" verwendet, um den Editor und die Argumente zu trennen aus der Liste der bearbeiteten Dateien. Ein Angreifer kann „–file“ zu SUDO_EDITOR-Umgebungsvariablen hinzufügen, VISUAL oder EDITOR nach dem Pfad zum Editor, wodurch die angegebene Datei mit erhöhten Rechten bearbeitet wird, ohne dass die Dateizugriffsregeln des Benutzers überprüft werden.

Über die Details der Schwachstelle Folgendes wird erwähnt:

Wenn es als sudo -e oder sudoedit ausgeführt wird, kann sudo verwendet werden, um Dateien mit Berechtigungen zu bearbeiten, während der Editor als nicht privilegierter Benutzer ausgeführt wird. Die Richtliniendatei sudoers bestimmt, ob ein Benutzer die angegebenen Dateien bearbeiten kann oder nicht. Das erwartete Verhalten besteht darin, dass das sudoers-Richtlinienmodul einen Argumentvektor an das sudo-Frontend zurückgibt, das den Editor enthält, der zusammen mit den zu bearbeitenden Dateien ausgeführt wird, getrennt durch ein „–“-Argument.

La Ablauf der Ereignisse ist wie folgt:

  1. Das sudo-Front-End sendet eine Richtlinienprüfungsanforderung an das sudoers-Modul, die angibt, dass der Benutzer sudoedit ausgeführt hat, und fügt die Liste der zu bearbeitenden Dateien hinzu.
  2. Das sudoers-Richtlinienmodul verwendet die sudoers- (oder LDAP-) Datei, um festzustellen, ob der Benutzer die Dateien bearbeiten kann.
  3. Wenn die Richtlinienprüfung erfolgreich ist, wählt das sudoers-Richtlinienmodul basierend auf den Variablen SUDO_EDITOR, VISUAL und EDITOR in der Umgebung des Benutzers einen Editor aus. 
  4. Das sudoers-Modul konstruiert einen neuen Argumentvektor, der aus dem ausgewählten Editor besteht. Wenn der Editor Befehlszeilenoptionen enthält, wird er in mehrere Argumente aufgeteilt.
  5. Dem Argumentvektor wird ein „–“-Trennzeichen hinzugefügt, gefolgt von der Liste der zu bearbeitenden Dateien. Dieser Argumentvektor wird an das sudo-Frontend zurückgegeben.
  6. Das sudo-Frontend verwendet das „–“-Trennzeichen, um zu bestimmen, welche Dateien bearbeitet werden sollen. Temporäre Kopien von Dateien werden erstellt, wobei der Eigentümer auf den aufrufenden Benutzer festgelegt ist.
  7. Das sudo-Frontend erstellt einen neuen Argumentvektor, der aus allen Elementen vor dem Trennzeichen „–“ (dem Editor) besteht, gefolgt von den temporären Dateipfaden. Der neue Argumentvektor wird als der Benutzer ausgeführt, der ihn aufruft.
  8. Temporäre Dateien werden an ihren ursprünglichen Speicherort zurückkopiert und temporäre Versionen werden gelöscht.
  9. Es besteht eine Schwachstelle, wenn der benutzerdefinierte Editor auch ein „–“-Argument enthält. Dadurch wird das sudo-Front-End dazu verleitet, alles nach dem „–“-Argument im Editor als zu bearbeitende Datei zu behandeln, selbst wenn die sudoers-Richtlinie dies nicht zulässt.

Die Schwachstelle ist seit Zweig 1.8.0 vorhanden und im korrektiven Update sudo 1.9.12p2 behoben. Die Veröffentlichung von Paketaktualisierungen in Distributionen kann auf den Seiten eingesehen werden: DebianUbuntuGentooRHELSUSEFedoraBogenFreeBSDNetBSD.

Abschließend wird erwähnt, dass Sie als Sicherheitsumgehung die Verarbeitung der Umgebungsvariablen SUDO_EDITOR, VISUAL und EDITOR deaktivieren können, indem Sie in sudoers Folgendes angeben:

Defaults!sudoedit env_delete+="SUDO_EDITOR VISUAL EDITOR"

Quelle: https://www.synacktiv.com/


Hinterlasse einen Kommentar

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

*

*

  1. Verantwortlich für die Daten: Miguel Ángel Gatón
  2. Zweck der Daten: Kontrolle von SPAM, Kommentarverwaltung.
  3. Legitimation: Ihre Zustimmung
  4. Übermittlung der Daten: Die Daten werden nur durch gesetzliche Verpflichtung an Dritte weitergegeben.
  5. Datenspeicherung: Von Occentus Networks (EU) gehostete Datenbank
  6. Rechte: Sie können Ihre Informationen jederzeit einschränken, wiederherstellen und löschen.