Un error en Python que lleva 15 años sin parchear

Rubén Castro, 23 septiembre 2022

Una vulnerabilidad de Python descubierta en 2007 podría permitir la ejecución de código en 355.000 proyectos.

El fallo de Python cumple 15 años

Un problema en Python que no ha sido parcheado supone un riesgo para decenas de miles de proyectos. La CVE-2007-4559 se descubrió hace 15 años, pero como se consideró una vulnerabilidad de bajo riesgo, nunca se parcheó (aunque se emitió una advertencia a los desarrolladores sobre el fallo).

Los métodos “extract” y “extractall” de Python son vulnerables a la vulnerabilidad CVE-2007-4559. Al transmitir un archivo tar malicioso, los malos actores tienen la capacidad de reemplazar los archivos que quieran. Este archivo tar puede ser ejecutado para tomar el control de un dispositivo si así lo desean.

Más de 350.000 proyectos de código abierto y de código cerrado están afectados por la vulnerabilidad CVE-2007-4559, que permite atravesar rutas arbitrarias.

La vulnerabilidad en Python fue redescubierta en 2022

Esta vulnerabilidad de Python fue redescubierta en 2022 por Kasimir Schulz, un investigador de vulnerabilidades de Trellix, mientras investigaba otro problema. La vulnerabilidad CVE-2007-4559, que inicialmente se pensó que era un nuevo fallo de día cero, fue reintroducida por Schulz. Sin embargo, se trataba de un fallo que había estado en Python durante los últimos 15 años.

Trellix informó al público a través de un tweet sobre el fallo de seguridad en los sistemas basados en Python.

Tras el redescubrimiento, Trellix desarrolló parches para unos 11.000 proyectos diferentes, y se prevé que se desarrollen muchos más en las próximas semanas. Creosote es una aplicación de software libre que puede comprobar la vulnerabilidad CVE-2007-4559 del archivo tar que fue publicada por Trellix.

Rubén Castro

Redactor

Apasionado de explorar y diseccionar lo último en tecnología. Tengo mucha experiencia en el mundo de los ordenadores y el gaming, aunque también me gustan todos los tipos de gadgets.

Consentimiento