CTF@AC 2025 Finals

CTF@AC 2025 Finals We (Paolo) partecipated this CTF in Timișoara from Fri, 07 Nov. 2025, 16:00 CET until Sun, 09 Nov. 2025, 10:00 CET arriving 2nd overall 🥳. Even though it was our first experience as a CTF in an international contest we managed to have real fun while solving these challenges. Team components that partecipated: Marco Balducci (@Cryingfreeman74) Alan Davide Bovo (@Hecker404) Enea Maroncelli (@Zazaman) ...

November 9, 2025 · 47 min · 9950 words · Paolo

CTF@AC 2025 Quals

CTF@AC 2025 Quals Web 🌐 money Analysis The challenge exposes a minimal dashboard that supports third‑party plugins. When we upload a plugin, the platform also lets us download any existing ones (including the official flag.plugin). Exploit After downloading flag.plugin, we notice it’s encrypted. The server.py file contains both the key and the function to decrypt it, so we can locally decrypt it using decrypt_file. KEY = b"SECRET_KEY!123456XXXXXXXXXXXXXXX" def decrypt_file(input_path, output_path, key): with open(input_path, "rb") as f: data = f.read() iv = data[:16] ciphertext = data[16:] cipher = AES.new(key, AES.MODE_CBC, iv) plaintext = unpad(cipher.decrypt(ciphertext), AES.block_size) with open(output_path, "wb") as f: f.write(plaintext) The decrypted flag.plugin init.py contains the following code: ...

September 16, 2025 · 36 min · 7546 words · Paolo

scriptCTF 2025

scriptCTF 2025 🚩 Back From Where 💻 Problem Statement The problem can be stated as follows: You are given an \(N \times N\) grid of integers \(a_{ij}\). A path is considered valid if it starts top-left and only moves down or right. For each cell \((i,j)\) find the maximum number of trailing zeros in the product of values along any valid path. Writeup 📜 Number of trailing zero’s The first question is how to practically calculate the number of trailing zero’s of a number $m$. The answer is pretty straightforward: we find how many times $m$ is divisible by $5$ and by $2$ the number of trailing zero’s is how many five’s and two’s can be matched together. Suppose $m$ is divisible by five $f$ times and by two $t$ times, then the number of trailing zero’s is \(min(f, t)\). ...

August 22, 2025 · 14 min · 2974 words · Ale18V, AlBovo, katchup

Pascal CTF Beginner 2025

Pascal CTF Beginner 2025 Web 🌐 Static Fl@g This challenge is one of the simplest in web security, as it relies on a client-side check to reveal the actual flag. The flag is embedded in the JavaScript code of the index page, encoded in base64, making it easy to locate with a bit of inspection. Therefore there isn’t any need to create a script to solve this challenge. ...

March 26, 2025 · 10 min · 2050 words · Paolo