Blog

Le blog de la cybersécurité expliquée à ma grand-mère !

Festival Double Science

Règles et ressources

Contexte

Le SNIF (Service National des Informaticiens Fortiches) a subi une cyberattaque cette semaine. Un attaquant sophistiqué s'est introduit dans le réseau et a vraisemblablement laissé des backdoors (des portes dérobées) dans les systèmes.

Votre mission, si vous l'acceptez :

  • trouver les backdoors dans les applications web et récupérer les traces laissées par l'attaquant,
  • corriger les vulnérabilités des applications.

Connexion

Pour se connecter au lab du SNIF :

  • connectez-vous avec la wifi Pour 1nfo Lab avec le mot de passe : MSI Cyber SDV 2024!
  • Pour vous connecter au lab, vous aurez besoin d'ajouter ce certificat
  • Là, créez vous un compte sur le site ctfd.snif.lab pour avoir tous les liens des challenges et toutes les infos !

Déroulé

Concrètement, tout cela se déroule en deux étapes : un Catch-the-Flag (CTF) et un Patch-the-Flag (PTF).

  • Catch-the-Flag (CTF) : Vous devez identifier et exploiter des vulénrabilités dans 11 applications vulnérables.
  • Patch-the-Flag (PTF) : Si vous y arrivez, vous débloquez l'accès au code source des applications vulnérables. À vous de proposer un correctif et de le partager pour gagner bien plus de points !

Certaines applications vulnérables sont plus faciles à aborder via l'utilisation du site web, d'autres en regardant le code source.

N'hésitez pas à demander à Romain si vous êtes bloqué sur l'identification ou l'exploitation d'une vulnérabilité Web, le but du challenge est de vous faire découvrir la sécurité Web, pas de vous demander de devenir des 1337 h4ck3rz en 2h.

Règles :

  • toutes les applications sont situées sur la machine à l'IP suivante : 192.168.0.7 et aux URLs en *.snif.lab, accessibles uniquement avec depuis la wifi Pour 1nfo Lab.
  • SEULE L'IP DONNÉE CI DESSOUS FAIT PARTIE DES CHALLENGES, i.e aucune opération liée à la recherche ou l'exploitation de vulnérabilités sur une autre adresse IP ou sur une autre machine ne sera tolérée.
  • Tous les flags à obtenir sont de la forme Pour1nfo{XXXX}
  • Si la vulnérabilité vous permet d'arriver à exécuter du code sur le serveur, le flag est probablement dans un fichier flag.txt, s'il s'agit de vol de données personnelles, probablement chez un utilisateur flag.
  • Aucune attaque bruteforce n'est nécéssaire, en dehors d'itération et d'énumération de base (200 tentatives grand max) !!
  • pour la partie "Patch-the-flag", pour obtenir le flag correspondant au challenge, il vous faut créer un fichier de patch avec git diff > patch.txt et déposer ce fichier sur la plateforme mise à disposition à l'URL : patch.snif.site, ~accessible uniquement avec le VPN~.

Ressources

Afin de parvenir à trouver tous les flags, vous pouvez vous aider des ressources suivantes :

  • L'OWASP Top Ten
  • Le guide de l'OWASP pour tester des applications web
  • Un guide plus concis
  • Le couteau suisse du hacking web : l'outil Burp Proxy
  • L'outil en ligne CyberChef, votre couteau suisse : icyberchef.com/
  • Deux outils situationnels :

    • dirb, pour trouver des pages cachées (aussi : ffuf, dirbuster ou gobuster)
    • sqlmap, pour exploiter une vulnérabilité SQL (attention aux effets secondaires !)
    • L'outil MetaSploit framework, pour lister beaucoup de vulnérabilités connues : https://www.metasploit.com/
  • Des ressources en ligne :

    • Les très pertinentes cheat sheet de PortSwigger pour exploiter des vulnérabilités avancées :
    • https://portswigger.net/web-security/cross-site-scripting/cheat-sheet
    • https://portswigger.net/web-security/sql-injection/cheat-sheet
    • Pour créer des reverse shells simplement : revshell.sh
    • Pour écouter sur une URL et afficher les requêtes envoyées dessus : webhook.site