
Verstehe den Pfaddurchquerungsfehler im Tarfile-Modul von Python
Recientemente, un equipo de investigadores de seguridad ha anunciado el hallazgo de un fallo de hace quince años en la funcionalidad de extracción de archivos tar de Python. La vulnerabilidad fue revelada por primera vez en 2007 y rastreada como CVE-2007-4559. Se añadió una nota a la documentación oficial de Python, pero el fallo en sí quedó sin parchear.
Esta vulnerabilidad podría afectar a miles de proyectos de software y, sin embargo, mucha gente no está familiarizada con la situación o con cómo manejarla. Por eso, aquí en Secure Code Warriorte damos la oportunidad de simular la explotación de esta vulnerabilidad para que veas el impacto de primera mano y adquieras experiencia práctica en la mecánica de este error persistente, ¡para que puedas proteger mejor tu aplicación!
Pruebe ahora la Misión simulada.
La vulnerabilidad: el cruce de rutas durante la extracción de archivos tar
El cruce de rutas o directorios se produce cuando se utiliza una entrada de usuario no saneada para construir una ruta de archivo, lo que permite a un atacante acceder y sobrescribir archivos, e incluso ejecutar código arbitrario.
La vulnerabilidad existe en el módulo tarfile de Python. Un archivo tar (archivo de cinta) es un archivo único, llamado archivo. Agrupa múltiples archivos junto con sus metadatos, y normalmente se reconoce por tener la extensión .tar.gz o .tgz. Cada miembro del archivo puede ser representado por un objeto TarInfo, que contiene metadatos, como el nombre del archivo, la hora de modificación, la propiedad, etc.
El riesgo surge de la capacidad de los archivos para ser extraídos de nuevo.
Al ser extraído, cada miembro necesita una ruta para ser escrito. Esta ubicación se crea uniendo la ruta base con el nombre del archivo:

Una vez creada esta ruta, se pasa a la función tarfile.extract o tarfile.extractall para realizar la extracción:

El problema aquí es la falta de sanitización del nombre del archivo. Un atacante podría cambiar el nombre de los archivos para incluir caracteres de cruce de ruta, como la barra de puntos (../), lo que haría que el archivo saliera del directorio en el que debía estar y sobrescribiera archivos arbitrarios. Esto podría llevar eventualmente a la ejecución remota de código, lo cual es propicio para su explotación.
La vulnerabilidad aparece en otros escenarios, si se sabe identificar. Además del manejo de archivos tar por parte de Python, la vulnerabilidad existe en la extracción de archivos zip. Puede que estés familiarizado con esto bajo otro nombre, como la vulnerabilidad zip slip, ¡que se ha manifestado en otros lenguajes además de Python!
¿Cómo se puede mitigar el riesgo?
A pesar de que la vulnerabilidad se conoce desde hace años, los mantenedores de Python consideran que la funcionalidad de extracción hace lo que se supone que debe hacer. En este caso, algunos pueden decir que "es una característica, no un error". Por desgracia, los desarrolladores no siempre pueden evitar extraer archivos tar o zip de una fuente desconocida. Depende de ellos sanear la entrada no confiable para prevenir las vulnerabilidades de cruce de rutas como parte de las prácticas de desarrollo seguro.
¿Quiere saber más sobre cómo escribir código seguro y mitigar los riesgos con Python?
Pruebe gratis nuestro reto de Python.
Si está interesado en obtener más directrices de codificación gratuitas, consulte Secure Code Coach, que le ayudará a mantenerse al tanto de las prácticas de codificación seguras.


Vor Kurzem gab ein Team von Sicherheitsforschern bekannt, dass es einen fünfzehn Jahre alten Fehler in Pythons Tardatei-Extraktionsfunktion entdeckt hat. Die Sicherheitslücke wurde erstmals 2007 aufgedeckt und als CVE-2007-4559 registriert. Der offiziellen Python-Dokumentation wurde ein Hinweis hinzugefügt, aber der Fehler selbst blieb ungepatcht.

