Vulnerabilidad en el paquete NPM pac-resolver con 3 millones de descargas por semana

El paquete NPM pac-resolver, que tiene más de 3 millones de descargas por semana, tiene una vulnerabilidad (CVE-2021-23406) que permite que su código JavaScript se ejecute en el contexto de la aplicación al enviar solicitudes HTTP desde proyectos Node.js que Admite la función de configuración automática del servidor proxy.

El paquete pac-resolver analiza archivos PAC que incluyen un script de configuración automática de proxy. El archivo PAC contiene código JavaScript normal con una función FindProxyForURL que define la lógica para elegir un proxy según el host y la URL solicitada. La esencia de la vulnerabilidad es que para ejecutar este código JavaScript en pac-resolver, se utilizó la API VM proporcionada en Node.js, que permite ejecutar código JavaScript en un contexto diferente del motor V8.

La API especificada está marcada explícitamente en la documentación como no destinada a ejecutar código que no es de confianza, ya que no proporciona un aislamiento completo del código que se ejecuta y permite el acceso al contexto original. El problema se resolvió en pac-resolver 5.0.0, que se movió para usar la biblioteca vm2, que proporciona un mayor nivel de aislamiento adecuado para ejecutar código que no es de confianza.

Vulnerabilidad en el paquete NPM pac-resolver con 3 millones de descargas por semana

Al usar una versión vulnerable de pac-resolver, un atacante mediante la transmisión de un archivo PAC especialmente diseñado puede lograr la ejecución de su código JavaScript en el contexto del código de un proyecto que usa Node.js, si este proyecto usa bibliotecas que tienen dependencias. con pac-resolver. La más popular de las bibliotecas problemáticas es Proxy-Agent, que figura como una dependencia de 360 ​​proyectos, incluidos urllib, aws-cdk, mailgun.js y firebase-tools, con un total de más de tres millones de descargas por semana.

Si una aplicación que depende de pac-resolver carga un archivo PAC proporcionado por un sistema que admite el protocolo de configuración automática del proxy WPAD, los atacantes con acceso a la red local pueden usar la distribución de la configuración del proxy a través de DHCP para insertar archivos PAC maliciosos.

Fuente: opennet.ru

Añadir un comentario