Hacker Lab

Un serveur web tourne sur le serveur cible.

Vous écrivez une URL dans votre navigateur pour spécifier la page que vous voulez obtenir.
Votre navigateur web encode l'URL et l'envoie au serveur en utilisant le protocole HTTP.
Le serveur renvoye une page affichable décrite en HTML grace au protocole HTTP.

HTTP est un protocole riche qui permet de négocier des options et échanger des données.
Notamment des cookies sont utilisés pour garder des informations entre deux sessions.
Pour les lires et les modifiers, nous utilisons un proxy HTTP.

Avant tout, lisez : http://yoloctf.org/yoloctf/toolbox/toolbox.php?cat=HTTP

1 / 15 - Lire le contenu d'un fichier
1

Ouvrez votre terminal.
Affichez le contenu de training_http_curl.php sur le serveur lab_http_nginx en utilisant curl.

2 / 15 - Téléchargement d'un fichier
1

Ouvrez votre terminal.
Téléchargez le contenu de training_http_wget.php situé sur le serveur lab_http_nginx en utilisant wget.

3 / 15 - Ecrire un GET à la main
1

Ouvrez votre terminal.
Affichez le contenu de training_http_manuel.php situé sur le serveur lab_http_nginx en utilisant printf et nc.

4 / 15 - Lire le header
1

Utilisez la commande curl avec l'option -v pour lire le flag caché dans le Header de la page training-http-header.php sur le serveur lab_http_nginx.

5 / 15 - Ajouter un header perso
1

Utilisez la commande curl avec l'option -H pour ajouter une entête.
Envoyez une requête comportant le header 'X-My-Header: Yolo Rulez', sur la page training-http-header-custom.php sur le serveur lab_http_nginx.

6 / 15 - Parametres
1

Accédez à la page training-http-param.php, du serveur http://yoloctf.org/lab_http/, avec les paramètres login=admin, et le paramètre password=superpassword.

7 / 15 - Authentification simple
1

Accédez à la page training-http-auth-simple.php, du serveur http://yoloctf.org/lab_http/, avec le login admin, et le password goodpassword en utilisant curl et l'option -u.

8 / 15 - Authentification simple à la main
1

Accédez à la page training-http-auth-simple.php, du serveur http://yoloctf.org/lab_http/, avec le login superadmin, et le password megapassword, en ajoutant un header 'Authorization: Basic xxxx' encodé en base 64 avec l'option -H.

9 / 15 - Formulaire: Post avec Curl
1

Envoyez un formulaire comportant le champ 'code' avec la valeur '123456' sur la page training-http-form-post-curl.php, du serveur http://yoloctf.org/lab_http/ en utilisant curl et les options -X Post et -F 'champ=valeur'.

10 / 15 - Formulaire: Trouver les champs dans le code HTML
1

Chargez la page http://yoloctf.org/lab_http//training-http-form-post-src.php dans le navigateur web.

Faites Click-Droit et 'View source' pour avoir accès au code HTML de la page.

Identifiez le nom du champ, puis envoyez un formulaire avec la valeur 'secretcode' sur la page training-http-form-post-src.php, du serveur http://yoloctf.org/lab_http/ en utilisant curl et les options -X Post et -F 'champ=valeur'.

11 / 15 - Formulaire: Rejouer un Post avec le proxy
1

Ouvre le proxy web. Cliquez sur MITM/New puis validez pour démarrer une nouvelle session.

Chargez la page http://yoloctf.org/lab_http//training-http-form-post-proxy.php dans le navigateur web.

Cliquez sur le boutton pour envoyer le formulaire avec les valeurs par défaut.

Dans le proxy, cliquez sur la ligne correspondant au Post.

Cliquez sur l'icone Crayon pour remplacer la valeur 'secretcode' par 'verysecretcode'. Validez vos modifications, et cliquez sur 'Renvoyer'.

Regardez l'onglet Response'.

12 / 15 - Formulaire: Method GET
10

Chargez la page http://yoloctf.org/lab_http//training-http-form-get.php dans le navigateur web.

Cliquez sur le boutton pour envoyer le formulaire avec les valeurs par défaut.

Les paramètres apparaissent dans l'url. Il suffit de modifier l'url pour y mettre 'notsosecretcode'.

13 / 15 - Formulaire: Post de données au format JSON
10

Postez les données JSON {'login':'admin', 'password':'1234'} sur la page http://yoloctf.org/lab_http//training-http-form-post-json.php, en utilisant curl et les options -H Content-Type, -X Post, et --data.

14 / 15 - Formulaire: Upload de fichier
10

Uploadez un fichier sur la page http://yoloctf.org/lab_http//training-http-form-post-file.php, en utilisant curl.

15 / 15 - Formulaire: Upload de fichier
10

Uploadez un fichier sur la page http://yoloctf.org/lab_http//training-http-form-post_json.php, en utilisant curl.