Sicherheitslücke in strongSwan IPsec, die zur Remote-Codeausführung führt

strongSwan, ein IPSec-basiertes VPN-Paket, das unter Linux, Android, FreeBSD und macOS verwendet wird, weist eine Schwachstelle (CVE-2023-41913) auf, die von einem Angreifer für die Remotecodeausführung ausgenutzt werden kann. Die Schwachstelle ist auf einen Fehler im charon-tkm-Prozess mit seiner TKMv2-Implementierung (Trusted Key Manager) des Key Exchange-Protokolls (IKE) zurückzuführen, der zu einem Pufferüberlauf bei der Verarbeitung speziell formatierter DH-Schemawerte (Diffie-Hellman) führt. Die Schwachstelle tritt nur auf Systemen auf, die Charon-TKM- und StrongSwan-Versionen ab 5.3.0 verwenden. Das Problem wurde im StrongSwan 5.9.12-Update behoben. Um die Schwachstelle in Zweigen ab 5.3.x zu beheben, wurden auch Patches vorbereitet.

Der Fehler wird dadurch verursacht, dass die Größe öffentlicher Diffie-Hellman-Werte nicht überprüft wird, bevor sie in einen Puffer mit fester Größe auf dem Stapel kopiert werden. Ein Überlauf kann durch das Senden einer speziell gestalteten IKE_SA_INIT-Nachricht ausgelöst werden, die ohne Authentifizierung verarbeitet wird. In älteren Versionen von strongSwan wurde die Größenprüfung im KE-Payload-Handler (Key Exchange) durchgeführt, in Version 5.3.0 wurden jedoch Änderungen hinzugefügt, die die Prüfung öffentlicher Werte auf die Seite des DH-Protokoll-Handlers verlagerten ( Diffie-Hellman) und generische Funktionen hinzugefügt, um die Überprüfung der Korrektheit bekannter Gruppen zu vereinfachen D.H. Aufgrund eines Versehens wurde vergessen, neue Prüffunktionen zum charon-tkm-Prozess hinzuzufügen, der als Proxy zwischen dem IKE-Prozess und dem TKM (Trusted Key Manager) fungiert, wodurch die Funktion memcpy() ungeprüfte Werte enthielt Damit konnten bis zu 512 Bytes in einen 10000 Byte großen Datenpuffer geschrieben werden.

Source: opennet.ru

Kommentar hinzufügen