Spidersaurus

pwn x86/x64 browser FCSC 2026 résolu le

star star

Description

Suite à quelques déboires avec le langage FORTH, ainsi que le langage BASIC, notre développeur a décidé d’un retour aux origines de l’Internet Multimédia à l’aide de la version 1.3 de l’interpréteur JavaScript SpiderMonkey.

Il nous assure qu’aucune faille de sécurité n’est exploitable, grâce aux paramètres de compilation ; de plus, il nous garantit que le code est certifié pour le passage à l’an 2000.

Cependant, un hacker anonyme nous a transmis un mystérieux fichier test.js qui semble déclencher une lecture de mémoire non initialisée. Pouvez-vous prouver que notre développeur a tort en lisant le contenu de la variable flag ?

Note : Le programme est compilé par clang-17 (sous Debian 13 i386), mais s’exécute sous Debian 13 amd64 (avec libc6:i386 installé).

Fichiers

  • docker-compose.yml
  • JSRef.zip
    373.12 KiB – e3d04ba7f65efa088ce64fc72b47962fe77dea6a9442a14b94f1b90f65972b58
  • spidersaurus
    1.30 MiB – 3c727012d440325908374ed9136dfe010164d2713b61141b029b365c7a142724
  • spidersaurus.patch
    9.35 KiB – 21f809774fcc8adda68be3090939f47a9c2a5c2b89b835579659a7d09770458f

Auteur

cde

Instructions

  1. Pour commencer, téléchargez le fichier docker-compose.yml :
    curl https://hackropole.fr/challenges/fcsc2026-pwn-spidersaurus/docker-compose.public.yml -o docker-compose.yml
  2. Lancez l'épreuve en exécutant dans le même dossier :
    docker compose up
  3. Dans un second terminal, accédez à l'épreuve via Netcat avec :
    nc localhost 4000
⚠️ Important : Vous devez résoudre l'épreuve en interagissant avec le conteneur Docker via le port réseau exposé. Toute autre interaction n'est pas considérée comme une résolution valide.

Si vous rencontrez des problèmes, veuillez consulter la FAQ.

Flag

Partager ma réussite sur Fediverse, Twitter, Linkedin, Facebook, ou par email.

Soumettez votre solution

Vous pouvez envoyer votre solution rédigée pour cette épreuve. La FAQ contient la marche à suivre.

Vous avez besoin d'être identifié(e) pour soumettre une solution.

Solutions

Il n'y a pas encore de solutions pour cette épreuve, mais vous pouvez soumettre la vôtre après avoir trouvé le flag.