Zum Inhalt springen
BlogSicherheitLinode Security Digest Januar 21 - 28, 2023

Linode Security Digest Januar 21 - 28, 2023

Linode Security Digest

In der Zusammenfassung dieser Woche werden wir diskutieren:

  • Wie Sudoedit beliebige Dateien bearbeiten kann;
  • Drupal- und Git-Sicherheitshinweise; und 
  • Eine Denial-of-Service-Schwachstelle in HAProxy.

Sudoedit kann beliebige Dateien bearbeiten

CVE-ID: CVE-2023-22809

Sudo ist ein Programm, das es einem Systemadministrator ermöglicht, ausgewählten Benutzern die Möglichkeit zu geben, Befehle als root auszuführen. Synacktiv hat diese Sicherheitslücke entdeckt. Ein Problem bei der Umgehung der sudoers-Politik kann zu einer Ausweitung der Rechte führen, indem sudoedit zur Bearbeitung nicht autorisierter Dateien verwendet wird. Die betroffenen Versionen von Sudo reichen von 1.8.0 bis 1.9.12p1.

Bei der Verwendung von sudoedit wählen die Benutzer ihren Bearbeitungsbenutzer mit Hilfe von Umgebungsvariablen wie SUDO_EDITOR, VISUAL und EDITOR aus. Der Inhalt dieser Variablen erweitert den eigentlichen Befehl, der an die Funktion sudo_edit() übergeben wird. A "-" Argument soll die Liste der zu bearbeitenden Dateien bestimmen. Allerdings kann die Einfügung eines zusätzlichen "-"Argumentes in die autorisierten Umgebungsvariablen kann diese Liste jedoch verändern und zu einer Ausweitung der Rechte führen, indem jede andere Datei mit den Rechten des Zielbenutzers bearbeitet wird.

Erkennung

Die Schwachstelle kann aufgedeckt werden, indem der folgende Befehl als Benutzer ausgeführt wird, der die Datei bearbeiten darf, z. B. /etc/custom/service.conf, die in der Datei /etc/sudoers aufgeführt ist.

$ cat /etc/sudoers
user ALL=(ALL:ALL) sudoedit /etc/custom/service.conf
[...]

$ EDITOR='vim -- /etc/passwd' sudoedit /etc/custom/service.conf

Milderung

Neben der Aktualisierung auf die gepatchte Version ist es auch möglich, die Schwachstelle zu entschärfen, indem die betroffenen Umgebungsvariablen bei der Verwendung von sudoedit zur env_delete-Verweigerungsliste hinzugefügt werden.

Defaults!SUDOEDIT            env_delete+="SUDO_EDITOR VISUAL EDITOR"
Cmnd_Alias SUDOEDIT = sudoedit /etc/custom/service.conf
user                                              ALL=(ALL:ALL) SUDOEDIT

Drupal-Sicherheitshinweise

Drupal hat Sicherheitshinweise veröffentlicht, um Sicherheitslücken zu schließen, die mehrere Produkte betreffen. Ein Angreifer könnte diese Schwachstellen ausnutzen, um auf sensible Informationen zuzugreifen. Die CISA empfiehlt Benutzern und Administratoren, die folgenden Drupal-Sicherheitshinweise zu lesen und die erforderlichen Aktualisierungen vorzunehmen.

Drupal Core - Offenlegung von Informationen

Sicherheitshinweise Code: SA-CORE-2023-001

Benutzer mit Zugriff auf die Bearbeitung von Inhalten können die Metadaten von Medienelementen sehen, für die sie keine Zugriffsberechtigung haben, da die Zugriffsprüfung für Entitäten im Modul Medienbibliothek nicht korrekt durchgeführt wird. Die Schwachstelle kann entschärft werden, da die nicht zugänglichen Medien nur für Benutzer sichtbar sind, die den Inhalt bereits bearbeiten können, einschließlich eines Medienreferenzfelds. 

Unabhängig davon, dass Drupal vor 9.4.x nicht mehr verfügbar ist, wird empfohlen, auf die neuesten Versionen zu aktualisieren, einschließlich Drupal 10.0.2, Drupal 9.5.2 und Drupal 9.4.10.

Entity Browser - Offenlegung von Informationen

Sicherheitshinweise Code: SA-CONTRIB-2023-002

Benutzer können Entitäten aus Entitätsreferenzfeldern auswählen, indem sie ein benutzerdefiniertes Entitätsbrowser-Widget aus dem Modul Entitätsbrowser verwenden. Diese Schwachstelle ermöglicht es Benutzern mit Zugriff auf die Bearbeitung von Inhalten, die Metadaten von Entitäten zu sehen, für die sie keine Zugriffsberechtigung haben, da das Modul den Entitätszugriff nicht ordnungsgemäß überprüft. Die Schwachstelle kann dadurch entschärft werden, dass die unzugänglichen Entitäten nur für Benutzer sichtbar sind, die den Inhalt bereits mit Entity Browser bearbeiten können. Um die Schwachstelle zu beheben, aktualisieren Sie den Entity Browser auf Version 8.x-2.9, wenn Sie das Entity Browser Modul für Drupal 9 oder 10 verwenden.

Mediathek-Block - Offenlegung von Informationen

Sicherheitshinweise Code: SA-CONTRIB-2023-003

Das Modul Media Library Block ermöglicht es Benutzern, Medienelemente in einem Block darzustellen. Die unsachgemäße Überprüfung des Medienzugriffs durch das Modul kann dazu führen, dass Benutzer Medien sehen, für die sie keine Zugriffsberechtigung haben, wenn sich ein Block mit eingeschränkten Medienelementen auf der Seite befindet. Verhindern Sie diesen nicht autorisierten Zugriff, indem Sie Blöcke entfernen, die auf Medienelemente mit Zugriffsbeschränkungen verweisen. Wenn Sie das Modul Media Library Block für Drupal 9 oder 10 verwenden, wird empfohlen, es auf Version 1.0.4 zu aktualisieren, um das Problem zu beheben.

