Another year, another CCC. As every year, I went to Hamburg to appreciate all galactic life forms in their diverse multi-dimensional environment. My goal this year was the usual meet ups with friends I haven't seen in a long time, get inspired for new research directions, to catch some talks, and, ideally, play a bit of CTF if there was time.
This year, we also had a talk on the first day, so quite a bit of time went into preparing and rehearsing. Luckily, the talk went smooth and we had a lot of time afterwards to achieve all the other goals.
The congress is a bit like coming home. Every year I feel incredibly welcome. There's lots of blinking lights, diverse music playing, a few bars with Mate, coffee, and beers along with enough time to chat, explore, and hack. The congress is a way for me to recharge and get ready for the next year.
I have two hearts beating in me. The first is an academic that tries to improve security at a global scale by developing new techniques and analyzing weaknesses. The other is a hacker that is driven by the curiosity of how systems tick. At the congress, I can live the hacker heart.
As last year, a bunch of my group explored the congress alongside and it was also great to meet a few former HexHivers.

Same as each year, I attended a few talks and, given the 14,000 attendees did not make it into the rooms for some of the other talks. The rest of the blog post highlights some of the amazing talks and gives a small summary.
Day 1: Quality Talks
Liberating Bluetooth on the ESP32: Anton reversed the proprietary BT stack for the ESP32 and liberated it, now allowing an open source implementation that gives developers direct access to low level traffic, per channel scans, arbitrary BT RF traffic and lots of low level features that are otherwise hidden behind the HCI stack.
Opening pAMDora's box and unleashing a thousand paths on the journey to play Beatsaber custom songs: thimstar presents a wild story on glitching AMD cpus to tease out internal ARM cores, extracting boot ROMs and trying to get code execution way before the x86 cores start to execute. Extremely interesting deep dive into glitching, mod chips, and the exploration of the dark arts.
Of Boot Vectors and Double Glitches: Bypassing RP2350's Secure Boot stacksmashing and nsr give an overview of the Raspberry Pie RP2350 processor that combines a nice ARM core and a RISC-V core with glitch detection, one time programmable memory and a bunch of other security features at an unbeatable price point of 1$. They discuss the results from the bug bounty along attacking the OTP PSM, forcing a vector boot, laser fault-injection, OTP read double glitch and FIB antifuse extraction to read the 16 byte secret hidden in the OTP memory.
To sign or not to sign: Practical vulnerabilities in GPG & friends: 49016 and Liam presented some of their research into GPG signature verification. During the talk, they demonstrate a few issues with signature parsing along with violating signature checks, wrong signatures and even a few memory corruptions. Apart from the awesome vulnerabilities, this talk highlights some of the issues with old open source projects. Many of these projects have strong leaders that struggle with assessing security issues. Liam and 49016 had a hard time to convince the maintainers to assign CVE numbers despite being able to fake signatures.
Escaping Containment: A Security Analysis of FreeBSD Jails: ilja and Michael Smith target a slightly different angle this year and look at FreeBSD jails. In particular at the remaining attack surface of the kernel and how to abuse it to break out of the jails. By enumerating the attack surface and thoroughly exploring it they found several severe bugs. An interesting observation was that there are still quite severe memory corruption vulnerabilities in the FreeBSD kernel. Compared to Linux, this was somewhat surprising as the kernel there is thoroughly fuzzed through syzkaller.
Die Känguru-Rebellion: Digital Independence Day <https://media.ccc.de/v/39c3-die-kanguru-rebellion-digital-independence-day>: Marc-Uwe Kling and Linus Neumann talked about a digital independence and called for digital sovereignty in a fun way. This talk, apart from the comedy aspect, highlighted the need for Europe to create, manage, and deploy our own independent services, ideally built on open source.
Not To Be Trusted - A Fiasco in Android TEEs <https://media.ccc.de/v/39c3-not-to-be-trusted-a-fiasco-in-android-tees> in our talk, we presented a chain of bugs that results in a full compromise of Beanpod TEEs. I blogged about our talk earlier.
Hacking washing machines Hajo and Severin started looking into old broken washing machines from Miele and B/S/H. After some exploration, they moved up to newer devices and reverse engineered several of the newer connected systems and enabled interesting debug features.
Bluetooth Headphone Jacking: A Key to Your Phone: Dennis and Frieder presented their research on impersonating Bluetooth devices. Their twist was essentially that they could read out the Bluetooth address and keys by connecting to specific vendor chips to then take over sessions. They highlighted the attack vector of the HFP (hands free) profile that allows to take calls and redirect them over Bluetooth to hijack second factor validation.
Day 2: All about the social interactions
Don't look up: There are sensitive internal links in the clear on GEO satellites Nadia and Annie expanded on their earlier research of unencrypted satellite backend communication. The presented some new findings, including military operations conducted in the clear. One of the difficulties that lead to this security breach is that users have no (legal) way to pentest this backend.
Xous: A Pure-Rust Rethink of the Embedded Operating System: bunnie and xobs presented their work on an embedded Rust operating system along the design of a microkernel. While the OS was pretty standard stuff, they also presented a new RISC-V devboard that we got to play with. While bunnie only spent a few slides on the technical details, I was impressed by the way how he snuck a RISC-V chip alongside a fused-off ARM chip to safe on royalty fees.
The rest of the day, I spent mostly socializing and talking to other people in different assemblies.
Day 3: A few more talks
Build a Fake Phone, Find Real Bugs: Qualcomm GPU Emulation and Fuzzing with LibAFL QEMU Romain who is still pushing on his PhD at EURECOM is telling us how to target Qualcomm GPUs through a libAFL driver on Android. This talk is a great intro into libAFL usage and how to write fuzz drivers for not-too-easily-reached targets. Overall a great intro into GPU fuzzing as well. And Romain found lots of cool bugs, so definitely recommended.
The Angry Path to Zen: AMD Zen Microcode Tools and Insights Benjamin builds on earlier research on reversing the AMD K8 and K10 microcode and ports it to get into Zen. In this talk he quickly introduced the concept of microcode patching and discussed, at length, how he built an extensive toolchain to create your own instructions.
Rowhammer in the Wild: Large-Scale Insights from FlippyR.AM: Martin, Florian and Daniel gave an overview of RowHammer and presented some studies of rowhammer in the wild where they distributed USB sticks to thousand participants and got them to run the code on their systems to test for Rowhammer flippable bits according to diverse patterns.
Von Fuzzern zu Agenten: Entwicklung eines Cyber Reasoning Systems für die AIxCC Mischa and Annika introduce the audience into fuzzing, LLMs, and how they are used as part of a cyber reasoning system at the AIxCC. The goal of this DARPA competition was to develop an end-to-end cyber reasoning system that finds bugs, creates exploits but also patches them. They discussed the common approaches used by the different teams along with some limitations. Great overview and introduction into this topic.
Gen.Polyb.io workshop: This year, there was a fun new game at the congress. One could register a simple NFC card at a base station. After joining a fraction, one could "capture" other base stations, redirect energy, and gain points for their team. This was a super fun treasure hunt to find all the different stations and kept us up one night. On the third day, the developer of the stations gave a workshop on how he built the system, what software was running, and how to make it tamper resistant. Overall a cool insight into low level hardware.
Departure
On the last day, I grabbed a quick breakfast and headed towards the airport. After a stroll through the harbor area, I did a quick stop to explore some caches and then caught up with some emails at the airport.
I'm sure that I missed many great talks but that's part of the congress experience: you live in the moment and randomly pop into workshops and talks while missing out on some others. Luckily, most talks are recorded and I'll be able to catch up later, so let me know if I missed your favorite talk in my list above.
We'll be back next year with hopefully another talk, renewed energy, cool hacks, and lots of time to talk to people. So long, see you next year at the congress, and hack the planet!