2026
-
Hacking fun with zip-slips, tar-slips, symlinks, hardlinks, collisions, and more
-
Magic Switch: Share a Magic Keyboard & Trackpad Between Two Macs (Free)
-
Video Games Around The World: South Africa
-
Video Game History Around The World: An Essay.
-
Some Thoughts on Cross-Cultural Video Game and Music
-
Exploring "Bus Tours" of Nintendo and Sega: The Nintendo Challenger, Campus Challenge, and More.
-
Always 'Copy Clean Link' when possible on Firefox, with userChrome.css
-
Making Firefox's right-click not suck, even more, with userChrome.css
-
Making Firefox's right-click not suck with about:config
-
wtf is NS_ERROR_INVALID_CONTENT_ENCODING? investigating shared dictionaries and ChatGPT breakage in Firefox
-
From gixy-ng to Gixy-Next: rescuing the nginx security scanner, Gixy, from AI slop
2025
-
My 2025 Bug Bounty Stories
-
A helicopter story
-
Another AI slop story: ChatGPT vs. Human
-
AI slop security engineering: Okta's nextjs-auth0 troubles
-
Gixy-Next: an overview of a Gixy fork with updated, improved, and new checks
-
Retrospective: AI-powered security engineers and source code scanners
-
One-Way Sandboxed Iframes: Creating a Read-Only Iframe Sandbox That Can't Read Back
-
CCBot: Chrome Checker Bot for Chrome Security Releases
-
body: A bash script to get the middle of a file, instead of head | tail
-
Network Security: Absurdity of Shared NICs with BMCs and Management Networks
-
Securely Validating Domain Names with Regular Expressions
-
Breaking decompilers with single-function, and no-main() C codebases
-
Flattening Arrays, Tail Call Recursion, and Stack Overflows in JavaScript
-
ipgrep: grepping for ip addresses
-
Swapping/Remapping the silcrow (§) key for a tilde on international Macbooks
-
Bypassing Zscaler, Kandji MDM, and Apple Business Manager for Fun and Lulz
-
NXDOMAIN'd: Catching unregistered domains for fun and profit
-
Two infinite loop / DoS vulnerabilities in image-size
-
Hacking with AI SASTs: An overview of 'AI Security Engineers' / 'LLM Security Scanners' for Penetration Testers and Security Teams
-
A Comparison of Tools to Detect ReDoS-vulnerable Expressions
-
Proxy Services, Hijacked Companies, and the Rabbit-Hole of Fake Hosting Companies and Big Sky Services
-
nginx 'allow' and 'deny' directives with 'return'
-
nginx's proxy_pass DNS caching problem
-
On Iranian Censorship, Bypasses, Browser Extensions, and Proxies
-
A small solution to DNS rebinding in Python
-
Losing Sight and Vision of Your Mission and Culture: Part 3.5
-
Hello, Kafka Support Here, How Can I Help You? GitHub Edition
-
POV: You land at Melbourne Airport
-
wtf Google: cacheable rss feeds are dead, and Atom feeds are delayed
-
Identifying ReDoS Vulnerabilities in Nginx Configurations Using Gixy-Next
-
Losing Sight and Vision of Your Mission and Culture: Part 3
-
On being an illegal immigrant, hacking an unlimited Schengen visa, and becoming Polish
-
LLMs are destroying art: the art of code, literature, and culture.
-
Can Nginx Configurations Be Vulnerable to ReDoS Expressions?
-
proxy_pass: nginx's Dangerous URL Normalization of Paths
-
Extracting TLS Session Keys in Burp Proxy à la SSLKEYLOGFILE
-
Debugging failures of HTTP/2 in Burp, mitmproxy, and browsers
-
NodeJS, nvm, yarn, and npm on MacOS in 2025
-
CodeQL on MacOS
-
Updating FreeBSD's datetime without DNS
-
Feedburner's Caching Problem
2024
2023
2022