/img/logo.jpg

🍞 Lxt3h 🧀
Junior reverse engineer

KnightCTF SwitchBank

KnightCTF - Knight Switch bank Nom Knight Switch Bank Points 200 Difficulté Facile Validation 173 Bonjour, je vous présente aujourd’hui ma writeup sur le challenge de Reverse Knight Switch bank du CTF KnightCTF. Commençons par le commencement, tout d’abord lançons le binaire. Analyse et compréhensions du binaire Lorsque nous lançons le binaire on peut voir qu’il demande un mot de passe. On peut potentiellement en conclure que le mot de passe est en dur dans le code du binaire, mais qu’il y a un algorithme à reverse.

Config Loader HackSecuReims

Config Loader - HackSecuReims int __cdecl main(int argc, const char **argv, const char **envp) { int v4; // [rsp+10h] [rbp-10h] BYREF unsigned __int64 v6; // [rsp+18h] [rbp-8h] v6 = __readfsqword(0x28u); v4 = 0; ignore_me_init_buffering(argc, argv, envp); print_banner(); puts("Access restricted - You must log in first"); sleep(1u); if ( !(unsigned int)login() ) { puts("Unauthorized access detected - Exiting"); exit(1); } while ( v4 != 6 ) { print_menu(); printf(">>>"); __isoc99_scanf(" %d", &v4); fflush(stdin); if ( v4 <= 0 || v4 > 5 ) { puts("Unknown action, exiting .

FCSC 2023 Tweedle Dee Web

Tweedle-Dee Analyse du code @app.route("/") def hello_agent(secret=None): ua = request.user_agent return render_template("index.html", msg=f"Hello {ua}".format(ua=ua)) worker_processes 4; events { use epoll; worker_connections 128; } http { charset utf-8; access_log /dev/stdout combined; error_log /dev/stdout debug; real_ip_header X-Forwarded-For; real_ip_recursive on; set_real_ip_from 0.0.0.0/0; server { listen 2201; server_name _; location /console { return 403 "Bye"; } location @error { return 500 "Bye"; } location / { error_page 500 503 @error; proxy_intercept_errors on; proxy_pass http://app:5000; } } } Ayant fait le challenge Tweedle Dum je comprend rapidement que le code de la route n’a pas changĂ© et je n’ai accès qu’a une format string.

FCSC 2023 Peculiar Caterpillar Web

Peculiar Caterpillar Analyse du code Nous allons commencer par une première analyse du code fournit par l’auteur du challenge. index.js require("express")().set("view engine", "ejs").use((req, res) => res.render("index", { name: "World", ...req.query })).listen(3000); Globalement ce script ne fait qu’importer express, configure le moteur de template ejs et renvoie une vue sur le fichier index.ejs tout envoyant un objet contenant ...req.query avec une variable name qui sera interprĂ©tĂ© au rendu par EJS pour l’afficher sur la template index.

Writeup HTB Business CTF License Generator

Free license generator by Lxt3h and mhoste Nom Free License Generator Points 1000 Difficulté Insane Validation 18 This was the hardest reverse engineering challenge from HTB Buisness CTF. This chall helped us to improve our skills in WinAPI and Miasm. The challenge provides us a PCAP and a x86 PE binary being a malware. The PCAP is the a record of the communication between the victim and the C2. PCAP analysis This is what it looks like :