The NX bit is not just about security

2026-09-04

Link: https://purplesyringa.moe/blog/guest/the-nx-bit-is-not-just-about-security/

HN Discussion: 1 points, 0 comments

Ask any systems programmer what the NX (No-eXecute) bit does and you'll get a confident, one-sentence answer: it marks memory pages as non-executable so an attacker can't jump into a buffer they've filled with shellcode. Case closed, DEP/W^X, move on. This post — hosted on purplesyringa's guest blog, a domain that consistently publishes some of the sharpest low-level writing on the internet — argues that this framing sells the NX bit dramatically short.

The title is a promise: there's a second life for this humble page-table bit that has nothing to do with stopping stack smashing. Based on the venue and framing, the likely territory includes:

What makes this worth the click is that the NX bit sits at a beautiful abstraction seam. It's one bit in a PTE, backed by silicon since the mid-2000s, and its intended use has become so canonical that most engineers never think past it. But every page-protection primitive the MMU exposes is really a general-purpose fault-on-access mechanism, and clever runtimes have been quietly repurposing them for decades — mprotect for GC write barriers, PROT_NONE for guard pages and stack overflow detection, and now, apparently, NX for something more than defense.

The kind of post that makes you look at a familiar mechanism sideways and see a whole new set of uses.

Why it deserves more upvotes: A well-known security primitive gets recast as a general-purpose systems tool — exactly the kind of "you already have this, you just weren't using it" insight HN was built for.

All newsletters