Vulnerabilitat arrel explotada de forma remota a la utilitat ping de FreeBSD

FreeBSD té una vulnerabilitat (CVE-2022-23093) a la utilitat de ping inclosa a la distribució base. El problema podria provocar l'execució de codi remota com a root quan es fa ping a un host extern controlat per l'atacant. S'ha proposat una correcció a les actualitzacions de FreeBSD 13.1-RELEASE-p5, 12.4-RC2-p2 i 12.3-RELEASE-p10. Encara no està clar si altres sistemes BSD es veuen afectats per la vulnerabilitat identificada (encara no s'ha informat de netBSD, DragonFlyBSD i OpenBSD).

La vulnerabilitat és causada per un desbordament de memòria intermèdia al codi d'anàlisi dels missatges ICMP rebuts en resposta a una sol·licitud de sondeig. El codi per enviar i rebre missatges ICMP en ping utilitza sockets en brut i s'executa amb privilegis elevats (la utilitat ve amb el senyalador d'arrel setuid). La resposta es processa al costat del ping mitjançant la reconstrucció de les capçaleres IP i ICMP dels paquets rebuts del sòcol en brut. La funció pr_pack() copia les capçaleres IP i ICMP extretes a les memòries intermèdies, independentment del fet que hi hagi capçaleres ampliades addicionals al paquet després de la capçalera IP.

Aquestes capçaleres s'extreuen del paquet i s'inclouen al bloc de capçalera, però no es tenen en compte a l'hora de calcular la mida del buffer. Si l'amfitrió, en resposta a una sol·licitud ICMP enviada, retorna un paquet amb capçaleres addicionals, el seu contingut s'escriurà a l'àrea fora del límit del buffer de la pila. Com a resultat, l'atacant pot sobreescriure fins a 40 bytes de dades a la pila, la qual cosa pot permetre executar el seu codi. El perill del problema es veu mitigat pel fet que en el moment de la manifestació de l'error, el procés es troba en un estat d'aïllament de les trucades del sistema (mode de capacitat), cosa que dificulta l'accés a la resta del sistema. després d'aprofitar la vulnerabilitat.

Font: opennet.ru

Afegeix comentari