
Comprenda el error de recorrido de rutas en el módulo tar file de Python
Recientemente, un equipo de investigadores de seguridad anunció el hallazgo de un error de hace quince años en la funcionalidad de extracción de archivos tar de Python. La vulnerabilidad se reveló por primera vez en 2007 y se rastreó como CVE2007-4559. Se agregó una nota a la documentación oficial de Python, pero el error en sí no se corrigió.
Esta vulnerabilidad podría afectar a miles de proyectos de software, pero muchas personas no están familiarizadas con la situación ni con la forma de manejarla. Por eso, aquí en Secure Code Warrior, te damos la oportunidad de simular tú mismo la explotación de esta vulnerabilidad para ver el impacto de primera mano y obtener experiencia práctica en la mecánica de este error persistente, ¡para que puedas proteger mejor tu aplicación!
Prueba ahora el simulacro Misión.
La vulnerabilidad: recorrido de ruta durante la extracción del archivo tar
El recorrido de rutas o directorios se produce cuando se utilizan entradas de usuario no desinfectadas para construir una ruta de archivo, lo que permite a un atacante acceder a los archivos y sobrescribirlos, e incluso ejecutar código arbitrario.
La vulnerabilidad existe en el módulo tar de Python. Un archivo tar (archivo de cinta) es un archivo único, llamado archivo. Combina varios archivos junto con sus metadatos y, por lo general, se reconoce por tener la extensión .tar.gz o .tgz. Cada miembro del archivo puede estar representado por un objeto TAR Information, que contiene metadatos, como el nombre del archivo, la hora de modificación, la propiedad, etc.
El riesgo proviene de la capacidad de los archivos para volver a extraerse.
Cuando se extrae, cada miembro necesita una ruta en la que escribir. Esta ubicación se crea uniendo la ruta base con el nombre del archivo:

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

El problema aquí es la falta de desinfección del nombre del archivo. Un atacante podría cambiar el nombre de los archivos para incluir caracteres que recorran rutas, como punto y punto/barra oblicua (../), lo que haría que el archivo saliera del directorio en el que estaba destinado y sobrescribiera archivos arbitrarios. Con el tiempo, esto podría conducir a la ejecución remota de código, lo que está listo para ser explotado.
La vulnerabilidad aparece en otros escenarios, si sabe cómo identificarla. Además de la gestión de los archivos tar por parte de Python, la vulnerabilidad existe en la extracción de archivos zip. Es posible que esté familiarizado con esto con otro nombre, como vulnerabilidad zip slip, ¡que se ha manifestado en otros lenguajes además de Python!
¿Cómo 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 está funcionando como se supone que debe hacerlo. En este caso, algunos pueden decir que «es una función, no un error». Desafortunadamente, los desarrolladores no siempre pueden evitar extraer archivos tar o zip de una fuente desconocida. Como parte de las prácticas de desarrollo seguro, son ellos los que tienen que desinfectar la información que no es de confianza para evitar que las vulnerabilidades se desvíen de rutas.
¿Quieres obtener más información sobre cómo escribir código seguro y mitigar los riesgos con Python?
Prueba nuestro desafío Python gratis.
Si estás interesado en obtener más pautas de codificación gratuitas, consulta Entrenador de código seguro para ayudarte a mantenerte al tanto de las prácticas de codificación seguras.


Recientemente, un equipo de investigadores de seguridad anunció el hallazgo de un error de hace quince años en la funcionalidad de extracción de archivos tar de Python. La vulnerabilidad se descubrió por primera vez en 2007 y se rastreó como CVE-2007-4559. Se agregó una nota a la documentación oficial de Python, pero el error en sí no se corrigió.

