Eine korrigierte Version der Bibliothek libXpm 3.5.15, entwickelt vom X.Org Projekt und verwendet zur Verarbeitung von XPM-Dateiformaten, wurde veröffentlicht. In dieser neuen Version wurden drei Sicherheitsanfälligkeiten behoben, von denen zwei (CVE-2022-46285, CVE-2022-44617) zu einer Endlosschleife führen können, wenn speziell formatierte XPM-Dateien verarbeitet werden. Die dritte Anfälligkeit (CVE-2022-4883) erlaubt es, beliebige Befehle auszuführen, wenn Anwendungen, die libXpm verwenden, gestartet werden. Bei der Ausführung privilegierter Prozesse im Zusammenhang mit libXpm, wie Programmen mit dem SUID-Root-Flag, ermöglicht diese Anfälligkeit eine Erhöhung der eigenen Privilegien.
Die Anfälligkeit resultiert aus den Anforderungen, die libXpm an komprimierte XPM-Dateien stellt – beim Verarbeiten von Dateien im Format XPM.Z oder XPM.gz ruft die Bibliothek mittels execlp() externe Entpackungswerkzeuge (uncompress oder gunzip) auf, deren Pfad basierend auf der Umgebungsvariable PATH berechnet wird. Der Angriff beschränkt sich darauf, eigene ausführbare Dateien uncompress oder gunzip in einem für den Benutzer zugänglichen Verzeichnis zu platzieren, das im PATH enthalten ist, die ausgeführt werden, sobald die Anwendung, die libXpm verwendet, gestartet wird.
Die Schwachstelle wurde behoben, indem der Aufruf von execlp auf execl mit absoluten Pfaden zu den Tools geändert wurde. Zusätzlich wurde die Build-Option „—disable-open-zfile“ hinzugefügt, die die Verarbeitung von komprimierten Dateien und den Aufruf externer Tools zur Dekomprimierung deaktiviert.
Quelle: opennet.ru
