Vulnerabilitat en strongSwan IPsec que condueix a l'execució de codi remota

strongSwan, un paquet VPN basat en IPSec que s'utilitza a Linux, Android, FreeBSD i macOS, té una vulnerabilitat (CVE-2023-41913) que un atacant pot explotar per a l'execució remota de codi. La vulnerabilitat es deu a un error en el procés charon-tkm amb la seva implementació TKMv2 (Trusted Key Manager) del protocol Key Exchange (IKE), que provoca un desbordament de memòria intermèdia quan es processen valors d'esquema DH (Diffie-Hellman) amb un format especial. La vulnerabilitat només apareix en sistemes que utilitzen versions charon-tkm i strongSwan a partir de la 5.3.0. El problema s'ha solucionat a l'actualització de strongSwan 5.9.12. Per solucionar la vulnerabilitat de les branques a partir de la 5.3.x, també s'han preparat pedaços.

L'error és causat per no comprovar la mida dels valors públics de Diffie-Hellman abans de copiar-los a un buffer de mida fixa de la pila. Es pot iniciar un desbordament enviant un missatge IKE_SA_INIT especialment dissenyat que es processa sense autenticació. A les versions anteriors de strongSwan, la comprovació de la mida es va dur a terme al gestor de càrrega útil KE (Key Exchange), però a la versió 5.3.0 es van afegir canvis que van traslladar la comprovació dels valors públics al costat del gestor del protocol DH ( Diffie-Hellman) i va afegir funcions genèriques per simplificar la comprovació de la correcció dels grups coneguts D.H. A causa d'un descuit, es van oblidar d'afegir noves funcions de verificació al procés charon-tkm, que funciona com a intermediari entre el procés IKE i el TKM (Gestor de claus de confiança), com a resultat de la qual cosa la funció memcpy() contenia valors no marcats. ​​que permetia escriure fins a 512 bytes en una memòria intermèdia de 10000 bytes.

Font: opennet.ru

Afegeix comentari