Medienbibliothek-Formular-API-Element - Offenlegung von Informationen

Sicherheitshinweise Code: SA-CONTRIB-2023-004

Das Modul Medienbibliothek-Formular-API-Element ermöglicht es Benutzern, die Medienbibliothek in benutzerdefinierten Formularen ohne das Medienbibliothek-Widget zu verwenden. Aufgrund der unsachgemäßen Überprüfung des Entitätszugriffs durch das Modul können Benutzer mit Zugriff auf die Bearbeitung von Inhalten Metadaten von Medienelementen sehen, für die sie keine Zugriffsberechtigung haben. Entschärfen Sie die Schwachstelle, indem Sie nicht zugängliche Medien nur für Benutzer sichtbar machen, die den Inhalt, der ein Medienreferenzfeld enthält, bereits bearbeiten können. Wenn das Modul Media Library Form API Element Version 8.x-1.* oder 2.x für Drupal 9 oder 10 ist, wird empfohlen, das Modul auf Version 2.0.6 zu aktualisieren.

Git-Sicherheitshinweise

Eine Sicherheitsüberprüfung des Quellcodes von Git hat mehrere Schwachstellen aufgedeckt, darunter zwei kritische Schwachstellen, die es Angreifern ermöglichen könnten, beliebigen Code auszuführen, nachdem sie erfolgreich eine Heap-basierte Pufferüberlaufschwäche ausgenutzt haben. Beide kritischen Schwachstellen sind in den Git-Versionen v2.30.7, v2.31.6, v2.32.5, v2.33.6, v2.34.6, v2.35.6, v2.36.4, v2.37.5, v2.38.3 und v2.39.1 behoben.

Heap-Überlauf in `git archive`, `git log -format` führt zu RCE

CVE-ID: CVE-2022-41903

git log kann Commits in einem beliebigen Format mit einem -format-Spezifikator anzeigen. git archive mit dem git-Attribut export-subst verfügt ebenfalls über diese Funktionalität. Wenn die Padding-Operatoren verarbeitet werden, wird eine size_t-Variable fälschlicherweise als int in der Funktion pretty.c format_and_pad_commit() gespeichert und dann als Offset zu einem folgenden memcpy()-A ufruf hinzugefügt. Angreifer können den Überlauf auslösen, indem sie git log -format=... ausführen, um die Commit-Formatierung aufzurufen, oder indem sie git archive mit dem Attribut export-subst ausführen, das den Format-Spezifikator für eine Datei erweitert. Der Integerüberlauf kann eine entfernte Codeausführung verursachen, indem beliebiger Code in den Speicher geschrieben wird.

Umgehungen

Es wird empfohlen, Git auf die neueste Version zu aktualisieren, die die Sicherheitslücke vollständig behebt. Wenn ein Upgrade nicht möglich ist, sollten Benutzer git archive nicht in einem nicht vertrauenswürdigen Repository ausführen. Wenn das Git-Archiv über den Git-Daemon zugänglich ist, führen Sie git config -global daemon.uploadArch false aus, um den Befehl zu deaktivieren.

gitattributes parsing Integer-Überlauf

CVE-ID: CVE-2022-23521

Git erlaubt es Benutzern, Attribute für Pfade zu definieren, indem sie eine .gitattributes-Datei zum Repository hinzufügen, die eine Reihe von Dateimustern und Attributen enthält, die für die Dateien gesetzt werden sollen, die dem Muster entsprechen. Einige Bedingungen können zu einem Integer-Überlauf beim Parsen von Attributen führen:

  • wenn es eine übermäßige Anzahl von Pfadmustern gibt;
  • wenn es zahlreiche Attribute für ein einziges Muster gibt;
  • wenn die Namen der deklarierten Attribute umfangreich sind.

Die Überläufe können ausgelöst werden, wenn die manipulierte .gitattributes-Datei Teil des Commit-Verlaufs ist. Zeilen, die länger als 2KB sind, werden beim Parsen von gitattributes aus einer Datei, aber nicht aus dem Index, stillschweigend aufgeteilt. Infolgedessen kann ein Fehler auftreten, wenn die Datei im Index, im Arbeitsbaum oder in beiden existiert. Die Schwachstelle kann zu willkürlichen Lese- und Schreibzugriffen auf den Kopf führen, was eine entfernte Codeausführung zur Folge hat.

Umgehungen

Es wurde keine anwendbare Abhilfe veröffentlicht. Die einzige Abhilfe besteht darin, Git auf die aufgelistete neueste gepatchte Version zu aktualisieren.

Denial-of-Service-Schwachstelle in HAProxy

CVE-ID: CVE-2023-0056

HAProxy ist ein hochverfügbarer Server-Load-Balancer für HTTP-Anwendungen. Diese Schwachstelle besteht aufgrund des Fehlers der unerwarteten Flag-Behandlung in der Funktion http_wait_for_response(), was zum Absturz des Prozesses führen kann. Infolgedessen ermöglicht die Schwachstelle einem Angreifer einen Denial-of-Service-Angriff. 

Die verwundbare Version von HAProxy reicht von 2.0.0 bis 2.7.0. Beheben Sie die Sicherheitslücken in den Versionen 2.5.11, 2.6.8 und 2.7.2. Die behobenen Versionen für 2.0.x bis 2.4.x sind jedoch noch nicht veröffentlicht worden.


Kommentare

Kommentar abgeben

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