SSTI dans un langage inconnu avec un exploit documenté (Node)

Server-side template injection in an unknown language with a documented exploit

En testant l’application, l’injection suivante :

provoque une erreur côté serveur qui révèle que le moteur utilisé est Handlebars sous Node.js.

Exécution de code avec un exploit public Handlebars

On peut alors utiliser un exploit connu permettant d’accéder au constructeur et d’appeler child_process.execSync. L’exemple suivant permet d’exécuter id:

Ce payload doit être URL-encodé avant envoi.

Suppression du fichier morale.txt

Pour résoudre le labo, il suffit d’adapter la commande exécutée :

Ce payload URL-encodé permet d’effacer morale.txt depuis le moteur Handlebars vulnérable.

Mis à jour

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