
Comprender los errores de recorrido de rutas en el módulo tarfile de Python
Recientemente, un grupo de investigadores de seguridad anunció que había descubierto un error de quince años de antigüedad en la función de extracción de archivos tar de Python. La vulnerabilidad se reveló por primera vez en 2007 y se identificó con el número CVE-2007-4559. Se añadió una nota en la documentación oficial de Python, pero el error en sí no se corrigió.
Esta vulnerabilidad puede afectar a miles de proyectos de software, pero muchas personas no están familiarizadas con la situación ni saben cómo abordarla. Por eso, en Security Code Warrior, le ofrecemosla oportunidad de simular personalmente el aprovechamiento de esta vulnerabilidad para que pueda ver sus efectos con sus propios ojos y experimentar de primera mano el mecanismo de este error persistente, ¡de modo que pueda proteger mejor sus aplicaciones!
Prueba la simulación Misión ahora.
Vulnerabilidad: Recorrido de rutas durante la extracción de archivos tar
Cuando se utilizan entradas de usuario sin revisar para construir rutas de archivo, se produce un recorrido de rutas o directorios, lo que permite a los atacantes obtener acceso y sobrescribir archivos, o incluso ejecutar código arbitrario.
La vulnerabilidad se encuentra en el módulo tarfile de Python. Los archivos tar (archivos de cinta) son archivos únicos denominados «archivos». Agrupan varios archivos y sus metadatos, y suelen identificarse con la extensión .tar.gz o .tgz. Cada miembro del archivo puede representarse con un objeto TarInfo, que contiene metadatos como el nombre del archivo, la hora de modificación, la propiedad, etc.
El riesgo proviene de la posibilidad de volver a extraer los archivos.
Al extraer, cada miembro debe escribir la ruta. Esta ubicación se crea conectando la ruta básica con el nombre del archivo:

Una vez creada esta ruta, se pasará a tarfile.extra o tarfile.extall para ejecutar la función de extracción:

El problema aquí es la falta de limpieza de los nombres de los archivos. Los atacantes pueden renombrar los archivos para incluir caracteres de recorrido de ruta, como barras inclinadas (../), lo que provocará que los archivos se salgan del directorio en el que deberían estar y sobrescriban cualquier archivo. Esto podría acabar provocando la ejecución remota de código, y el momento para aprovecharlo ya ha llegado.
Si sabes cómo identificar esta vulnerabilidad, verás que aparece en otros contextos. Además del procesamiento de archivos tar por parte de Python, esta vulnerabilidad también existe en la extracción de archivos zip. Quizás la conozcas con otro nombre, como «vulnerabilidad de archivos comprimidos», ¡que ya se ha reflejado en otros lenguajes además de Python!
¿Cómo reducir el riesgo?
Aunque esta vulnerabilidad se conoce desde hace años, los mantenedores de Python siguen considerando que la función de extracción funciona como debería. En este caso, se podría argumentar que «se trata de una función, no de un error». Por desgracia, los desarrolladores no siempre pueden evitar extraer archivos tar o zip de fuentes desconocidas. Como parte de las prácticas de desarrollo seguro, tienen la responsabilidad de limpiar las entradas no fiables para evitar vulnerabilidades de recorrido de rutas.
¿Quieres saber más sobre cómo escribir código seguro y reducir riesgos con Python?
Prueba nuestro desafío gratuito de Python.
Si está interesado en obtener más guías de programación gratuitas, consulte el Entrenador de código seguro para dominar las prácticas de codificación segura.


Recientemente, un grupo de investigadores de seguridad anunció que había descubierto un error de quince años de antigüedad en la función de extracción de archivos tar de Python. La vulnerabilidad se reveló por primera vez en 2007 y se rastreó como CVE-2007-4559. Se añadió una nota en la documentación oficial de Python, pero el error en sí no se corrigió.

Secure Code Warrior puede ayudar a su organización a proteger el código a lo largo de todo el ciclo de vida del desarrollo de software y a crear una cultura que dé prioridad a la ciberseguridad. Tanto si es usted responsable de seguridad de aplicaciones, desarrollador, director de seguridad de la información o cualquier otra persona relacionada con la seguridad, podemos ayudar a su organización a reducir los riesgos asociados al código inseguro.
Reservar una demostraciónLaura Verheyde es una desarrolladora de software en Secure Code Warrior centrada en la investigación de vulnerabilidades y la creación de contenidos para Missions y Coding labs.


