NX-Bit ist nicht nur für Sicherheit da

The NX bit is not just about security

In diesem Gastbeitrag erzählt Sonya, wie sie einen scheinbar unmöglichen Bug in einem ARM64-Hypervisor für postmarketOS jagte. Das Einschalten des CTR_EL0-Intercepts ließ das Telefon zufällig einfrieren. Nachdem sie Hypothesen wie falsche Emulation oder fehlerhafte Hardware ausgeschlossen hatte, entdeckte sie durch Binär-Bisektion einen Unterschied zwischen dynamischen und statischen Sprüngen. Der Verdacht fiel auf spekulative Ausführungen, die zu einem Nullzeiger führten – ein Problem, das über die übliche Sicherheitsperspektive des NX-Bits hinausgeht.

Wie unterscheiden sich dynamische Dispatches von statischen Verzweigungen? Dynamische Dispatches nutzen Sprungvorhersage, statische Verzweigungen wissen vorab, wohin sie führen, und können nicht fehlvorhersagen.

Mehr von diesem Tag

2026-09-07