YesWeHack Dojo #35 : Chatroom

Dojo #35 - Chatroom Introduction The 35th Dojo Challenge, Chatroom, invited participants to exploit a CWE-73: External Control of File Name or Path vulnerability and read a file containing the challenge flag. YesWeHack asked to produce a qualified report explaining the logic allowing exploitation, as set out by the challenge. Here’s my write-up for this challenge, which unfortunately didn’t make the top 3 :(. Setup Code const child_process = require('child_process') const process = require('process') const path = require('path') const ejs = require('ejs') const fs = require('fs') process....

September 25, 2024 Â· 8 min Â· Aether

Talk : Sthack 24 - Introspection Bluetooth d'un distributeur automatique

Sthack 24 - Introspection Bluetooth d’un distributeur automatique Durant quelques mois, en ce début d’année 2024, j’ai réalisé une rétro-ingénierie d’une application mobile qui, via le protocole Bluetooth, dialogue avec un distributeur automatique (cafés, boissons…) afin de valider le paiement lors de la sélection d’un produit. Il s’avère que j’ai réussi à contourner le paiement en réalisant une implémentation des échanges réalisés entre l’application et le distributeur. Durant cette conférence, j’explique ce qui m’a poussé à faire ma recherche, comment je l’ai organisée, la description des échanges et enfin une démo sous forme de vidéo de l’application réimplémentée....

May 28, 2024 Â· 1 min Â· Aether

PwnMe CTF 2023 : Pwn Unintended Write-Up - CPython101

Unintended CPython101 From May 5th to 7th the second edition of the PWNME CTF was held**. Our team participated in the student category. For this write-up, I will explain how I was able to bypass the intended way to flag the Pwn CPython101 challenge. CPython101 What if you could do memory corruption in Python ? Well this is an opportunity for you to discover that ! Find a way to read the flag on the remote service....

May 10, 2023 Â· 4 min Â· Aether

FCSC 2023 : Follow the Rabbit

Follow the Rabbit Tandis qu'Alice s'occupait de son jardin, elle est tombée sur un lapin blanc affolé. Celui-ci, pressé, lui a demandé de le suivre. Sans hésiter, Alice a décidé de le poursuivre dans son mystérieux terrier. https://follow-the-rabbit.france-cybersecurity-challenge.fr SHA256(follow-the-rabbit-public.tar.gz) = 6d5af5b83e3c9d3d5bb556965440df80507406239e68ef94c03ba1482d99f411. Analyse Le challenge nous offre une archive contenant des fichiers docker ainsi que le code source de la configuration nginx. docker-compose.yml: version: '3' services: follow-the-rabbit: build: context: . args: FLAG: FCSC{flag_placeholder} ports: - 8000:80 Dockerfile:...

April 30, 2023 Â· 5 min Â· Aether

FCSC 2023 : Hello from the inside

Hello from the inside Votre nouveau stagiaire aimerait bien vous persuader que les architectures orientées micro-service améliorent nettement la sécurité de vos systèmes d'information. Il a décidé de vous le démontrer en réalisant une preuve de concept du type "Hello world", déployé à la hâte sur un serveur HTTP Apache. Allez-vous lui proposer un contrat à la fin de son stage ? https://hello-from-the-inside.france-cybersecurity-challenge.fr/ Note : Aucun bruteforce n'est nécessaire à la résolution du challenge....

April 30, 2023 Â· 2 min Â· Aether

FCSC 2023 : Peculiar Caterpillar

Peculiar Caterpillar Alors qu'elle se promenait au Pays des merveilles, Alice tomba sur une chenille étrange. À sa grande surprise, cette dernière se vantait d'avoir construit son propre site web en utilisant Javascript. Bien que le site semblait simple, Alice ne pouvait s'empêcher de se demander s'il était vraiment sécurisé. https://peculiar-caterpillar.france-cybersecurity-challenge.fr/ SHA256(peculiar-caterpillar-public.tar.gz) = 0aad816ba8eeff048785257f1bc157e83e59ec3246af0f9556ef7b6e39b56b6f. Analyse Le challenge nous offre une archive, contenant plusieurs fichiers intéressants. On apprend notamment que l’application est codée en Node....

