Niveau 1 (0 / 200 XP) Progression générale
Découverte réseau

Un réseau TCP/IP relie des machines grâce à des adresses IP. Avant toute attaque ou défense, il faut savoir cartographier le réseau.

ip a : Affiche les adresses IP de votre machine.
nmap -sn <réseau> : Scan ping pour découvrir les hôtes actifs.
nmap -sV <IP> : Détection des versions des services.

Exemple : nmap -sn 172.20.1.0/24 → liste toutes les machines répondant au ping.

  1. Trouvez votre adresse IP avec ip a.
  2. Scannez le réseau : nmap -sn 172.20.X.0/24.
  3. Identifiez les services sur une cible avec nmap -sV .
FTP anonyme

Le File Transfer Protocol permet de transférer des fichiers. Un serveur mal configuré peut autoriser l'accès anonyme.

ftp <IP> : Se connecter (login anonymous, mot de passe vide).
ls : Lister les fichiers.
get <fichier> : Télécharger un fichier.

Exemple : ftp 172.20.1.20 → anonymous → ls → get fichier.txt

  1. Connectez-vous au serveur FTP : ftp 172.20.X.20.
  2. Listez les fichiers et téléchargez flag.txt.
  3. Quittez et lisez le fichier avec cat flag.txt.
Brute force SSH

SSH permet l'administration à distance de façon sécurisée. Un mot de passe faible peut être cassé par force brute.

ssh <user>@<IP> : Tentative de connexion.
hydra -l <login> -P <wordlist> ssh://<IP> : Attaque par dictionnaire.

Exemple : hydra -l root -P /usr/share/wordlists/rockyou.txt ssh://172.20.1.30

  1. Testez une connexion SSH avec ssh root@172.20.X.30 (mot de passe aléatoire pour voir le refus).
  2. Lancez hydra -l root -P /usr/share/wordlists/rockyou.txt ssh://172.20.X.30.
  3. Une fois le mot de passe trouvé, connectez-vous normalement.
Serveur web caché

Le protocole HTTP sert à consulter des sites web. Des fichiers non protégés peuvent être accessibles directement.

curl <URL> : Effectue une requête HTTP et affiche le contenu.

Exemple : curl http://172.20.1.40/flag.txt

  1. Accédez à la racine : curl http://172.20.X.40.
  2. Téléchargez le fichier sensible : curl http://172.20.X.40/flag.txt.
  3. Explorez d'autres URLs comme /admin, /robots.txt pour comprendre les risques.
Base de données

MariaDB est un SGBD relationnel. Un compte root sans mot de passe ou avec un mot de passe faible expose toutes les données.

mysql -h <IP> -u <user> -p<pass> : Connexion au serveur.
SHOW DATABASES; : Lister les bases.
USE <base>; : Sélectionner une base.
SELECT * FROM <table>; : Afficher les enregistrements.

Exemple : mysql -h 172.20.1.50 -u root -ppassword -e "SELECT * FROM ctf.users;"

  1. Connectez-vous : mysql -h 172.20.X.50 -u root -ppassword.
  2. Explorez la base ctf et la table users.
  3. Affichez tout le contenu de la table users. Notez le flag.

Badges

CTF Final

Terminez tous les ateliers pour débloquer.