<?xml version="1.0"?><rss version="2.0"><channel><title>riverxia</title><link>https://blog.riverxia.sh/</link><description>blog</description><item><title>i self-host my email now (and every wrong turn i took)</title><link>https://blog.riverxia.sh/post16.html</link><description>postfix, dovecot, rspamd, opendkim and roundcube on a cheap vps so i can have a real address on my own domain. the dns you actually need, and every dumb thing that broke on the way.</description></item><item><title>cctf.rs — I rebuilt CTFd from scratch in Rust</title><link>https://blog.riverxia.sh/post15.html</link><description>Why I wrote my own CTF platform from zero in Rust. Hand-rolled SMTP and JWT, sandboxed rhai scripting in every corner, per-team Kubernetes instancing, SSE notifications, and a fully headless API. A build log.</description></item><item><title>Crypto: Baby ZKP</title><link>https://blog.riverxia.sh/post13.html</link><description>A Schnorr proof whose response is reduced mod the wrong prime. Two stages, two RNGs — a truncated LCG cracked with a lattice, and MT19937 rebuilt from GF(2) relations on the leaked responses.</description></item><item><title>Misc: TEAGod Staff WiFi</title><link>https://blog.riverxia.sh/post14.html</link><description>An enterprise WiFi RADIUS server that trusts a public CA for client auth. Grab a free Actalis S/MIME cert, present it as your EAP-TLS client cert, and you&#x27;re staff.</description></item><item><title>Crypto: Needle in a Multivariate</title><link>https://blog.riverxia.sh/post12.html</link><description>A multivariate-quadratic signature with no norm check. The 200 published signatures leak the hidden basis — BKZ it back, read off the secret p·I/q·I blocks, and forge with four squares.</description></item><item><title>OSINT: oshit</title><link>https://blog.riverxia.sh/post11.html</link><description>smartfella ctf fr. the best osint chain i&#x27;ve ever seen, a 20-hop rabbit hole.</description></item><item><title>From Dusk Till Dawn 2026 Quals</title><link>https://blog.riverxia.sh/post10.html</link><description>16 solves, 6 writeups. we went hard on this one. italian CTF with rome finals for top 5.</description></item><item><title>Reversing KryptonPlus: Tearing Apart a Minecraft Rat</title><link>https://blog.riverxia.sh/post9.html</link><description>Full static analysis of a JNI-obfuscated Minecraft cheat client with a bundled RAT — custom Zig AOT compiler, IEEE 754 string encryption, and goto-spaghetti bytecode decryption.</description></item><item><title>Crypto: White Rabbit</title><link>https://blog.riverxia.sh/post6.html</link><description>Known-plaintext XOR crib attack on a fake PDF to recover a 16-byte repeating key.</description></item><item><title>Web: BrandKit Studio</title><link>https://blog.riverxia.sh/post7.html</link><description>Double extension upload bypass on nginx + PHP-FPM to get arbitrary file read.</description></item><item><title>How We Built a Self-Hosted CTF Platform (From Scratch-ish)</title><link>https://blog.riverxia.sh/post8.html</link><description>Custom CTFd deployment with Cloudflare Tunnel, per-player instancing, WebSocket bridge for nc challenges, and a theme that actually looks good.</description></item><item><title>Web: Paper 2</title><link>https://blog.riverxia.sh/post5.html</link><description>CSS attribute selectors meet Redis LRU eviction in a 500-point side-channel challenge.</description></item><item><title>random osu! adjacent shitpost</title><link>https://blog.riverxia.sh/post4.html</link><description>its a shitpost dont expect effort here</description></item><item><title>The Most Demented Python Line I Have Ever Written (Probably)</title><link>https://blog.riverxia.sh/post3.html</link><description>Lambdas lambda&#x27;ing all over control codes. Don&#x27;t you love it?</description></item><item><title>Why C++ Will Never Die (and why it shouldn&#x27;t!)</title><link>https://blog.riverxia.sh/post2.html</link><description>It&#x27;s not because it&#x27;s such a perfect language...</description></item><item><title>Building a Serverless, Dynamic Blog with Pure HTML and JS</title><link>https://blog.riverxia.sh/post1.html</link><description>How I built a (somewhat) secure markdown-based blog engine that compiles at runtime using vanilla JS and Firebase, completely skipping modern build steps or server infrastructure.</description></item></channel></rss>