Sicherheitsanfälligkeiten in OpenSSL, Glibc, util-linux, den Treibern i915 und vmwgfx

Informationen zu einer Sicherheitsanfälligkeit (CVE-2021-4160) in der Kryptographiebibliothek OpenSSL wurden offengelegt, die durch einen Fehler bei der Implementierung des Summierers in der Funktion BN_mod_exp verursacht wurde, was zu einer falschen Rückgabe des Ergebnisses der Quadratoperation führt. Das Problem tritt nur auf Geräten mit MIPS32- und MIPS64-Architekturen auf und kann zu einer Kompromittierung von Algorithmen auf Basis elliptischer Kurven führen, einschließlich der in TLS 1.3 standardmäßig verwendeten. Das Problem wurde in den Dezember-Updates von OpenSSL 1.1.1m und 3.0.1 behoben.

Es wird festgestellt, dass die Durchführung realer Angriffe zur Beschaffung von Informationen über geschlossene Schlüssel mit der entdeckten Anfälligkeit für RSA, DSA und den Diffie-Hellman-Algorithmus (DH, Diffie-Hellman) als möglich, aber unwahrscheinlich betrachtet wird, da sie zu komplex für die Durchführung ist und enorme Rechenressourcen erfordert. Ein Angriff auf TLS wird ausgeschlossen, da im Jahr 2016 bei der Behebung der Anfälligkeit CVE-2016-0701 die gemeinsame Nutzung eines geschlossenen DH-Schlüssels durch Clients verboten wurde.

Zusätzlich sind mehrere kürzlich entdeckte Sicherheitsanfälligkeiten in Open-Source-Projekten zu vermerken:

  • Mehrere Sicherheitsanfälligkeiten (CVE-2022-0330) im Grafiktreiber i915, die mit dem Fehlen von TLB-Reset für GPU zusammenhängen. Wenn kein IOMMU (Adressübersetzung) verwendet wird, ermöglicht die Anfälligkeit den Zugriff aus dem Benutzerspeicher auf zufällige Speicherseiten. Das Problem kann zum Beschädigen oder Lesen von Daten aus zufälligen Speicherbereichen verwendet werden. Das Problem tritt bei allen integrierten und diskreten Intel-GPUs auf. Die Behebung wurde durch die Einführung eines obligatorischen TLB-Resets vor jeder Rückgabeoperation des GPU-Puffers in das System realisiert, was zu einer Verringerung der Leistung führt. Die Auswirkungen auf die Leistung hängen von der GPU, den vom GPU ausgeführten Operationen und der Systemlast ab. Der Fix ist derzeit nur als Patch verfügbar.
  • Eine Sicherheitsanfälligkeit (CVE-2022-22942) im Grafiktreiber vmwgfx, der für die Implementierung von 3D-Beschleunigung in VMware-Umgebungen verwendet wird. Das Problem ermöglicht es einem nicht privilegierten Benutzer, auf von anderen Prozessen im System geöffnete Dateien zuzugreifen. Für den Angriff ist Zugang zum Gerät /dev/dri/card0 oder /dev/dri/rendererD128 sowie die Möglichkeit erforderlich, einen ioctl()-Aufruf mit dem erhaltenen Dateideskriptor auszuführen.
  • Schwächen (CVE-2021-3996, CVE-2021-3995) in der Bibliothek libmount, die mit dem Paket util-linux geliefert wird und es einem unprivilegierten Benutzer ermöglicht, Partitionen unberechtigt zu demontieren. Das Problem wurde bei einer Prüfung der SUID-root-Programme umount und fusermount festgestellt.
  • Schwächen in der Standard-C-Bibliothek Glibc, die die Funktionen realpath (CVE-2021-3998) und getcwd (CVE-2021-3999) betreffen.
    • Das Problem in realpath() wird durch die Rückgabe eines falschen Wertes unter bestimmten Bedingungen verursacht, der ungefilterte Restdaten aus dem Stack enthält. Bei dem SUID-root-Programm fusermount kann die Schwäche ausgenutzt werden, um vertrauliche Informationen aus dem Speicher des Prozesses zu erhalten, zum Beispiel um Informationen über Pointer abzurufen.
    • Das Problem in getcwd() ermöglicht ein Buffer-Overflow um ein Byte. Das Problem wird durch einen Fehler verursacht, der seit 1995 besteht. Um das Overflow auszulösen, genügt es, in einem separaten Namensraum von Mount-Punkten einen Aufruf von chdir() für das Verzeichnis „/“ auszuführen. Es ist unklar, ob die Schwäche nur zu einem Absturz des Prozesses führt, aber in der Vergangenheit gab es Fälle, in denen für ähnliche Schwächen funktionierende Exploits erstellt wurden, trotz der Skepsis der Entwickler.
  • Eine Schwäche (CVE-2022-23220) im Paket usbview, die es lokalen Benutzern, die sich über SSH angemeldet haben, ermöglicht, Code mit Root-Rechten auszuführen, aufgrund einer Einstellung in den PolKit-Regeln (allow_any=yes), die das Ausführen des Programms usbview unter dem Benutzer root ohne Authentifizierung erlaubt. Die Ausnutzung besteht darin, die Option „—gtk-module“ zu verwenden, um eine eigene Bibliothek in usbview zu laden. Das Problem wurde in der Version usbview 2.2 behoben.

Quelle: opennet.ru

60GB SSD 8Gb DDR4