# Solution du Défi : SSRF de Base contre un Système Backend ## Contexte Le défi consiste à exploiter une vulnérabilité de type SSRF (Server-Side Request Forgery) pour accéder à une interface d'administration interne et supprimer l'utilisateur Carlos. Voici la solution étape par étape pour résoudre ce défi. ## Étapes de la solution ### Étape 1 : Intercepter la Requête 1. **Visitez un produit** sur l'application web. 2. **Cliquez sur "Check stock"** pour vérifier le stock du produit. 3. **Interceptez la requête** avec Burp Suite. 4. **Envoyez la requête interceptée à Burp Intruder** pour la manipuler. --- ### Étape 2 : Modifier le Paramètre `stockApi` 1. Dans Burp Intruder, **localisez le paramètre `stockApi`** dans la requête interceptée. 2. **Remplacez la valeur de `stockApi`** par `http://192.168.0.1:8080/admin`. 3. **Surlignez le dernier octet de l'adresse IP** (le nombre `1`) et **cliquez sur "Add §"** pour en faire une position de payload. --- ### Étape 3 : Configurer l'Attaque avec Burp Intruder 1. Dans l'onglet **Payloads**, **sélectionnez le type de payload "Numbers"**. 2. Configurez les valeurs suivantes : - **From** : `1` - **To** : `255` - **Step** : `1` 3. **Cliquez sur "Start attack"** pour lancer l'attaque. --- ### Étape 4 : Analyser les Résultats 1. Une fois l'attaque terminée, **cliquez sur la colonne "Status"** pour trier les résultats par code de statut (ascendant). 2. **Recherchez une entrée avec un statut 200**. Cela indique que la requête a réussi à accéder à l'interface d'administration. 3. **Sélectionnez cette requête** et **envoyez-la à Burp Repeater** pour une analyse plus approfondie. --- ### Étape 5 : Supprimer l'Utilisateur Carlos 1. Dans Burp Repeater, **modifiez le chemin dans le paramètre `stockApi`** pour accéder à l'URL de suppression : ``` /admin/delete?username=carlos ``` 2. **Envoyez la requête** pour supprimer l'utilisateur Carlos. --- ### Étape 6 : Vérifier la Suppression 1. **Retournez à l'interface d'administration** en envoyant une nouvelle requête à `http://192.168.0.X:8080/admin` (où `X` est l'octet valide trouvé précédemment). 2. **Vérifiez que l'utilisateur Carlos n'apparaît plus** dans la liste des utilisateurs.