Recientemente, un grupo de investigadores de seguridad anunció que había descubierto un error de quince años de antigüedad en la función de extracción de archivos tar de Python. La vulnerabilidad se reveló por primera vez en 2007 y se identificó con el número CVE-2007-4559. Se añadió una nota en la documentación oficial de Python, pero el error en sí no se corrigió.
Esta vulnerabilidad puede afectar a miles de proyectos de software, pero muchas personas no están familiarizadas con la situación ni saben cómo abordarla. Por eso, en Security Code Warrior, le ofrecemosla oportunidad de simular personalmente el aprovechamiento de esta vulnerabilidad para que pueda ver sus efectos con sus propios ojos y experimentar de primera mano el mecanismo de este error persistente, ¡de modo que pueda proteger mejor sus aplicaciones!
Prueba la simulación Misión ahora.
Vulnerabilidad: Recorrido de rutas durante la extracción de archivos tar
Cuando se utilizan entradas de usuario sin revisar para construir rutas de archivo, se produce un recorrido de rutas o directorios, lo que permite a los atacantes obtener acceso y sobrescribir archivos, o incluso ejecutar código arbitrario.
La vulnerabilidad se encuentra en el módulo tarfile de Python. Los archivos tar (archivos de cinta) son archivos únicos denominados «archivos». Agrupan varios archivos y sus metadatos, y suelen identificarse con la extensión .tar.gz o .tgz. Cada miembro del archivo puede representarse con un objeto TarInfo, que contiene metadatos como el nombre del archivo, la hora de modificación, la propiedad, etc.
El riesgo proviene de la posibilidad de volver a extraer los archivos.
Al extraer, cada miembro debe escribir la ruta. Esta ubicación se crea conectando la ruta básica con el nombre del archivo:

Una vez creada esta ruta, se pasará a tarfile.extra o tarfile.extall para ejecutar la función de extracción:

El problema aquí es la falta de limpieza de los nombres de los archivos. Los atacantes pueden renombrar los archivos para incluir caracteres de recorrido de ruta, como barras inclinadas (../), lo que provocará que los archivos se salgan del directorio en el que deberían estar y sobrescriban cualquier archivo. Esto podría acabar provocando la ejecución remota de código, y el momento para aprovecharlo ya ha llegado.
Si sabes cómo identificar esta vulnerabilidad, verás que aparece en otros contextos. Además del procesamiento de archivos tar por parte de Python, esta vulnerabilidad también existe en la extracción de archivos zip. Quizás la conozcas con otro nombre, como «vulnerabilidad de archivos comprimidos», ¡que ya se ha reflejado en otros lenguajes además de Python!
¿Cómo reducir el riesgo?
Aunque esta vulnerabilidad se conoce desde hace años, los mantenedores de Python siguen considerando que la función de extracción funciona como debería. En este caso, se podría argumentar que «se trata de una función, no de un error». Por desgracia, los desarrolladores no siempre pueden evitar extraer archivos tar o zip de fuentes desconocidas. Como parte de las prácticas de desarrollo seguro, tienen la responsabilidad de limpiar las entradas no fiables para evitar vulnerabilidades de recorrido de rutas.
¿Quieres saber más sobre cómo escribir código seguro y reducir riesgos con Python?
Prueba nuestro desafío gratuito de Python.
Si está interesado en obtener más guías de programación gratuitas, consulte el Entrenador de código seguro para dominar las prácticas de codificación segura.

