14 de septiembre de 2026

SOCaaS

Centro de Operaciones de Seguridad como servicio

Los errores de programación de R exponen a las empresas a un enorme riesgo en la cadena de suministro


Una vulnerabilidad de alta gravedad en un proceso del lenguaje de programación R podría exponer a las empresas que utilizan el popular lenguaje de código abierto a ataques a través de la cadena de suministro de software.

La vulnerabilidad, asignado CVE-2024-27322tiene una puntuación de gravedad CVSS de 8,8 sobre 10. Este es el proceso de R de deserializar datos o convertir objetos codificados en formatos como JSON, XML y binario a su forma original para su uso en una aplicación o programa.

R está relativamente extendido Lenguaje para cálculos estadísticos. y aplicaciones gráficas. Es popular entre los desarrolladores de industrias como Servicios financieros, atención sanitaria, investigación, gobierno. y en entornos de grandes conjuntos de datos, como la inteligencia artificial y el aprendizaje automático. El Red integral de archivos R (CRAN), el repositorio de paquetes R más popular, actualmente alberga más de 20.000 paquetes. Forja Run sitio web que proporciona herramientas de desarrollo para paquetes R tiene más de 15.800 miembros registrados y alberga alrededor de 2.146 proyectos.

Problema de deserialización

Los investigadores de HiddenLayer han descubierto una vulnerabilidad en el proceso R que permite a los atacantes ejecutar código arbitrario en el entorno de una víctima a través de un archivo RDS (R Data Serialization) especialmente diseñado. Los programadores suelen utilizar archivos RDS para almacenar objetos en R para usarlos en el futuro o compartirlos con otros.

«Esta vulnerabilidad puede explotarse cargando archivos RDS o paquetes R, que comúnmente se comparten entre desarrolladores y científicos de datos», dijeron los investigadores de HiddenLayer Kasimir Schulz y Kieran Evans en un Informe esta semana. «Un atacante puede crear archivos RDS maliciosos o paquetes R que contengan código R arbitrario incrustado que se ejecuta al interactuar en el dispositivo objetivo de la víctima», dice el informe.

Los mantenedores de R solucionaron el problema. R versión 4.4.0 después de que HiddenLayer les informara del problema.

Una promesa perezosa hace posible hacer retoques

La vulnerabilidad de R descubierta por HiddenLayer está relacionada con dos conceptos fundamentales en R llamados “Evaluación diferida” y “Objetos de promesa”. Revisión perezosa es una técnica de programación en la que un programa R no evalúa una expresión o variable hasta que realmente se requiere o cuando se accede a ella directamente. El objetivo es mejorar el rendimiento evitando cálculos en expresiones que al final pueden no ser necesarias. Un objeto de promesa está estrechamente relacionado con la evaluación diferida y representa el objeto cuya evaluación se ha retrasado.

Lo que los investigadores de HiddenLayer descubrieron fue una forma de crear un objeto Promise con una carga útil que ejecuta el código de su elección cuando se accede al objeto durante la deserialización del archivo RDS.

«Los paquetes R utilizan el formato RDS para almacenar y cargar datos», dice HiddenLayer. Dos archivos que facilitan este proceso son un archivo .rdb que contiene todos los objetos serializados que se incluirán en un paquete y un archivo .rdx que contiene metadatos sobre cada uno de los objetos.

«Cuando se carga un paquete, los metadatos almacenados en formato RDS en el archivo .rdx se utilizan para localizar los objetos en el archivo .rdb», dice el análisis. A continuación, se deserializan los objetos de los archivos .rdb.

«Un atacante puede aprovechar esto creando un archivo RDS que contenga un objeto Promise especialmente diseñado con código arbitrario incrustado», le dice Schulz a Dark Reading. «Debido a la forma en que R implementa la evaluación diferida, el código arbitrario incorporado se ejecutará una vez que un usuario haya cargado el archivo o paquete malicioso. Un atacante puede agregar con relativa facilidad un paquete de armas a un repositorio de R como CRAN y simplemente esperar a que llegue un mensaje». usuario descuidado para cargar ese paquete.

Superficie de ataque potencialmente grande: múltiples fuentes de infección

Hay literalmente docenas de centros importantes como R-Forget y bioconductor, que los desarrolladores de R utilizan para compartir y descargar paquetes. Estos centros no sólo brindan a los desarrolladores acceso a miles de paquetes, sino que algunos, como Bioconductor, con más de 42 millones de descargas, también se utilizan regularmente, dice Schulz. «Alguien simplemente tiene que explotar la vulnerabilidad y el vasto espacio de código abierto para que los paquetes R impacten a miles de usuarios intermedios en un ataque potencialmente masivo a la cadena de suministro», afirma.

Schulz recomienda que las organizaciones pasen a la última versión de R para mitigar el riesgo: “Además, las organizaciones deben asegurarse de que los usuarios de R estén conscientes de las vulnerabilidades actuales y futuras potenciales de este tipo y establecer como política el uso solo de archivos y archivos conocidos y confiables. paquetes a utilizar.» .»





Nos llegó este contenido de ciberseguridad de: DarkReading

Encontrarás la noticia original en el enlace que se encuentra a continuación: https://www.darkreading.com/application-security/r-programming-language-exposes-orgs-to-supply-chain-risk

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *