Sicherheitslücke bei StrongSwan IPsec-Remotecodeausführung

strongSwan 5.9.10 ist jetzt verfügbar, ein kostenloses Paket zum Erstellen von VPN-Verbindungen basierend auf dem IPSec-Protokoll, das in Linux, Android, FreeBSD und macOS verwendet wird. Die neue Version beseitigt eine gefährliche Schwachstelle (CVE-2023-26463), die zur Umgehung der Authentifizierung genutzt werden kann, möglicherweise aber auch zur Ausführung von Angreifercode auf Server- oder Clientseite führen könnte. Das Problem tritt bei der Validierung speziell entwickelter Zertifikate in TLS-basierten EAP-Authentifizierungsmethoden (Extensible Authentication Protocol) auf.

Die Sicherheitslücke wird dadurch verursacht, dass der TLS-Handler öffentliche Schlüssel vom Zertifikat eines Peers fälschlicherweise akzeptiert und diese als vertrauenswürdig betrachtet, selbst wenn das Zertifikat nicht erfolgreich überprüft werden kann. Konkret wird beim Aufruf der Funktion tls_find_public_key() eine Auswahl basierend auf dem Typ des öffentlichen Schlüssels verwendet, um zu bestimmen, welche Zertifikate vertrauenswürdig sind. Das Problem besteht darin, dass die Variable, die zur Bestimmung des Schlüsseltyps für den Suchvorgang verwendet wird, trotzdem gesetzt ist, auch wenn das Zertifikat nicht vertrauenswürdig ist.

Darüber hinaus können Sie durch Manipulation des Schlüssels den Referenzzähler reduzieren (wenn das Zertifikat nicht vertrauenswürdig ist, wird die Referenz auf das Objekt nach Feststellung des Typs des Schlüssels freigegeben) und Speicher für das noch verwendete Objekt mit dem Schlüssel freigeben. Dieser Fehler schließt die Erstellung von Exploits nicht aus, um Informationen aus dem Speicher zu entwenden und benutzerdefinierten Code auszuführen.

Der Angriff auf den Server erfolgt, indem der Client ein selbstsigniertes Zertifikat sendet, um den Client mithilfe der Methoden EAP-TLS, EAP-TTLS, EAP-PEAP und EAP-TNC zu authentifizieren. Ein Angriff auf den Client kann dadurch erfolgen, dass der Server ein speziell entwickeltes Zertifikat zurücksendet. Die Sicherheitslücke tritt in den StrongSwan-Versionen 5.9.8 und 5.9.9 auf. Die Veröffentlichung von Paketaktualisierungen in Distributionen kann auf den Seiten verfolgt werden: Debian, Ubuntu, Gentoo, RHEL, SUSE, Arch, FreeBSD, NetBSD.

Source: opennet.ru

Kommentar hinzufügen