Skip to content
KitploitKITPLOIT
OutilsBlog
Soumettre
OutilsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
CVE-2025-4517-Python-tarfile-filter-data-Bypass-PoC — Exploit de preuve de concept pour CVE-2025-4517, une vulnérabilité de traversée de chemin dans le filtre='data' de tarfile de Python, permettant des écritures de fichiers arbitraires en dehors du répertoire d'extraction via des chaînes de liens symboliques conçues. | Kitploit
Outils/GitHubGitHub/estebanzarate/cve-2025-4517-python-tarfile-filter-data-bypass-poc
Escalade de PrivilègesAnalyse des VulnérabilitésExploitationTests d'IntrusionRed TeamingDéveloppement de Charges Utiles
GitHubestebanzarate/cve-2025-4517-python-tarfile-filter-data-bypass-poc

CVE-2025-4517-Python-tarfile-filter-data-Bypass-PoC

Exploit de preuve de concept pour CVE-2025-4517, une vulnérabilité de traversée de chemin dans le filtre='data' de tarfile de Python, permettant des écritures de fichiers arbitraires en dehors du répertoire d'extraction via des chaînes de liens symboliques conçues.

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager
Voir le dépôt
11il y a 6 moisPas encore vérifié

CVE-2025-4517 — Contournement du filtre "data" de Python tarfile (PoC)

Vulnérabilité de traversée de chemin dans le module tarfile de Python affectant les versions 3.8.0 à 3.13.1. Le bac à sable filter="data" — destiné à empêcher les extractions non sécurisées — peut être contourné en concevant des chemins qui dépassent PATH_MAX (4096 octets), ce qui fait que os.path.realpath() cesse silencieusement de résoudre les liens symboliques. La vérification de sécurité voit un chemin d'apparence sûre tandis que le noyau résout le vrai, permettant des écritures en dehors du répertoire d'extraction. Ce PoC exploite le contournement pour écrire une clé publique SSH dans /root/.ssh/authorized_keys.


Comment ça fonctionne

  1. Construit une archive tar malveillante avec des répertoires profondément imbriqués (noms de 247 caractères) qui poussent les chemins de liens symboliques au-delà de PATH_MAX.
  2. filter="data" appelle os.path.realpath() pour valider chaque chemin — mais à PATH_MAX, il cesse de résoudre et voit le chemin comme toujours à l'intérieur du répertoire de staging. La vérification réussit.
  3. Le noyau résout correctement le chemin complet lors de l'extraction, contournant le bac à sable.
  4. Un fichier ordinaire est écrit via la chaîne de liens symboliques échappée, atterrissant dans /root/.ssh/authorized_keys.
  5. L'accès SSH en tant que root est vérifié avec la clé injectée.

Prérequis

  • Python 3
  • ssh-keygen disponible (ou fournissez votre propre clé publique avec -k)
  • Accès en écriture au répertoire de sauvegarde utilisé par le script vulnérable
  • Droits sudo pour déclencher l'extraction vulnérable

Utilisation

root@kitploit:~
# Générer automatiquement une nouvelle paire de clés
python3 exploit.py

# Utiliser une clé publique existante
python3 exploit.py -k ~/.ssh/id_ed25519.pub

Exemple :

root@kitploit:~
$ python3 exploit.py
[+] Paire de clés SSH générée : /tmp/cve_2025_4517_key
[*] Création de l'archive tar d'exploitation...
[+] Archive tar d'exploitation créée : /tmp/cve_2025_4517_exploit.tar
[*] Déploiement de l'exploit vers : /opt/backup_clients/backups/backup_9999.tar
[+] Exploit déployé avec succès
[*] Déclenchement de l'extraction via le script vulnérable...
[+] Extraction terminée
[*] Vérification de l'exploit via SSH...
[+] SUCCÈS ! SSH en tant que root confirmé : uid=0(root) gid=0(root) groups=0(root)

============================================================
[+] EXPLOITATION RÉUSSIE !
[+] SSH en tant que root avec : ssh -i /tmp/cve_2025_4517_key root@localhost
============================================================

[?] Ouvrir un shell root maintenant ? (o/n) :

Références

  • CVE-2025-4517
  • Documentation Python tarfile — filtres d'extraction
  • Avis de sécurité Python

Crédits

  • Découverte : Python Security Response Team
  • Nettoyage et simplification : Esteban Zárate
Télécharger l’outil