OmniCTF 2026 Quals misc writeup — four challenges solved covering baccarat live TCP betting game where BlackShard is the deliberately weak agent so simulating matchups with the handout's own game.py plus Kelly-x2 bet sizing reaches the 100x target in ~13% of sessions with a reconnect loop, Node Node-RED 5.0.1 with no admin auth exposing exec-node flows for instant RCE as svc_node then a SUID nodestatus binary with DT_RUNPATH pointing at a world-writable /var/lib/node directory that lets a malicious libshared.so constructor run as uid 0, nostalgia Scratch 3 .sb3 archive whose RISCV.ROM list is a bootable Linux kernel plus initramfs cpio whose root/readme.txt carries the flag, and Sanity P0zzl3 100 transparent PNG jigsaw pieces of a shuffled purple QR code solved as a 10x10 CP-SAT assignment on alpha-channel-recovered piece geometry followed by morphological repair of the seam cuts

OmniCTF 2026 Quals Misc Writeup: 4 Challenges Solved

OmniCTF 2026 Quals shipped a misc track that runs the full skill spectrum: baccarat (game theory / Kelly criterion + reconnect loop), Node (Node-RED unauth RCE chained to a SUID DT_RUNPATH shared-library hijack for root), nostalgia (nested container parsing from Scratch .sb3 to a RISC-V Linux kernel to a newc cpio to a text file), and Sanity P0zzl3 (computer vision + constraint programming: 100 transparent PNG jigsaw pieces of a shuffled QR code solved as a 10x10 assignment problem, then morphological repair to decode). What ties them together is a single discipline: the handout is the oracle. baccarat’s game.py simulates its own agents. Node’s /entrypoint.sh names the misconfiguration. nostalgia’s .sb3 is a ZIP. Sanity P0zzl3’s PNG alpha channels give piece geometry cleanly. Every challenge hands you enough to reconstruct the exploit from first principles. ...

July 20, 2026 · 25 min · 5200 words · CyberSecurity Elite Team
Educational content for authorized testing only. · Disclaimer · Editorial Policy · Sitemap