April 30, 2023 Â· 4 min Â· Aether

FCSC 2023 : Tweedle Dum

Tweedle Dum Au cours de ses aventures au Pays des merveilles, Alice a rencontré une curieuse paire de jumeaux : Tweedledee et Tweedledum. Les deux avaient créé un site web simpliste en utilisant Flask, une réalisation qui a suscité l'intérêt d'Alice. Avec son esprit curieux et son penchant pour la technologie, Alice ne pouvait s'empêcher de se demander si elle pouvait pirater leur création et en découvrir les secrets. Note : Tweedle Dum est la version "facile" du challenge, regardez Tweedle Dee pour la version "difficile"....

April 30, 2023 Â· 5 min Â· Aether

Article - CVE PMB

CVE PMB Introduction On a recent pentest, I faced a web app that use PMB CMS full up to date. The CMS is Open Sourced so, I directly download it and start to analyze the code. PMB is a CMS used in multiple French organization and by other people over the web. The CMS help manage library or media library. After some hours of analysis, I manage to get an XSS on an endpoint but, not more....

April 10, 2023 Â· 5 min Â· Aether

Sthack 2022 : Pwn, Reverse

Reverse - JeanLouis Analyse En ouvrant le binaire dans Ghidra et après avoir renommé les variables, on tombe sur une sorte de memcpy d’un shellcode qui sera xoré avec une clé statique ensuite par le programme. Figure 1: Copie du shellcode et XOR de celui-ci. SHELLCODE = "4F274DEB5442071D4F075746544F530743424F42074A484F425D074B4F624953559F232727279C26272727AEC69D3F272727EAA79F242727279C27272727AA6B03C79D37272727EAA7AEE8AD30A7D56AA7DD3928A2CC27272760AD30A7D548A7DD1C28A2FB27272760AD30A7D553A7DD1B28A2EA27272760AD30A7D543A7DD0228A29927272760AD30A7D542A7DD0128A28827272760AD30A7D557A7DD1C28A28727272760AD30A7D546A7DD3D28A2B627272760AD30A7D554A7DD0D28A2A527272760AD30A7D554A7DD31525060AD30A7D542A7DD3B524B60AD30A7D514A7DD71524660AD30A7D514A7DD6D527160AD30A7D545A7DD20526C60AD30A7D546A7DD75526760AD30A7D543A7DD70521260AD30A7D543A7DD3E520D604F0E0E2D274F0042071D4F074D48524F654E42499F232727279C26272727AEC69D28272727EAA7CC1D4D2D4F090909094F544209094F075746544F530743424F54074A484F5251464E4F6A4627279F232727279C26272727AEC69D07272727EAA7CC279F262727279C27272727EAA700" SHELLCODE = bytes.fromhex(SHELLCODE) final_shellcode = bytearray(len(SHELLCODE)) for k in range(0, 0x18b): final_shellcode[k] = SHELLCODE[k] ^ 0x27 print(bytes(final_shellcode)) Il suffit de prendre le shellcode en mémoire de le copier et de placer la valeur hexa dans un site comme defuse....

May 27, 2022 Â· 6 min Â· Aether

Article - Analyse Lockbit

Analyse LockBit Analyse statique du code Vérification de l’Anti-Debug Au début du programme, celui-ci vérifie que le flag NtGlobalFlag (0x70) est set. Si c’est le cas, le binaire rentre dans une boucle infinie. Sinon le binaire continue son exécution. Figure 1: Vérification de l’Anti-Debug. Chargement des DLL Le binaire charge très peu de DLL et fonction au démarrage. Figure 2: Liste des DLL chargés par le programme. Si l’on continue dans le code, on peut voir des modifications de chaîne de caractère depuis la stack....

May 23, 2022 Â· 11 min Â· Aether