Recientemente, un grupo de investigadores de seguridad anunció que había descubierto un error de quince años de antigüedad en la función de extracción de archivos tar de Python. La vulnerabilidad se reveló por primera vez en 2007 y se identificó con el número CVE-2007-4559. Se añadió una nota en la documentación oficial de Python, pero el error en sí no se corrigió.
Esta vulnerabilidad puede afectar a miles de proyectos de software, pero muchas personas no están familiarizadas con la situación ni saben cómo abordarla. Por eso, en Security Code Warrior, le ofrecemosla oportunidad de simular personalmente el aprovechamiento de esta vulnerabilidad para que pueda ver sus efectos con sus propios ojos y experimentar de primera mano el mecanismo de este error persistente, ¡de modo que pueda proteger mejor sus aplicaciones!
Prueba la simulación Misión ahora.
Vulnerabilidad: Recorrido de rutas durante la extracción de archivos tar
Cuando se utilizan entradas de usuario sin revisar para construir rutas de archivo, se produce un recorrido de rutas o directorios, lo que permite a los atacantes obtener acceso y sobrescribir archivos, o incluso ejecutar código arbitrario.
La vulnerabilidad se encuentra en el módulo tarfile de Python. Los archivos tar (archivos de cinta) son archivos únicos denominados «archivos». Agrupan varios archivos y sus metadatos, y suelen identificarse con la extensión .tar.gz o .tgz. Cada miembro del archivo puede representarse con un objeto TarInfo, que contiene metadatos como el nombre del archivo, la hora de modificación, la propiedad, etc.
El riesgo proviene de la posibilidad de volver a extraer los archivos.
Al extraer, cada miembro debe escribir la ruta. Esta ubicación se crea conectando la ruta básica con el nombre del archivo:

Una vez creada esta ruta, se pasará a tarfile.extra o tarfile.extall para ejecutar la función de extracción:

El problema aquí es la falta de limpieza de los nombres de los archivos. Los atacantes pueden renombrar los archivos para incluir caracteres de recorrido de ruta, como barras inclinadas (../), lo que provocará que los archivos se salgan del directorio en el que deberían estar y sobrescriban cualquier archivo. Esto podría acabar provocando la ejecución remota de código, y el momento para aprovecharlo ya ha llegado.
Si sabes cómo identificar esta vulnerabilidad, verás que aparece en otros contextos. Además del procesamiento de archivos tar por parte de Python, esta vulnerabilidad también existe en la extracción de archivos zip. Quizás la conozcas con otro nombre, como «vulnerabilidad de archivos comprimidos», ¡que ya se ha reflejado en otros lenguajes además de Python!
¿Cómo reducir el riesgo?
Aunque esta vulnerabilidad se conoce desde hace años, los mantenedores de Python siguen considerando que la función de extracción funciona como debería. En este caso, se podría argumentar que «se trata de una función, no de un error». Por desgracia, los desarrolladores no siempre pueden evitar extraer archivos tar o zip de fuentes desconocidas. Como parte de las prácticas de desarrollo seguro, tienen la responsabilidad de limpiar las entradas no fiables para evitar vulnerabilidades de recorrido de rutas.
¿Quieres saber más sobre cómo escribir código seguro y reducir riesgos con Python?
Prueba nuestro desafío gratuito de Python.
Si está interesado en obtener más guías de programación gratuitas, consulte el Entrenador de código seguro para dominar las prácticas de codificación segura.

Haga clic en el siguiente enlace y descargue el PDF de este recurso.
Secure Code Warrior puede ayudar a su organización a proteger el código a lo largo de todo el ciclo de vida del desarrollo de software y a crear una cultura que dé prioridad a la ciberseguridad. Tanto si es usted responsable de seguridad de aplicaciones, desarrollador, director de seguridad de la información o cualquier otra persona relacionada con la seguridad, podemos ayudar a su organización a reducir los riesgos asociados al código inseguro.
Ver informeReservar una demostraciónLaura Verheyde es una desarrolladora de software en Secure Code Warrior centrada en la investigación de vulnerabilidades y la creación de contenidos para Missions y Coding labs.
Recientemente, un grupo de investigadores de seguridad anunció que había descubierto un error de quince años de antigüedad en la función de extracción de archivos tar de Python. La vulnerabilidad se reveló por primera vez en 2007 y se identificó con el número CVE-2007-4559. Se añadió una nota en la documentación oficial de Python, pero el error en sí no se corrigió.
Esta vulnerabilidad puede afectar a miles de proyectos de software, pero muchas personas no están familiarizadas con la situación ni saben cómo abordarla. Por eso, en Security Code Warrior, le ofrecemosla oportunidad de simular personalmente el aprovechamiento de esta vulnerabilidad para que pueda ver sus efectos con sus propios ojos y experimentar de primera mano el mecanismo de este error persistente, ¡de modo que pueda proteger mejor sus aplicaciones!
Prueba la simulación Misión ahora.
Vulnerabilidad: Recorrido de rutas durante la extracción de archivos tar
Cuando se utilizan entradas de usuario sin revisar para construir rutas de archivo, se produce un recorrido de rutas o directorios, lo que permite a los atacantes obtener acceso y sobrescribir archivos, o incluso ejecutar código arbitrario.
La vulnerabilidad se encuentra en el módulo tarfile de Python. Los archivos tar (archivos de cinta) son archivos únicos denominados «archivos». Agrupan varios archivos y sus metadatos, y suelen identificarse con la extensión .tar.gz o .tgz. Cada miembro del archivo puede representarse con un objeto TarInfo, que contiene metadatos como el nombre del archivo, la hora de modificación, la propiedad, etc.
El riesgo proviene de la posibilidad de volver a extraer los archivos.
Al extraer, cada miembro debe escribir la ruta. Esta ubicación se crea conectando la ruta básica con el nombre del archivo:

