Han surgido detalles sobre una falla de seguridad crítica ahora parcheada en el popular paquete npm «@react-native-community/cli» que podría explotarse para ejecutar comandos maliciosos del sistema operativo (SO) bajo ciertas condiciones.
«La vulnerabilidad permite a atacantes remotos no autenticados activar fácilmente la ejecución arbitraria de comandos del sistema operativo en la máquina que ejecuta el servidor de desarrollo de reaccionar-native-community/cli, lo que representa un riesgo significativo para los desarrolladores», dijo el investigador senior de seguridad de JFrog, Or Peles, en un informe compartido con The Hacker News.
La vulnerabilidad, rastreada como CVE-2025-11953, lleva una puntuación CVSS de 9,8 de un máximo de 10,0, lo que indica una gravedad crítica. También afecta a las versiones del paquete «@react-native-community/cli-server-api» 4.8.0 a 20.0.0-alpha.2, y se ha parcheado en la versión 20.0.0 lanzada a principios del mes pasado.
El paquete de herramientas de línea de comandos, mantenido por Meta, permite a los desarrolladores crear aplicaciones móviles React Native. Recibe aproximadamente entre 1,5 y 2 millones de descargas por semana.
Según la empresa de seguridad de la cadena de suministro de software, la vulnerabilidad surge del hecho de que el servidor de desarrollo Metro utilizado por React Native para crear código y activos JavaScript se vincula a interfaces externas de forma predeterminada (en lugar de localhost) y expone un punto final «/open-url» que es susceptible a la inyección de comandos del sistema operativo.
«El punto final ‘/open-url’ del servidor maneja una solicitud POST que incluye un valor de entrada del usuario que se pasa a la función open() insegura proporcionada por el paquete open NPM, lo que provocará la ejecución del comando del sistema operativo», dijo Peles.
Como resultado, un atacante de red no autenticado podría convertir la falla en un arma para enviar una solicitud POST especialmente diseñada al servidor y ejecutar comandos arbitrarios. En Windows, los atacantes también pueden ejecutar comandos de shell arbitrarios con argumentos totalmente controlados, mientras que en Linux y macOS, se puede abusar de ellos para ejecutar archivos binarios arbitrarios con control de parámetros limitado.
Si bien el problema ya se solucionó, los desarrolladores que usan React Native con un marco que no depende de Metro como servidor de desarrollo no se ven afectados.
«Esta vulnerabilidad de día cero es particularmente peligrosa debido a su facilidad de explotación, la falta de requisitos de autenticación y su amplia superficie de ataque», afirmó Peles. «También expone los riesgos críticos ocultos en el código de terceros».
«Para los equipos de desarrollo y seguridad, esto subraya la necesidad de un análisis de seguridad integral y automatizado en toda la cadena de suministro de software para garantizar que los fallos fácilmente explotables se solucionen antes de que afecten a su organización».