Secure Code Warrior a disposición de su empresa para ayudarle a proteger el código durante todo el ciclo de desarrollo de software y crear una cultura en la que la ciberseguridad sea una prioridad. Tanto si es responsable de seguridad de aplicaciones, desarrollador, responsable de seguridad de la información o cualquier otra persona relacionada con la seguridad, podemos ayudar a su empresa a reducir los riesgos asociados al código inseguro.
Reservar una demostraciónLaura Verheyde ist Softwareentwicklerin bei Secure Code Warrior und konzentriert sich auf die Erforschung von Sicherheitslücken und die Erstellung von Inhalten für Missions und Coding Labs.


Recientemente, un equipo de investigadores de seguridad ha anunciado el hallazgo de un fallo de hace quince años en la funcionalidad de extracción de archivos tar de Python. La vulnerabilidad fue revelada por primera vez en 2007 y rastreada como CVE-2007-4559. Se añadió una nota a la documentación oficial de Python, pero el fallo en sí quedó sin parchear.
Esta vulnerabilidad podría afectar a miles de proyectos de software y, sin embargo, mucha gente no está familiarizada con la situación o con cómo manejarla. Por eso, aquí en Secure Code Warriorte damos la oportunidad de simular la explotación de esta vulnerabilidad para que veas el impacto de primera mano y adquieras experiencia práctica en la mecánica de este error persistente, ¡para que puedas proteger mejor tu aplicación!
Pruebe ahora la Misión simulada.
La vulnerabilidad: el cruce de rutas durante la extracción de archivos tar
El cruce de rutas o directorios se produce cuando se utiliza una entrada de usuario no saneada para construir una ruta de archivo, lo que permite a un atacante acceder y sobrescribir archivos, e incluso ejecutar código arbitrario.
La vulnerabilidad existe en el módulo tarfile de Python. Un archivo tar (archivo de cinta) es un archivo único, llamado archivo. Agrupa múltiples archivos junto con sus metadatos, y normalmente se reconoce por tener la extensión .tar.gz o .tgz. Cada miembro del archivo puede ser representado por un objeto TarInfo, que contiene metadatos, como el nombre del archivo, la hora de modificación, la propiedad, etc.
El riesgo surge de la capacidad de los archivos para ser extraídos de nuevo.
Al ser extraído, cada miembro necesita una ruta para ser escrito. Esta ubicación se crea uniendo la ruta base con el nombre del archivo:

Una vez creada esta ruta, se pasa a la función tarfile.extract o tarfile.extractall para realizar la extracción:

El problema aquí es la falta de sanitización del nombre del archivo. Un atacante podría cambiar el nombre de los archivos para incluir caracteres de cruce de ruta, como la barra de puntos (../), lo que haría que el archivo saliera del directorio en el que debía estar y sobrescribiera archivos arbitrarios. Esto podría llevar eventualmente a la ejecución remota de código, lo cual es propicio para su explotación.
La vulnerabilidad aparece en otros escenarios, si se sabe identificar. Además del manejo de archivos tar por parte de Python, la vulnerabilidad existe en la extracción de archivos zip. Puede que estés familiarizado con esto bajo otro nombre, como la vulnerabilidad zip slip, ¡que se ha manifestado en otros lenguajes además de Python!
¿Cómo se puede mitigar el riesgo?
A pesar de que la vulnerabilidad se conoce desde hace años, los mantenedores de Python consideran que la funcionalidad de extracción hace lo que se supone que debe hacer. En este caso, algunos pueden decir que "es una característica, no un error". Por desgracia, los desarrolladores no siempre pueden evitar extraer archivos tar o zip de una fuente desconocida. Depende de ellos sanear la entrada no confiable para prevenir las vulnerabilidades de cruce de rutas como parte de las prácticas de desarrollo seguro.
¿Quiere saber más sobre cómo escribir código seguro y mitigar los riesgos con Python?
Pruebe gratis nuestro reto de Python.
Si está interesado en obtener más directrices de codificación gratuitas, consulte Secure Code Coach, que le ayudará a mantenerse al tanto de las prácticas de codificación seguras.

