Google corrige silenciosamente la divulgación enviada anteriormente para webp 0-day crítico


imágenes falsas

Google ha vuelto a presentar discretamente una divulgación de una vulnerabilidad crítica de ejecución de código que afecta a miles de aplicaciones individuales y marcos de software después de que su presentación anterior dejara a los lectores con la impresión errónea de que la amenaza afectaba sólo al navegador Chrome.

La vulnerabilidad se origina en la biblioteca de códigos libwebp, que Google creó en 2010 para representar imágenes en webp, un formato entonces nuevo que daba como resultado archivos que eran hasta un 26 por ciento más pequeños que las imágenes PNG. Libwebp se incorpora a casi todas las aplicaciones, sistemas operativos u otras bibliotecas de códigos que representan imágenes webp, sobre todo el marco Electron utilizado en Chrome y muchas otras aplicaciones que se ejecutan tanto en dispositivos móviles como de escritorio.

Hace dos semanas, Google emitió un aviso de seguridad por lo que dijo era un desbordamiento del buffer en WebP en Chrome. La descripción formal de Google, rastreada como CVE-2023-4863, señalaba al proveedor afectado como «Google» y al software afectado como «Chrome», a pesar de que cualquier código que utilizara libwebp era vulnerable. Los críticos advirtieron que el hecho de que Google no notara que miles de otras piezas de código también eran vulnerables resultaría en demoras innecesarias para parchear la vulnerabilidad, lo que permite a los atacantes ejecutar código malicioso cuando los usuarios no hacen más que ver una imagen webp con una trampa explosiva.

El lunes, Google presentó una nueva divulgación identificada como CVE-2023-5129. La nueva entrada enumera correctamente a libwebp como el proveedor y el software afectados. También aumenta el índice de gravedad de la vulnerabilidad, de 8,8 sobre 10 posibles a 10.

La falta de exhaustividad en el primer CVE asignado por Google va mucho más allá de ser un simple fracaso académico. Más de dos semanas después de que saliera a la luz la vulnerabilidad, una gran cantidad de software sigue sin parchearse. El ejemplo más evidente es Microsoft Teams.

La descripción de la vulnerabilidad en el nuevo envío de Google proporciona muchos más detalles. La descripción en la presentación anterior era:

El desbordamiento del búfer de montón en WebP en Google Chrome anterior a 116.0.5845.187 permitía a un atacante remoto realizar una escritura en memoria fuera de los límites a través de una página HTML diseñada. (Severidad de seguridad de Chromium: crítica)

La nueva descripción es:

Con un archivo WebP sin pérdidas especialmente diseñado, libwebp puede escribir datos fuera de los límites del montón. La función ReadHuffmanCodes() asigna el búfer HuffmanCode con un tamaño que proviene de una matriz de tamaños precalculados: kTableSize. El valor color_cache_bits define qué tamaño usar. La matriz kTableSize solo tiene en cuenta los tamaños para búsquedas de tablas de primer nivel de 8 bits, pero no para búsquedas de tablas de segundo nivel. libwebp permite códigos de hasta 15 bits (MAX_ALLOWED_CODE_LENGTH). Cuando BuildHuffmanTable() intenta llenar las tablas de segundo nivel, puede escribir datos fuera de los límites. La escritura OOB en la matriz de tamaño insuficiente ocurre en ReplicateValue.

Ya sea que se rastree como CVE-2023-4863 o CVE-2023-5129, la vulnerabilidad en libwebp es grave. Antes de usar aplicaciones, los usuarios deben asegurarse de que las versiones de Electron que utilizan sean v22.3.24, v24.8.3 o v25.8.1.



Source link-49