Secure Code Warrior aquí para que su organización le ayude a proteger el código durante todo el ciclo de vida del desarrollo de software y a crear una cultura en la que la ciberseguridad sea una prioridad. Ya sea administrador de AppSec, desarrollador, CISO o cualquier persona relacionada con la seguridad, podemos ayudar a su organización a reducir los riesgos asociados con el código inseguro.
Reserve 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 equipo de investigadores de seguridad anunció el hallazgo de un error de hace quince años en la funcionalidad de extracción de archivos tar de Python. La vulnerabilidad se reveló por primera vez en 2007 y se rastreó como CVE2007-4559. Se agregó una nota a la documentación oficial de Python, pero el error en sí no se corrigió.
Esta vulnerabilidad podría afectar a miles de proyectos de software, pero muchas personas no están familiarizadas con la situación ni con la forma de manejarla. Por eso, aquí en Secure Code Warrior, te damos la oportunidad de simular tú mismo la explotación de esta vulnerabilidad para ver el impacto de primera mano y obtener experiencia práctica en la mecánica de este error persistente, ¡para que puedas proteger mejor tu aplicación!
Prueba ahora el simulacro Misión.
La vulnerabilidad: recorrido de ruta durante la extracción del archivo tar
El recorrido de rutas o directorios se produce cuando se utilizan entradas de usuario no desinfectadas para construir una ruta de archivo, lo que permite a un atacante acceder a los archivos y sobrescribirlos, e incluso ejecutar código arbitrario.
La vulnerabilidad existe en el módulo tar de Python. Un archivo tar (archivo de cinta) es un archivo único, llamado archivo. Combina varios archivos junto con sus metadatos y, por lo general, se reconoce por tener la extensión .tar.gz o .tgz. Cada miembro del archivo puede estar representado por un objeto TAR Information, que contiene metadatos, como el nombre del archivo, la hora de modificación, la propiedad, etc.
El riesgo proviene de la capacidad de los archivos para volver a extraerse.
Cuando se extrae, cada miembro necesita una ruta en la que escribir. Esta ubicación se crea uniendo la ruta base con el nombre del archivo:

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

El problema aquí es la falta de desinfección del nombre del archivo. Un atacante podría cambiar el nombre de los archivos para incluir caracteres que recorran rutas, como punto y punto/barra oblicua (../), lo que haría que el archivo saliera del directorio en el que estaba destinado y sobrescribiera archivos arbitrarios. Con el tiempo, esto podría conducir a la ejecución remota de código, lo que está listo para ser explotado.
La vulnerabilidad aparece en otros escenarios, si sabe cómo identificarla. Además de la gestión de los archivos tar por parte de Python, la vulnerabilidad existe en la extracción de archivos zip. Es posible que esté familiarizado con esto con otro nombre, como vulnerabilidad zip slip, ¡que se ha manifestado en otros lenguajes además de Python!
¿Cómo 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 está funcionando como se supone que debe hacerlo. En este caso, algunos pueden decir que «es una función, no un error». Desafortunadamente, los desarrolladores no siempre pueden evitar extraer archivos tar o zip de una fuente desconocida. Como parte de las prácticas de desarrollo seguro, son ellos los que tienen que desinfectar la información que no es de confianza para evitar que las vulnerabilidades se desvíen de rutas.
¿Quieres obtener más información sobre cómo escribir código seguro y mitigar los riesgos con Python?
Prueba nuestro desafío Python gratis.
Si estás interesado en obtener más pautas de codificación gratuitas, consulta Entrenador de código seguro para ayudarte a mantenerte al tanto de las prácticas de codificación seguras.

Recientemente, un equipo de investigadores de seguridad anunció el hallazgo de un error de hace quince años en la funcionalidad de extracción de archivos tar de Python. La vulnerabilidad se reveló por primera vez en 2007 y se rastreó como CVE2007-4559. Se agregó una nota a la documentación oficial de Python, pero el error en sí no se corrigió.
Esta vulnerabilidad podría afectar a miles de proyectos de software, pero muchas personas no están familiarizadas con la situación ni con la forma de manejarla. Por eso, aquí en Secure Code Warrior, te damos la oportunidad de simular tú mismo la explotación de esta vulnerabilidad para ver el impacto de primera mano y obtener experiencia práctica en la mecánica de este error persistente, ¡para que puedas proteger mejor tu aplicación!
Prueba ahora el simulacro Misión.
La vulnerabilidad: recorrido de ruta durante la extracción del archivo tar
El recorrido de rutas o directorios se produce cuando se utilizan entradas de usuario no desinfectadas para construir una ruta de archivo, lo que permite a un atacante acceder a los archivos y sobrescribirlos, e incluso ejecutar código arbitrario.
La vulnerabilidad existe en el módulo tar de Python. Un archivo tar (archivo de cinta) es un archivo único, llamado archivo. Combina varios archivos junto con sus metadatos y, por lo general, se reconoce por tener la extensión .tar.gz o .tgz. Cada miembro del archivo puede estar representado por un objeto TAR Information, que contiene metadatos, como el nombre del archivo, la hora de modificación, la propiedad, etc.
El riesgo proviene de la capacidad de los archivos para volver a extraerse.
Cuando se extrae, cada miembro necesita una ruta en la que escribir. Esta ubicación se crea uniendo la ruta base con el nombre del archivo:

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

