When Anthropic published its Mythos announcement , it really seemed impressive at first, almost worrying. But when reading thoroughly, the public evidence is less clean than the headline effect. The often-cited "under $20,000" figure does not mean Mythos casually found one devastating bug for that price; in Anthropic's own writeup, that budget covered a large search process with roughly a thousand…
As you may or may not know, developping software from an aarch64 Linux machine is not that common - and that is no exception for the V8 JavaScript engine . It does officially support building from an Apple Silicon MacOS, but not from Linux aarch64. As my current setup involves compiling from a Linux aarch64 VM, here's how I did it in this context. TL;DR Get LLVM from…
Before anything I want to say that I am not a web developer. In my IT life and experiments I always tried to stay as far as possible to anything that would be running with Node.js. Now, I am aiming to post more on this blog, and hopefully I will, if I take the time to do so and do things that are worth sharing. This post describes my discovery of Next.js and the Node environment (and it is…
I joined Bluesky in September 2023. I didn't post anything there, since I was using X mainly. Although it looked like a copy of Twitter, it felt refreshing as the experience of scrolling on Bluesky felt better. I used to spend a lot of time on X but since a few months (or is it years now?) my experience there has been catastrophic. The relevance of the posts, the replies sorting, and many other…
I recently decided to weekly back up some important data. In order to do so, I took an old dusty laptop from the shelf and configured it to wake up with a Wake-On-LAN packet and bought a SATA to USB adapter to plug in an external hard drive. My typical hard drives are 3.5 inches disks which require both 5V and 12V as power input, hence why most adapters will provide a USB input to do the data…
Since a few months I am using Bitwarden as my password manager. The main reason I started using it was that I wanted an easy way to keep my passwords synchronised, which local password managers like KeePassXC do not provide. You end up having to implement your own synchronization mechanism for instance storing the database file in a cloud synchronised folder like Google Drive , DropBox , NextCloud…
Unfortunately, things don't always go as planned. I started this sci-fi TV show, and couldn't help but prefer watching it over doing some more productive things. The good thing is that although the content of the show is getting less interesting and slower, I started feeling like I was spending 50 minutes watching episodes only to get 10 minutes of actual content, ending up on a cliffhanger and…
TL;DR: Having a Nginx configuration file with server_name _; is not enough for it to match any not supported domain name. Always properly configure a fallback method with a self-signed certificate not leaking any personal data and make sure it is loaded first as the loading order of configuration files matters. For instance move it to /etc/nginx/sites-enabled/0_default and make sure no other…
Pwn2Own is a famous computer hacking contest which helds twice a year. It provides various targets for which hackers compete in order to hack them and get unprivileged access to it. It may feature industrial devices, routers, printers, smartphones or even cars and targets change for each event. With a coworker of mine we took a glance at the Netgear R6700v3 and this blogpost is a quick recap on…
Last month of April I also gave a shot to the SSTIC challenge . It was very painful and amongst 150 participants and over 1600 downloads, I managed to finish 4th in the speed ranking with only 12 people managing to complete the challenge. My solution (in French) can be found here but as this year was the first time the challenge was open internationally, two solutions are available in English (the…
I often need to fetch a pending Pull Request (PR) from GitHub in order to try a project locally before merging the PR, and although I manage to find the commands in my history, I never remember the commands. It's rather simple, given that the remote named origin is the one from GitHub, 1234 is your PR number (from GitHub URL, or PR title) and that you want to fetch it under a branch named…
Around 10 days ago was DEFCON qualifiers and I had a chance to take a look at the challenges. My eyes stopped on "Exploit for dummies" as I recognised myself in the term "dummy" and hoped I could solve this one. The challenge was marked as "shellcoding" and believe it or not it will deal with DWARF debugging data format. A trivia quizz We are given an ELF binary named trivia which first reads…
In the context of the European Cyber Security Challenge (ECSC) the ANSSI organised qualifications named FCSC (now dead link) in order to select the team that would represent France. I managed to take a look at some challenges, in particular "The Offenders" which deals with Windows Defender. This writeup will show my quick and dirty way of solving it. [Update Sep 25, 2024] The challenge files are…
A few months ago I got nostalgic and wanted to try again a little bit of Lineage 2. In the past most servers were filled with tons of bots that would farm in order to either level up, gain money or loot materials useful for crafting equipment. The working and available bots are all non-free (to my knowledge) and most of them are detected by the remote servers as cheating tools! So I decided to…
During the month of April I tried to solve the SSTIC challenge. I managed to complete it eventually, and you can find my solution in French here (password: sstic2020). As every year, the SSTIC conference organizes a challenge, which is always interesting as the content is quite unique and it demands various skills. It took me approximately 2 weeks to solve it, and I am happy as it is the first…
This month, I took a glance at Over The Wire advent CTF with some of my teammates of Securimag . The challenge was asking for at most 4 bytes to patch and I found it sufficient to exploit not the binary itself but rather the exec function. I don't know if that was the intended way, but it was quick enough to pop a shell and get the first blood. Mutated ELF We just rescued an elf that was captured…
Last october, I participated to Hack.lu Capture The Flag with my team Securimag . I did this writeup as all the ones I've read do not explain how they managed to reliably find the offset of real_cred in the current_task structure. I didn't have much time to allocate for that challenge, and as I'm interested in exploitation, I quickly jumped on "Baby Kernel 2" as it was marked as easy and dealing…