Overview
Syllabus
Intro
Windows 8 Security Overview
Framing the problem with exploit economics
History of exploit mitigations on Windows
The state of memory safety exploits
Objectives & focus areas in Windows 8
Range Checks Compiler-inserted array bounds check (via /GS)
Sealed optimization • Optimization for sealed C++ types & methods
Virtual Table Guard
Retrospective: ASLR
Force ASLR
Bottom-up & top-down randomization
ASLR entropy improvements
Removal of information disclosure vectors • Information disclosures can be used to bypass ASLR
Retrospective: Windows Heap
Windows 8 heap architecture The general design of the Windows heap is unchanged in Windows 8
LFH design changes & integrity checks
Guard pages
Allocation order randomization
Retrospective: Windows Kernel
Kernel ASLR improvements
Support for SMEP/PXN
NULL dereference protection
Kernel pool integrity checks
Other improvements
ARM default settings All applicable mitigations are enabled on ARM
Application default settings Il applicable mitigations are enabled for Windows Metro style app
Enabling opt-in mitigations
Expectations for exploits on Windows 8
Call to action
Taught by
Black Hat