Recientemente, un equipo de investigadores de seguridad ha anunciado el hallazgo de un fallo de hace quince años en la funcionalidad de extracción de archivos tar de Python. La vulnerabilidad fue revelada por primera vez en 2007 y rastreada como CVE-2007-4559. Se añadió una nota a la documentación oficial de Python, pero el fallo en sí quedó sin parchear.
Esta vulnerabilidad podría afectar a miles de proyectos de software y, sin embargo, mucha gente no está familiarizada con la situación o con cómo manejarla. Por eso, aquí en Secure Code Warriorte damos la oportunidad de simular la explotación de esta vulnerabilidad para que veas el impacto de primera mano y adquieras experiencia práctica en la mecánica de este error persistente, ¡para que puedas proteger mejor tu aplicación!
Pruebe ahora la Misión simulada.
La vulnerabilidad: el cruce de rutas durante la extracción de archivos tar
El cruce de rutas o directorios se produce cuando se utiliza una entrada de usuario no saneada para construir una ruta de archivo, lo que permite a un atacante acceder y sobrescribir archivos, e incluso ejecutar código arbitrario.
La vulnerabilidad existe en el módulo tarfile de Python. Un archivo tar (archivo de cinta) es un archivo único, llamado archivo. Agrupa múltiples archivos junto con sus metadatos, y normalmente se reconoce por tener la extensión .tar.gz o .tgz. Cada miembro del archivo puede ser representado por un objeto TarInfo, que contiene metadatos, como el nombre del archivo, la hora de modificación, la propiedad, etc.
El riesgo surge de la capacidad de los archivos para ser extraídos de nuevo.
Al ser extraído, cada miembro necesita una ruta para ser escrito. Esta ubicación se crea uniendo la ruta base con el nombre del archivo:

Una vez creada esta ruta, se pasa a la función tarfile.extract o tarfile.extractall para realizar la extracción:

El problema aquí es la falta de sanitización del nombre del archivo. Un atacante podría cambiar el nombre de los archivos para incluir caracteres de cruce de ruta, como la barra de puntos (../), lo que haría que el archivo saliera del directorio en el que debía estar y sobrescribiera archivos arbitrarios. Esto podría llevar eventualmente a la ejecución remota de código, lo cual es propicio para su explotación.
La vulnerabilidad aparece en otros escenarios, si se sabe identificar. Además del manejo de archivos tar por parte de Python, la vulnerabilidad existe en la extracción de archivos zip. Puede que estés familiarizado con esto bajo otro nombre, como la vulnerabilidad zip slip, ¡que se ha manifestado en otros lenguajes además de Python!
¿Cómo se puede mitigar el riesgo?
A pesar de que la vulnerabilidad se conoce desde hace años, los mantenedores de Python consideran que la funcionalidad de extracción hace lo que se supone que debe hacer. En este caso, algunos pueden decir que "es una característica, no un error". Por desgracia, los desarrolladores no siempre pueden evitar extraer archivos tar o zip de una fuente desconocida. Depende de ellos sanear la entrada no confiable para prevenir las vulnerabilidades de cruce de rutas como parte de las prácticas de desarrollo seguro.
¿Quiere saber más sobre cómo escribir código seguro y mitigar los riesgos con Python?
Pruebe gratis nuestro reto de Python.
Si está interesado en obtener más directrices de codificación gratuitas, consulte Secure Code Coach, que le ayudará a mantenerse al tanto de las prácticas de codificación seguras.

