Un defecto de contaminación prototipo sin parches afecta a todas las versiones de la biblioteca popular de Lodash

Lodash es una biblioteca de JavaScript que contiene herramientas para simplificar la programación con cadenas, números, matrices, funciones y objetos, lo que ayuda a los programadores a escribir y mantener su código JavaScript de manera más eficiente.

Liran Tal, un defensor de desarrolladores en la plataforma de seguridad de código abierto Snyk, publicó recientemente detalles y una vulnerabilidad de prueba de concepto de una vulnerabilidad de seguridad de contaminación de prototipos de alta gravedad que afecta a todas las versiones de lodash, incluida la última versión 4.17.11.

La vulnerabilidad, asignada como CVE-2019-10744 , puede afectar a una gran cantidad de proyectos front-end debido a la popularidad de lodash que se está descargando a una tasa de más de 80 millones de veces por mes.

La contaminación de prototipos es una vulnerabilidad que permite a los atacantes modificar el prototipo de objeto JavaScript de una aplicación web, que es como una variable que se puede usar para almacenar múltiples valores basados ​​en una estructura predefinida.

 

 

Estas estructuras y valores predeterminados se denominan prototipos que impiden que una aplicación se forme un hash cuando no se establecen valores.

Sin embargo, si un atacante logra inyectar propiedades en el lenguaje JavaScript existente, construye prototipos y manipula estos atributos para sobrescribirlos o contaminarlos, esto podría afectar la forma en que la aplicación procesa los objetos JavaScript a través de la cadena de prototipos, lo que lleva a un problema de denegación de servicio o ejecución remota de código. vulnerabilidad.

De acuerdo con Tal, la función “defaultsDeep” en la biblioteca de Lodash podría ser engañada para que agregue o modifique las propiedades de Object.prototype utilizando una carga útil del constructor, lo que podría provocar un bloqueo de la aplicación web o alterar su comportamiento, dependiendo del caso de uso afectado. .

Cabe señalar que no es fácil explotar las fallas de la contaminación de un prototipo y requiere un conocimiento profundo de cómo funciona cada aplicación web específica.

El investigador responsable informó sobre esta vulnerabilidad a John Dalton, mantenedor de Lodash, y propuso correcciones (solicitudes de extracción 1 y 2 ) que se incluirán en la próxima versión de la biblioteca, que se lanzará muy pronto.

Si su proyecto también se utiliza en lodash, se recomienda actualizar inmediatamente su biblioteca tan pronto como se publique el parche oficial o aplicar manualmente los arreglos.

Fuente: thehackernews.com

Please follow and like us: