Objectif :
Accéder à l'interface administrateur pour supprimer l'utilisateur dont le nom est Carlos.
Dans l'énoncé, il est précisé que cette interface est située dans même serveur que l'application.
Solution :
On lance le lab et on se trouve dans un site de commerce :
On accède aux détails d'un produit et en bas de la page, on remarque la possibilité de vérifier son stock dans plusieurs villes :
Lorsqu'on clique sur "Check stock", une requête POST est envoyée au serveur avec comme donnée une URL vers une API ( permettant de nous renvoyer la quantité du stock selon le produit et la ville) :
On décode la donnée pour correctement lire le contenu : stockApi=http://stock.weliketoshop.net:8080/product/stock/check?productId=1&storeId=1.
À présent, on va essayer de modifier cette URL pour dire au serveur d'accéder à lui-même ( avec localhost ) : stockApi=http://localhost/admin.
On soumet la requête et le panel administrateur apparaît à la place de la quantité du stock :
On clique sur "delete" pour supprimer l'utilisateur Carlos et on remarque que c'est une requête GET qui est envoyée :
Il suffit donc d'inscrire l'URL suivante dans la donnée de la requête POST précédente : http://localhost/admin/delete?username=carlos.
On lance la requête et aucune erreur ne surgit. On vérifie que le compte de Carlos est supprimé en revenant sur l'interface administrateur :
Effectivement, il a été supprimé. le lab est désormais validé !