KASLR, KPTI and Modern Kernel Defenses
Kernel address randomization, page-table isolation, and the config options that harden a Linux kernel against memory-corruption exploits — what each one stops and how to enable it.
Speichersicherheit aus Sicht der Verteidigung
Eine strukturierte Referenz zu Speicherkorruptions-Schwachstellen in C und C++: wie Stack- und Heap-Überläufe, Use-after-free und Integer-Bugs entstehen und wie Compiler, Sanitizer, Fuzzer und sicherere Sprachen sie stoppen.
Speicherkarte
Beginnen Sie mit dem Speicherlayout, lernen Sie die Fehlerklassen kennen, die ihn korrumpieren, und dann die Schichten, die sie verhindern, finden, eindämmen und priorisieren.
Stack, Heap, ELF-Segmente und Aufrufkonventionen: das Terrain jedes Bugs.
Überläufe, Use-after-free, Double Free, Integer- und Format-String-Bugs und wie man sie erkennt.
Canaries, NX/DEP, ASLR/PIE, RELRO, FORTIFY_SOURCE, CFI, CET und PAC und wie man sie prüft.
AddressSanitizer, UBSan und coverage-gesteuertes Fuzzing mit libFuzzer und AFL++.
Signale, Backtraces, Sanitizer-Berichte und Core-Dumps lesen und entscheiden, was zuerst behoben wird.
Speichersichere Sprachen, sichereres C++ und eine realistische Migrationsstrategie.
Ein legaler, gestufter Weg von C und Assembler zu CTF-Pwn-Challenges und Security-Karrieren.
ret2win, ret2libc, ROP-Ketten, GOT-Überschreiben und Format-String-Primitiven, im Labor gebaut und ausgehebelt.
AArch64-Aufrufkonventionen, Link-Register, ROP auf ARM und die PAC- und BTI-Abwehr.
Rechteausweitung aus einem Kernel-Bug: das Credential-Modell, ret2usr und SMEP, SMAP, KASLR und KPTI.
SEH-Überschreiben, DEP-Umgehung per ROP und die Mitigationen SafeSEH, SEHOP, ASLR, CFG und CET.
Defense in Depth
Jede Mitigation hat Lücken. Echte Widerstandsfähigkeit entsteht durch gestaffelte Schichten: Ein Bug, der eine Schicht passiert, wird von der nächsten erkannt oder eingedämmt.
Speichersichere Sprachen, grenzgeprüfte APIs, Compiler-Warnungen und Code-Reviews verhindern, dass Bugs entstehen.
ASan, UBSan und coverage-gesteuertes Fuzzing decken geschriebene Bugs auf, bevor es ein Angreifer tut.
Canaries, NX, ASLR/PIE, RELRO, CFI und Shadow Stacks erschweren die Ausnutzung verbleibender Bugs.
Crash-Triage, Core-Dumps und Deduplizierung machen aus Abstürzen im Feld priorisierte Fixes.
Neueste Leitfäden
Leitfäden erscheinen zuerst auf Englisch. Übersetzungen folgen.
Kernel address randomization, page-table isolation, and the config options that harden a Linux kernel against memory-corruption exploits — what each one stops and how to enable it.
A kernel memory-corruption bug is about privilege, not a shell. The credential model, the commit_creds(prepare_kernel_cred(0)) payload, and returning cleanly to userspace — in a lab VM.
The kernel once trusted userspace memory, so exploits just pointed kernel execution at a user payload. SMEP and SMAP ended that — and how kernel ROP works around them.
Every exploit walks the same stages: bug, corruption, hijack, code execution, escalation. A defender's checklist of which mitigation stops each — across Linux, ARM, Windows and the kernel.
DEP makes stack shellcode unrunnable, so a Windows ROP chain calls VirtualProtect to mark the shellcode region executable, then jumps to it. Build it with mona, then see ASLR and CFG respond.
How SafeSEH, SEHOP, ASLR, Control Flow Guard and hardware CET each close a Windows exploitation technique — what they check, how to enable them, and their limits.
Glossar
Kurze, präzise Definitionen der Begriffe aus Sicherheitshinweisen, Crash-Berichten und Compiler-Dokumentation.
Redaktionelle Linie
Wer Exploitation versteht, versteht, warum Mitigationen sinnvoll sind. Wir erklären die Mechanik auf dem Niveau, das Entwickler, Reviewer und Incident Responder brauchen, und hören vor der Bewaffnung auf.
Was Sie hier finden
Was wir nie veröffentlichen