Un paramètre.
Des fichiers exposés.
Manipulez un paramètre de chemin pour remonter l'arborescence serveur et lire des fichiers sensibles — /etc/passwd, .env, clés SSH.
Répertoire de travail :
/var/www/html/uploads/
Chemin résolu :
/var/www/html/uploads/rapport_Q1.pdf
✓ Fichier trouvé — 200 OK
rapport_Q1.pdf · 847 Ko
Un paramètre de fichier dans l'URL
L'application charge un fichier dont le nom est fourni directement dans le paramètre ?file=
Chaque paramètre de chemin est une surface d'attaque
Quand une application concatène directement l'entrée utilisateur dans un chemin de fichier sans validation, elle fait confiance à l'input. Un attaquant peut fournir n'importe quel chemin — y compris des séquences ../ pour remonter l'arborescence du serveur.
Chiffres clés
#0
OWASP Broken Access Control
inclut le Path Traversal (A01:2021)
0 sec
Pour exploiter un endpoint
avec un payload ../../../ basique
0 %
Des payloads encodés
%2e%2e contournent les filtres naïfs sur '../'
Démo technique
Testez par vous-même
Manipulez le paramètre de chemin, observez la résolution pas à pas dans l'arborescence et visualisez les fichiers sensibles exposés par le serveur vulnérable.
Démonstration interactive
Simulateur Path Traversal
Manipulez le paramètre de chemin pour sortir du répertoire autorisé et accéder à des fichiers sensibles sur le serveur.
Payloads prêts à l'emploi
Base autorisée
/var/www/forenshield/public
URL demandée
https://forenshield.com/assets/documents/report.pdf
Chemin résolu
/var/www/forenshield/public/documents/report.pdf
Fichiers ciblés
- ·/etc/passwd
- ·/etc/shadow
- ·/.env
- ·/config/database.json
- ·/root/.ssh/id_rsa
Pourquoi c'est critique
Une seule variable de chemin non filtrée permet de sortir du dossier web et de lire des secrets, des credentials ou des clés privées.
Défense
- ·Valider et normaliser les chemins côté serveur
- ·Rejeter toute séquence '../' ou encodage URL suspect
- ·Utiliser une allowlist de fichiers autorisés
- ·Ne jamais concaténer dynamiquement un chemin utilisateur