Reverse Engineering x86 Processor Microcode
summary
The paper reverse-engineers microcode semantics and the update mechanism on AMD K8 and K10 x86 microarchitectures, analyzing how vendor-supplied microcode works and how updates are applied. It shows how to craft custom microcode updates and provides example microprograms, from CPU-assisted instrumentation to microcoded Trojans that enable remote code execution and attacks on cryptographic implementations (including vectors reachable from a web browser).
AI-written summary · about
chapters (9)
- 0:00x86 microcode intro
- 3:59Microcode role
- 7:23Microcode update security
- 10:00Testing microcode behavior
- 13:00Extracting/modifying microcode
- 17:28Live microcode patching demo
- 20:34Summary and future research
- 22:08Processor machine analysis
- 25:10Q&A
related talks
05mIgnite: Microcode Updates as Protection Against Spectre & Co.
51mKeynote |The Microarchitectures That I Saw And The Ones That I Hope To One Day See
47mHow to Hack a Turned-Off Computer, or Running Unsigned Code in Intel Management Engine
01h 09mDeobfuscate UEFI/BIOS Malware And Virtualized Packers
41mUsing Microarchitectural Design to Break KASLR and More
53mBack To The Future With Platform Security
01h 46mTutorial: Introduction to Reverse Engineering
28mComplexity Killed Security