El problema aquí es la falta de desinfección del nombre del archivo. Un atacante podría cambiar el nombre de los archivos para incluir caracteres que recorran rutas, como punto y punto/barra oblicua (../), lo que haría que el archivo saliera del directorio en el que estaba destinado y sobrescribiera archivos arbitrarios. Con el tiempo, esto podría conducir a la ejecución remota de código, lo que está listo para ser explotado.
La vulnerabilidad aparece en otros escenarios, si sabe cómo identificarla. Además de la gestión de los archivos tar por parte de Python, la vulnerabilidad existe en la extracción de archivos zip. Es posible que esté familiarizado con esto con otro nombre, como vulnerabilidad zip slip, ¡que se ha manifestado en otros lenguajes además de Python!
¿Cómo 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 está funcionando como se supone que debe hacerlo. En este caso, algunos pueden decir que «es una función, no un error». Desafortunadamente, los desarrolladores no siempre pueden evitar extraer archivos tar o zip de una fuente desconocida. Como parte de las prácticas de desarrollo seguro, son ellos los que tienen que desinfectar la información que no es de confianza para evitar que las vulnerabilidades se desvíen de rutas.
¿Quieres obtener más información sobre cómo escribir código seguro y mitigar los riesgos con Python?
Prueba nuestro desafío Python gratis.
Si estás interesado en obtener más pautas de codificación gratuitas, consulta Entrenador de código seguro para ayudarte a mantenerte 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 aquí para que su organización le ayude a proteger el código durante todo el ciclo de vida del desarrollo de software y a crear una cultura en la que la ciberseguridad sea una prioridad. Ya sea administrador de AppSec, desarrollador, CISO o cualquier persona relacionada con la seguridad, podemos ayudar a su organización a reducir los riesgos asociados con el código inseguro.
Ver informeReserve 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 equipo de investigadores de seguridad anunció el hallazgo de un error de hace quince años en la funcionalidad de extracción de archivos tar de Python. La vulnerabilidad se reveló por primera vez en 2007 y se rastreó como CVE2007-4559. Se agregó una nota a la documentación oficial de Python, pero el error en sí no se corrigió.
Esta vulnerabilidad podría afectar a miles de proyectos de software, pero muchas personas no están familiarizadas con la situación ni con la forma de manejarla. Por eso, aquí en Secure Code Warrior, te damos la oportunidad de simular tú mismo la explotación de esta vulnerabilidad para ver el impacto de primera mano y obtener experiencia práctica en la mecánica de este error persistente, ¡para que puedas proteger mejor tu aplicación!
Prueba ahora el simulacro Misión.
La vulnerabilidad: recorrido de ruta durante la extracción del archivo tar
El recorrido de rutas o directorios se produce cuando se utilizan entradas de usuario no desinfectadas para construir una ruta de archivo, lo que permite a un atacante acceder a los archivos y sobrescribirlos, e incluso ejecutar código arbitrario.
La vulnerabilidad existe en el módulo tar de Python. Un archivo tar (archivo de cinta) es un archivo único, llamado archivo. Combina varios archivos junto con sus metadatos y, por lo general, se reconoce por tener la extensión .tar.gz o .tgz. Cada miembro del archivo puede estar representado por un objeto TAR Information, que contiene metadatos, como el nombre del archivo, la hora de modificación, la propiedad, etc.
El riesgo proviene de la capacidad de los archivos para volver a extraerse.
Cuando se extrae, cada miembro necesita una ruta en la que escribir. Esta ubicación se crea uniendo la ruta base con el nombre del archivo:

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

