Another year, another CCC. It's been a long road from Berlin to Leipzig and Hamburg. Each year, I repeat the ritual of going to the "Kongress", the most amazing hacker get together in the world. The Kongress is special, hackers of all denominations meet, engage, hack, and enjoy a few mellow days towards the end of the year.
I was amazed by the large amount of assemblies and enjoyed the CTF assembly with the flying shark, all the lights and constructions throughout along with the secret party in a hidden restroom (one had to enter from a side door at one of the halls, go to a lower floor and then discover a club built into a restroom with lights, speakers, good music and a whole bunch of people) and the even more secret club (apparently called something like the Hutzelwutze but don't blame me for the spelling) further down hidden somewhere in the basements of the congress center.
This year, around 10 HexHivers were present. Some of us gave a talk and many joined the 40 Organizer/Polygl0t players for the CTF. Overall a good showing from Switzerland and we'll certainly be back next year!
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
ACE up the sleeve: Hacking into Apple's new USB-C controller by stacksmashing. Stacksmashing explained us how he reverse engineered the new Apple USB-C controller by first targeting and understanding the previous model. The talk was deeply technical but fun. Especially the firmware extraction, analysis, and mapping was a massive amount of work. Stacksmashing made it sound easy but overall this was a very cool talk that is highly recommended to those interested in USB-C firmware and potentially the discovery of bugs.
Investigating the Iridium Satellite Network by sec and Schneider. I'm old enough to have seen the first talk they did on Iridium a few years ago and this talk was an amazing continuation. The Iridium satellite network is getting a bit older but still hides some secrets. Sec and Schneider went into some low level signal details and how the text messaging system sent unencrypted text messages through "beams" to different places. They speculated that Iridium could be used as a positioning system, replacing GPS or other services. But they also highlighted privacy implications of these services that are usually running in clear text for both audio and text messages. Surprisingly, a lot of the audio/texts they decoded were test messages, posing the question about how much Iridium is actually still used.
EU's Digital Identity Systems - Reality Check and Techniques for Better Privacy by Anja Lehmann and socialhack. I explored this talk due to the upcoming Swiss ID system that shares some aspects with the EU one. Anja and socialhack gave a great overview of the underlying technology and highlighted some risks. Even tough the underlying cryptography is rather complex, Anja managed to explain it in a straight forward manner that was understandable to anyone with a basic background in computer science. Towards the later part of the talk, they also highlighted possible extensions towards future proof extensions and argued for "a leap of faith" towards new research, allowing them to build better privacy preserving tools that can be used in these ubiquitous identity systems.
Wir wissen wo dein Auto steht - Volksdaten von Volkswagen by Michael Kreil and Flüpke. As it turns out, Volkswagen had a datenreichtum where they left large amounts of data publicly accessible in an AWS bucket. The discovery started through a simple enumeration of web endpoints and the underlying framework left the heap dump feature enabled, allowing the hackers to download the full heap "for debug purposes". In this heap dump, they discovered general tokens that allowed them to impersonate any user and get access to the AWS storage. The storage dump contained full information about the owners such as email addresses and sometimes phone numbers but also GPS traces over long periods of time. This massive breach of privacy and trust was substantial. It is unclear why Volkswagen collected this information in the first place and deeply concerning that it was openly accessible.
We've not been trained for this: life after the Newag DRM disclosure by Michal Kowalczyk, q3k, Jakub Stepniewicz. This follow up from last year's talk discussed how the researchers were SLAP'd with frivolous lawsuits to silence them. Last year, these hackers from Dragon Sector talked about how Newag added DRM to their trains along with geolocking to undermine competitors that were interested in servicing these trains. Instead of admitting fault, Newag went all in and started suing people left and right, including the hackers who reverse engineered the DRM (including discovering the magic unlock code where you have to press the SOS button in the toilet as part of the sequence) and the geo locks. While they presented it lightly, it must suck massively when companies pull such shit moves and start suing security researchers. Not sure Newag understands how hackers work.
Fnord-Nachrichtenrückblick 2024 by Fefe and Atoth. This year Frank could not make it to the CCC, so Fefe had to find some replacements. As each year, the talk highlighted some of the fuckups and screwups throughout the year and was entertaining as ever. Recommended as an alternative review of the year in tech and tech politics.
Day 2: Moving to Eastern Time
As always at the CCC, there is a massive intergalactic time shift. This day, we therefore had breakfast in Eastern time, moving roughly 6 hours after Central European time. Still, we managed to sneak in and get some breakfast.
From Pegasus to Predator - The evolution of Commercial Spyware on iOS by Matthias Frielingsdorf. Great overview of different iOS exploitation vectors and how the spyware evolved over time. Unfortunately the room was full and I could not make it in, but I marked this talk for later consumption.
Fearsome File Formats by Ange Albertini. This talk was concurrent to the MacOS talk but knowing Ange, I also marked it for later watching.
MacOS Location Privacy Red Pill: A Rabbit Hole Resulting in 24 CVEs by Adam M. As this talk was not recorded, I managed to sneak in and check out Adam's talk. He highlighted the new MacOS TCC privacy framework that restricts how applications can access privacy-relevant data. He discovered that applications often leak private information such as location data or other details through side channels. An unprivileged app can therefore leak this information from privileged apps. Overall, this talk was not super exciting as the "fail open" approach where untrusted applications still have incredible access to log information or the file system seems ultimately at conflict with security and privacy. Also, the presented CVEs were all 1-2 years old and seemed a bit stale. I learned later that this talk was already given several times at other venues, so not the best use of my time overall.
10 years of emulating the Nintendo 3DS: A tale of ninjas, lemons, and pandas by neobrain. Neobrain is a key emulation hacker and has vast experience with the different 3DS emulation platforms. He shared some political insights into how to make a thriving community around emulation development but also some design aspects how to make efficient and performant emulators. Key is to select the right emulation abstraction. While the underlying ISA is fairly straight forward, one must select a reasonable abstraction layer to implement the different services. The three main options are to emulate the raw hardware where it is difficult to translate between the different peripherals, to emulate at the micro kernel interface to abstract away the low level devices, or to emulate at the high level of services. Neobrain explained how he moved from a high level emulator to a mid level emulator and had massive success and speed ups. Great technical talk overall with some fun sprinkles of politics. And, as you may know, I'm always a sucker for some cool binary analysis and translation.
io_uring, eBPF, XDP and aF_XDP by LaF0rge. Harald Welte, known from Osmocon, told us some technical details about how to write high performance I/O stacks that read from thousands of file descriptors. A key overhead with I/O is that many small reads result in massive amounts of transitions between user space and kernel space and lots of copying of data. The new io_uring interface in the kernel makes this much faster as I/O becomes asynchronous and the user-space program can send and receive at the same time by filling data into a ring buffer. Harald highlighted the different pros and cons and overall gave a nice introduction.
Hacking yourself a satellite - recovering BEESAT-1 by PistonMiner. A few years after its launch, BEESAT-1 went silent and stopped transferring telemetry data. PistonMiner took us on a journey on reverse engineering the firmware, discovering a few bugs along the way and speculating about the original bug that killed the flash page with the configuration of the telemetry data (a concurrency bug during the update of the boot parameter). Overall a super entertaining talk with some insight into the programming of Cube sats. Highly recommended!
Day 3: Arriving in Pacific Time
The time dilatation continued and we arrived in Pacific time. It was a slight struggle to get up as we spent quite some time in the club and only got a few hours of sleep.
Dialing into the Past: RCE via the Fax Machine - Because Why Not? by Rick de Jager and Carlo Meijer. After getting some big $$$ at pwn2own, Rick and Carlo wanted to have some fun and thought that a printer can be pwned not just through by printing a document but also remotely by receiving a fax. Surprisingly, the fax interface allows sending different formats, including print documents that are then processed by the printer. They used their Jpeg2000 bugs to trigger an RCE through the fax subsystem and ultimately ran DOOM. I later had some fun playing with the DOOM interface on the printer as well. Super cool hack.
Beyond BLE: Cracking Open the Black-Box of RF Microcontrollers by Adam Batori and Robert Pafford. Another talk I sadly missed but heard lots of good things about. Added to my watch list for later.
Ultrawide arecheology on Android native libraries by Luca and Rokhaya. Luca and Rokhaya have been working on Android apk analysis for a while and they used this opportunity to present some cool insights they found when downloading lots of APKs and trying their best with modern machine learning solutions. As it turns out, downloading large amounts of APKs is hard in the first place. Surprisingly, many apps have native libraries and most of them are downloaded from Maven and other repositories. Developers rarely compile their native libraries and just dump zip archives into their code (which is a security nightmare as well but alas). When evaluating the binary similarity machine learning solutions, they discovered that these tools don't scale to realistic datasets. While they could be useful for tiny datasets where function comparison is necessary, they will not be useful for large scale analysis.
Ten years of Rowhammer: A Retrospect (and Path to the Future) by Daniel Gruss, Martin Heckel, and Florian Adamsky. Another talk I missed but according to the coverage, looks like it was super fun! I'll definitely watch the recording.
Departure
On the last day, we enjoyed a final breakfast and headed to the harbor. As it was the first time in Hamburg for several HexHivers, we had to stroll through the fish market, get a tasty Matjes sandwich, walk the Elbtunnel and then it was already time to get to the airport and back to Switzerland.
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!