Una vez creada esta ruta, se pasará a tarfile.extra o tarfile.extall para ejecutar la función de extracción:

El problema aquí es la falta de limpieza de los nombres de los archivos. Los atacantes pueden renombrar los archivos para incluir caracteres de recorrido de ruta, como barras inclinadas (../), lo que provocará que los archivos se salgan del directorio en el que deberían estar y sobrescriban cualquier archivo. Esto podría acabar provocando la ejecución remota de código, y el momento para aprovecharlo ya ha llegado.
Si sabes cómo identificar esta vulnerabilidad, verás que aparece en otros contextos. Además del procesamiento de archivos tar por parte de Python, esta vulnerabilidad también existe en la extracción de archivos zip. Quizás la conozcas con otro nombre, como «vulnerabilidad de archivos comprimidos», ¡que ya se ha reflejado en otros lenguajes además de Python!
¿Cómo reducir el riesgo?
Aunque esta vulnerabilidad se conoce desde hace años, los mantenedores de Python siguen considerando que la función de extracción funciona como debería. En este caso, se podría argumentar que «se trata de una función, no de un error». Por desgracia, los desarrolladores no siempre pueden evitar extraer archivos tar o zip de fuentes desconocidas. Como parte de las prácticas de desarrollo seguro, tienen la responsabilidad de limpiar las entradas no fiables para evitar vulnerabilidades de recorrido de rutas.
¿Quieres saber más sobre cómo escribir código seguro y reducir riesgos con Python?
Prueba nuestro desafío gratuito de Python.
Si está interesado en obtener más guías de programación gratuitas, consulte el Entrenador de código seguro para dominar las prácticas de codificación segura.
Índice

Secure Code Warrior puede ayudar a su organización a proteger el código a lo largo de todo el ciclo de vida del desarrollo de software y a crear una cultura que dé prioridad a la ciberseguridad. Tanto si es usted responsable de seguridad de aplicaciones, desarrollador, director de seguridad de la información o cualquier otra persona relacionada con la seguridad, podemos ayudar a su organización a reducir los riesgos asociados al código inseguro.
Reservar una demostraciónDescargarRecursos para ayudarle a empezar
Trust Agent:AI - Secure and scale AI-Drive development
AI is writing code. Who’s governing it? With up to 50% of AI-generated code containing security weaknesses, managing AI risk is critical. Discover how SCW's Trust Agent: AI provides the real-time visibility, proactive governance, and targeted upskilling needed to scale AI-driven development securely.
El poder de la seguridad de aplicaciones OpenText + Secure Code Warrior
OpenText Application Security and Secure Code Warrior combine vulnerability detection with AI Software Governance and developer capability. Together, they help organizations reduce risk, strengthen secure coding practices, and confidently adopt AI-driven development.
Secure Code Warrior corporate overview
Secure Code Warrior is an AI Software Governance platform designed to enable organizations to safely adopt AI-driven development by bridging the gap between development velocity and enterprise security. The platform addresses the "Visibility Gap," where security teams often lack insights into shadow AI coding tools and the origins of production code.




.png)