XInclude — lecture de fichiers

Exploiting XInclude to retrieve files

Le laboratoire possède une fonctionnalité Check stock qui insère l'entrée fournie par l'utilisateur dans un document XML côté serveur, puis l'analyse. Vous ne contrôlez pas l'intégralité du document XML, donc il est impossible de définir une DTD pour un XXE classique.

Exploiter XInclude pour récupérer le contenu du fichier /etc/passwd en injectant une inclusion XInclude qui sera résolue par le parseur côté serveur.

  • Paramètres envoyés initialement : productId=1&storeId=1.

  • Vérification : la valeur de productId est réintégrée et analysée par le serveur. Par exemple productId=test&storeId=1 est interprété et reflété.

Injection d'une inclusion XInclude dans productId pour forcer la lecture d'un fichier local.

Exemple de paramètre envoyé :

Le parseur interprète l'inclusion XInclude et intègre le contenu de /etc/passwd dans le document analysé — la valeur fournie dans productId est donc traitée et le fichier est lu.

Mis à jour

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