Home Tecnología La vulnerabilidad crítica en la biblioteca JavaScript expone millones de aplicaciones a...

La vulnerabilidad crítica en la biblioteca JavaScript expone millones de aplicaciones a los ataques de ejecución de código

12
0

Se ha descubierto una vulnerabilidad de seguridad crítica en la biblioteca de datos de formulario JavaScript ampliamente utilizada, lo que puede exponer millones de aplicaciones a los ataques de ejecución de código.

La vulnerabilidad, asignada CVE-2025-7783, se deriva del uso de la biblioteca de la función Math.random () predecible para generar valores límite para datos codificados por forma multipart, lo que permite a los atacantes manipular las solicitudes HTTP e inyectar parámetros maliciosos en sistemas de backend.

Control de llave
1. La biblioteca de datos de formulario utiliza Math.Random () predecible, habilitando ataques de inyección de parámetros.
2. Millones de aplicaciones vulnerables en las versiones <2.5.4, 3.0.0-3.0.3, 4.0.0-4.0.3.
3. Actualice a 4.0.4, 3.0.4 o 2.5.4 inmediatamente.

Detalles técnicos de la vulnerabilidad

El consultivo Publicado en GitHub afirma que la vulnerabilidad reside en una sola línea de código dentro de la funcionalidad central de la biblioteca de datos de formulario. Específicamente, la línea 347 del archivo form_data.js contiene el código problemático: límite += math.floor (math.random () * 10) .ToString (16);.


Esta implementación utiliza la función Math.random () de JavaScript, que genera números pseudo-aleatorios que son predecibles cuando un atacante puede observar valores secuenciales del mismo estado del generador de números pseudo-aleatorios (PRNG).

La biblioteca de datos de formulario crea transmisiones legibles de “multipart/formulario de forma” para enviar formularios y cargas de archivos a aplicaciones web.

Al generar límites para separar diferentes partes de datos multipart, la biblioteca se basa en los valores de Math.random () que pueden predecir los atacantes sofisticados.

Los investigadores de seguridad han demostrado que al observar otros valores de Math.Random () producidos por la aplicación objetivo, los atacantes pueden determinar el estado PRNG y predecir los valores de límites futuros con alta precisión.

La vulnerabilidad afecta a múltiples versiones del popular paquete NPM, incluidas versiones por debajo de 2.5.4, versiones 3.0.0 a 3.0.3 y versiones 4.0.0 a 4.0.3.

Esto representa una parte significativa de las aplicaciones utilizando la biblioteca de datos de formulario para manejar los envíos de formularios multipart y las cargas de archivos.

Para que una aplicación sea vulnerable, se deben cumplir dos condiciones: la aplicación debe usar datos de formulario para enviar datos controlados por el usuario a otros sistemas, y debe revelar valores de Math.random () a través de canales observables.

Los escenarios comunes incluyen aplicaciones que generan ID de solicitud utilizando Math.Random () para el rastreo distribuido, similar a la forma en que OperElemetry implementa la generación de ID aleatoria para la correlación en los sistemas frontend y backend.

La metodología de ataque refleja de cerca una vulnerabilidad recientemente descubierta en la biblioteca de clientes HTTP UNICI.

Los atacantes pueden crear cargas útiles que contienen valores de límite predichos seguidos de campos adicionales totalmente controlados por atacantes.

Esto omite efectivamente la desinfección de entrada y permite la inyección de parámetros arbitrarios en solicitudes de backend.

Dependiendo de cómo el sistema objetivo maneje los parámetros repetidos, los atacantes pueden agregar nuevos valores o sobrescribir los existentes por completo.

A la vulnerabilidad se le ha asignado una calificación de gravedad crítica con una puntuación base CVSS V4 que refleja un alto impacto tanto en la confidencialidad como en la integridad.

Biblioteca de datos de formato de productos para obtener productos de riesgo (paquete NPM)- Versiones <2.5.4- Versiones 3.0.0- 3.0.3- Versiones 4.0.0- 4.0.3Impact- Ataques de inyección de parámetros Código-Potencial Ejecución sobre Backend SystemSexPloit PREQUISITIS- Aplicación Utiliza el estado de formulario con el estado de datos de forma de formulario. Valores secuenciales: sistema de destino vulnerable a la manipulación de parámetros CVSS 4.0 puntuación9.4 (crítico)

Mitigación

Los parches se han lanzado en todas las ramas de la versión afectada de la biblioteca de datos de formulario.

Los usuarios deben actualizarse inmediatamente a la versión 4.0.4, 3.0.4 o 2.5.4, dependiendo de su versión principal actual.

Los parches reemplazan la implementación predecible de Math.random () con generación de números aleatorios criptográficamente seguros para la creación del valor límite.

Las organizaciones deben realizar un inventario inmediato de aplicaciones utilizando la biblioteca de datos de formulario y priorizar actualizaciones basadas en el riesgo de exposición.

Además, los equipos de seguridad deben revisar las aplicaciones para otras instancias en las que los valores de Math.random () podrían ser observables para los posibles atacantes, ya que esto representa una clase más amplia de vulnerabilidad más allá del problema de datos de forma específico.

Aumentar la detección, reducir la fatiga de alerta, acelerar la respuesta; Todo con una caja de arena interactiva construida para equipos de seguridad -> Prueba cualquiera.

Fuente de noticias