Byla vydána verze strongSwan 5.9.10, svobodného balíčku pro vytváření VPN připojení založených na protokolu IPSec, používaného na Linuxu, Androidu, FreeBSD a macOS. V nové verzi byla odstraněna kritická zranitelnost (CVE-2023-26463), která mohla být využita k obcházení autentizace, a potenciálně také mohla vést k provedení kódu útočníka na straně serveru nebo klienta. Problém se projevuje při ověřování speciálně připravených certifikátů v metodách autentizace EAP (Extensible Authentication Protocol) založených na TLS.
Zranitelnost je způsobena tím, že TLS zpracovatel nesprávně přijímá veřejné klíče z certifikátu sousedního uzlu (peer), považuje je za důvěryhodné, i když certifikát nelze úspěšně verifikovat. Konkrétně při volání funkce tls_find_public_key() se pro určení důvěryhodných certifikátů používá výběr na základě typu veřejného klíče. Problém spočívá v tom, že proměnná používaná k určení typu klíče pro vyhledávací operaci je nastavena v každém případě, i když certifikát není důvěryhodný.
Navíc, manipulací s klíčem lze dosáhnout snížení počítadla odkazů (pokud certifikát není důvěryhodný, odkaz na objekt je uvolněn po určení typu klíče) a uvolnění paměti pod dalším použitým objektem s klíčem. Zkoumaná nedostatka nevylučuje vytvoření exploitů pro uspořádání úniku informací z paměti a provádění vlastního kódu.
Útok na server se provádí prostřednictvím zaslání klientem vlastním certifikátu pro autentizaci klienta s použitím metod EAP-TLS, EAP-TTLS, EAP-PEAP a EAP-TNC. Útok na klienta může být proveden prostřednictvím vrácení serverem speciálně připraveného certifikátu. Zranitelnost se projevuje ve verzích strongSwan 5.9.8 a 5.9.9. Publikaci aktualizací balíčků v distribucích lze sledovat na stránkách: Debian, Ubuntu, Gentoo, RHEL, SUSE, Arch, FreeBSD, NetBSD.
Zdroj: opennet.ru