El problema aquí es la falta de desinfección del nombre del archivo. Un atacante podría cambiar el nombre de los archivos para incluir caracteres que recorran rutas, como punto y punto/barra oblicua (../), lo que haría que el archivo saliera del directorio en el que estaba destinado y sobrescribiera archivos arbitrarios. Con el tiempo, esto podría conducir a la ejecución remota de código, lo que está listo para ser explotado.
La vulnerabilidad aparece en otros escenarios, si sabe cómo identificarla. Además de la gestión de los archivos tar por parte de Python, la vulnerabilidad existe en la extracción de archivos zip. Es posible que esté familiarizado con esto con otro nombre, como vulnerabilidad zip slip, ¡que se ha manifestado en otros lenguajes además de Python!
¿Cómo 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 está funcionando como se supone que debe hacerlo. En este caso, algunos pueden decir que «es una función, no un error». Desafortunadamente, los desarrolladores no siempre pueden evitar extraer archivos tar o zip de una fuente desconocida. Como parte de las prácticas de desarrollo seguro, son ellos los que tienen que desinfectar la información que no es de confianza para evitar que las vulnerabilidades se desvíen de rutas.
¿Quieres obtener más información sobre cómo escribir código seguro y mitigar los riesgos con Python?
Prueba nuestro desafío Python gratis.
Si estás interesado en obtener más pautas de codificación gratuitas, consulta Entrenador de código seguro para ayudarte a mantenerte al tanto de las prácticas de codificación seguras.
Tabla de contenido

Secure Code Warrior aquí para que su organización le ayude a proteger el código durante todo el ciclo de vida del desarrollo de software y a crear una cultura en la que la ciberseguridad sea una prioridad. Ya sea administrador de AppSec, desarrollador, CISO o cualquier persona relacionada con la seguridad, podemos ayudar a su organización a reducir los riesgos asociados con el código inseguro.
Reserve una demostraciónDescargarRecursos para empezar
Temas y contenido de formación sobre código seguro
Nuestro contenido líder en la industria siempre está evolucionando para adaptarse al cambiante panorama del desarrollo de software teniendo en cuenta su función. Se ofrecen temas que abarcan desde la IA hasta la inyección de XQuery para distintos puestos, desde arquitectos e ingenieros hasta directores de productos y control de calidad. Obtenga un adelanto de lo que ofrece nuestro catálogo de contenido por tema y función.
La Cámara de Comercio establece el estándar para la seguridad impulsada por desarrolladores a gran escala
Kamer van Koophandel comparte cómo ha integrado la codificación segura en el desarrollo diario mediante certificaciones basadas en roles, evaluaciones comparativas de Trust Score y una cultura de responsabilidad compartida en materia de seguridad.
Modelado de amenazas con IA: convertir a cada desarrollador en un modelador de amenazas
Saldrá mejor equipado para ayudar a los desarrolladores a combinar ideas y técnicas de modelado de amenazas con las herramientas de IA que ya utilizan para reforzar la seguridad, mejorar la colaboración y crear software más resistente desde el principio.
Recursos para empezar
Cybermon está de vuelta: las misiones de IA de Beat the Boss ya están disponibles bajo demanda.
Cybermon 2025 Beat the Boss ya está disponible durante todo el año en SCW. Implemente desafíos de seguridad avanzados de IA y LLM para fortalecer el desarrollo seguro de la IA a gran escala.
Explicación de la Ley de Ciberresiliencia: qué significa para el desarrollo de software seguro por diseño
Descubra qué exige la Ley de Ciberresiliencia (CRA) de la UE, a quién se aplica y cómo los equipos de ingeniería pueden prepararse con prácticas de diseño seguras, prevención de vulnerabilidades y desarrollo de capacidades para desarrolladores.
Facilitador 1: Criterios de éxito definidos y medibles
El habilitador 1 da inicio a nuestra serie Enablers of Success, de 10 partes, mostrando cómo vincular la codificación segura con los resultados empresariales, como la reducción del riesgo y la velocidad para lograr la madurez del programa a largo plazo.




%20(1).avif)
.avif)
