Vulnerabilitatea în strongSwan IPsec care duce la executarea codului de la distanță

strongSwan, un pachet VPN bazat pe IPSec folosit pe Linux, Android, FreeBSD și macOS, are o vulnerabilitate (CVE-2023-41913) care poate fi exploatată pentru executarea codului de la distanță de către un atacator. Vulnerabilitatea se datorează unei erori în procesul charon-tkm cu implementarea sa TKMv2 (Trusted Key Manager) a protocolului Key Exchange (IKE), rezultând o depășire a memoriei tampon la procesarea valorilor schemei DH (Diffie-Hellman) special formatate. Vulnerabilitatea apare doar pe sistemele care utilizează versiunile charon-tkm și strongSwan începând cu 5.3.0. Problema este rezolvată în actualizarea strongSwan 5.9.12. Pentru a remedia vulnerabilitatea în ramuri începând cu 5.3.x, au fost pregătite și patch-uri.

Eroarea este cauzată de neverificarea dimensiunii valorilor publice Diffie-Hellman înainte de a le copia într-un buffer de dimensiune fixă ​​din stivă. O depășire poate fi inițiată prin trimiterea unui mesaj IKE_SA_INIT special conceput, care este procesat fără autentificare. În versiunile mai vechi de strongSwan, verificarea dimensiunii a fost efectuată în manipulatorul de încărcare utilă KE (Key Exchange), dar în versiunea 5.3.0 au fost adăugate modificări care au mutat verificarea valorilor publice pe partea de gestionare a protocolului DH ( Diffie-Hellman) și au adăugat funcții generice pentru a simplifica verificarea corectitudinii grupurilor cunoscute D.H. Din cauza unei neglijeri, au uitat să adauge noi funcții de verificare procesului charon-tkm, care funcționează ca un proxy între procesul IKE și TKM (Manager de chei de încredere), drept urmare funcția memcpy() conține valori neverificate. care a permis scrierea a până la 512 de octeți într-un buffer de date de 10000 de octeți.

Sursa: opennet.ru

Adauga un comentariu