Share how awesome the crackme was or where you struggle to finish it! Stay polite and do not spoil the solution/flag!
Please keep the comments section English-only.
Author:
victormeloasm
Language:
C/C++
Upload:
2026-02-09 11:51
Platform:
Unix/linux etc.
Difficulty:
6.0
Quality:
4.0
Arch:
x86-64
Downloads:
26
Size:
28.65 KB
Writeups:
0
Comments:
2
Description
============================================================ Lugosi's II – Wayland CrackMe ============================================================ Name........: Lugosi's II Type........: Keygenme (Hard) Platform....: Linux (Wayland-only) Language....: C (Low-level, zero frameworks) GUI.........: Raw Wayland + SHM double-buffer Protections.: - Custom virtualized checks - Multi-stage serial verification - Non-linear state transitions - Anti-dump friendly layout - Timing-based mutation in validation path - Keyspace not brute-forceable within sane time - Minimal binary footprint (no symbols, no build-id, no NOTE/COMMENT) Difficulty...: High / Multi-day challenge Goal.........: Write a working keygen that generates valid serials ============================================================ DESCRIPTION ============================================================ "Lugosi's II" is a deliberately handcrafted, low-level Linux keygenme designed for serious reversers. The program does *not* use GTK, QT, SDL, or any common GUI toolkits. Instead, the interface is rendered directly through Wayland primitives (xdg-shell + wl_shm) with a full double-buffer implementation and compositor-paced frame callbacks. No external text, no debug symbols, no notes, and no metadata remain in the ELF. All checks are performed through a custom virtual machine embedded in the binary, with instructions spread across scattered blocks. Several branches mutate based on input timing and internal state, forcing the solver to understand the logic rather than brute-force it. The final verification stage merges: • non-linear transformations • a custom folding hash • per-character diffusion • time-dependent micro-rounds • hidden constant pools embedded in SHM regions No single check reveals correctness alone. Your mission: **Understand the algorithm and produce a functional keygen.** ============================================================ RULES & NOTES ============================================================ 1. Patching the binary is allowed, but does not count as a solve. 2. The expected submission is a *working keygen*. 3. The crackme does *not* run under X11/XWayland. Wayland only. 4. Tested on: - Sway - Hyprland - GNOME Wayland - KDE Wayland 5. The serial format is intentionally obscure. ============================================================ HINTS (NON-SPOILER) ============================================================ - The drawing code is irrelevant to the solution. - The virtual machine is not randomized but has moving parts. - Not all dead ends are actually dead. - The SHM buffers hide something useful. ============================================================ AUTHOR & INFO ============================================================ Author........: victor (Porquinho) Release date..: 2026 Contact.......: – Difficulty....: High (intended: 5–10 days of work) ============================================================ FINAL MESSAGE ============================================================ If you enjoy low-level Linux challenges, raw Wayland GUI code, and heavily obscured logic paths, this is for you. Good luck… and happy hunting!