Validation du début du chemin – Traversée de répertoires

File path traversal, validation of start of path

L’application transmet le chemin complet du fichier via un paramètre de requête et vérifie uniquement que ce chemin commence par le dossier attendu. Cette validation est insuffisante : en ajoutant des séquences de traversée après le préfixe autorisé, il est possible d’accéder à des fichiers arbitraires.

Analyse

Le paramètre filename inclut directement un chemin absolu, par exemple :

Si l’on tente une traversée classique :

l’application la bloque.

Mais si on fournit le chemin attendu, suivi de séquences ../ pour en sortir, la validation échoue à détecter l'évasion :

Comme le chemin commence bien par /var/www/images/, la vérification est satisfaite, mais la résolution finale pointe en réalité vers /etc/passwd.

Mis à jour

Ce contenu vous a-t-il été utile ?