Haga clic en el enlace de abajo y descargue el PDF de este recurso.
Secure Code Warrior a disposición de su empresa para ayudarle a proteger el código durante todo el ciclo de desarrollo de software y crear una cultura en la que la ciberseguridad sea una prioridad. Tanto si es responsable de seguridad de aplicaciones, desarrollador, responsable de seguridad de la información o cualquier otra persona relacionada con la seguridad, podemos ayudar a su empresa a reducir los riesgos asociados al código inseguro.
Ver informeReservar una demostraciónLaura Verheyde ist Softwareentwicklerin bei Secure Code Warrior und konzentriert sich auf die Erforschung von Sicherheitslücken und die Erstellung von Inhalten für Missions und Coding Labs.
Recientemente, un equipo de investigadores de seguridad ha anunciado el hallazgo de un fallo de hace quince años en la funcionalidad de extracción de archivos tar de Python. La vulnerabilidad fue revelada por primera vez en 2007 y rastreada como CVE-2007-4559. Se añadió una nota a la documentación oficial de Python, pero el fallo en sí quedó sin parchear.
Esta vulnerabilidad podría afectar a miles de proyectos de software y, sin embargo, mucha gente no está familiarizada con la situación o con cómo manejarla. Por eso, aquí en Secure Code Warriorte damos la oportunidad de simular la explotación de esta vulnerabilidad para que veas el impacto de primera mano y adquieras experiencia práctica en la mecánica de este error persistente, ¡para que puedas proteger mejor tu aplicación!
Pruebe ahora la Misión simulada.
La vulnerabilidad: el cruce de rutas durante la extracción de archivos tar
El cruce de rutas o directorios se produce cuando se utiliza una entrada de usuario no saneada para construir una ruta de archivo, lo que permite a un atacante acceder y sobrescribir archivos, e incluso ejecutar código arbitrario.
La vulnerabilidad existe en el módulo tarfile de Python. Un archivo tar (archivo de cinta) es un archivo único, llamado archivo. Agrupa múltiples archivos junto con sus metadatos, y normalmente se reconoce por tener la extensión .tar.gz o .tgz. Cada miembro del archivo puede ser representado por un objeto TarInfo, que contiene metadatos, como el nombre del archivo, la hora de modificación, la propiedad, etc.
El riesgo surge de la capacidad de los archivos para ser extraídos de nuevo.
Al ser extraído, cada miembro necesita una ruta para ser escrito. Esta ubicación se crea uniendo la ruta base con el nombre del archivo:

Una vez creada esta ruta, se pasa a la función tarfile.extract o tarfile.extractall para realizar la extracción:

El problema aquí es la falta de sanitización del nombre del archivo. Un atacante podría cambiar el nombre de los archivos para incluir caracteres de cruce de ruta, como la barra de puntos (../), lo que haría que el archivo saliera del directorio en el que debía estar y sobrescribiera archivos arbitrarios. Esto podría llevar eventualmente a la ejecución remota de código, lo cual es propicio para su explotación.
La vulnerabilidad aparece en otros escenarios, si se sabe identificar. Además del manejo de archivos tar por parte de Python, la vulnerabilidad existe en la extracción de archivos zip. Puede que estés familiarizado con esto bajo otro nombre, como la vulnerabilidad zip slip, ¡que se ha manifestado en otros lenguajes además de Python!
¿Cómo se puede mitigar el riesgo?
A pesar de que la vulnerabilidad se conoce desde hace años, los mantenedores de Python consideran que la funcionalidad de extracción hace lo que se supone que debe hacer. En este caso, algunos pueden decir que "es una característica, no un error". Por desgracia, los desarrolladores no siempre pueden evitar extraer archivos tar o zip de una fuente desconocida. Depende de ellos sanear la entrada no confiable para prevenir las vulnerabilidades de cruce de rutas como parte de las prácticas de desarrollo seguro.
¿Quiere saber más sobre cómo escribir código seguro y mitigar los riesgos con Python?
Pruebe gratis nuestro reto de Python.
Si está interesado en obtener más directrices de codificación gratuitas, consulte Secure Code Coach, que le ayudará a mantenerse al tanto de las prácticas de codificación seguras.
Índice

Secure Code Warrior a disposición de su empresa para ayudarle a proteger el código durante todo el ciclo de desarrollo de software y crear una cultura en la que la ciberseguridad sea una prioridad. Tanto si es responsable de seguridad de aplicaciones, desarrollador, responsable de seguridad de la información o cualquier otra persona relacionada con la seguridad, podemos ayudar a su empresa a reducir los riesgos asociados al código inseguro.
Reservar una demostraciónDescargarRecursos para 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)