2024
2023
- SNES emulator: writing a multi-threaded renderer
- Embedded Rust: customizing the Cortex-M exception vector table
- Solving Advent of Code 2022 day 13 in Rust
2022
- Dissecting killbutmakeitlooklikeanaccident.sh and porting it to ARM64
- Building a Chromium-based web kiosk using Yocto/OpenEmbedded
2021
- Ignoring outgoing packets on Linux AF_PACKET sockets
- KFENCE - Detecting memory bugs in production kernels
2020
2018
2017
- Flare-on 2017 #10: shell.php
- Flare-on 2017 #9: remorse.ino.hex
- Flare-on 2017 #8: flair.apk
- Flare-on 2017 #7: zsud.exe
- Flare-on 2017 #6: payload.dll
- Flare-on 2017 #5: Pewpew boat!
- Flare-on 2017 #4: notepad.exe
- Flare-on 2017 #3: greektome.exe
- Communicating within 0.0.0.0/8
- Google CTF 2017: ASCII Art Client (reversing)
- Google CTF 2017: Moon (reversing)
- Google CTF 2017: JohnnyBoy (reversing)
- Address Space Layout Randomisation on Windows
- Fun with a vulnerable web server