删节后是文章“ 了解硬件强制的堆栈保护 ”的翻译。
作者:内核保护团队-Jin Lin,Jason Lin,Niraj Majmudar,Greg Colombo
这是有关Windows 10中引入英特尔控制流实施技术(CET)的两个系列概念翻译的第一本(综述)出版物。
我们努力使Windows 10对我们的客户而言是最安全的操作系统之一,为此,我们在许多安全功能上进行了投资。我们的理念是创建可降低各种漏洞的有效性的功能(理想情况下,无需更改应用程序代码)。 MSDN另有一篇文章“使用Windows 10安全功能缓解威胁”,汇总了我们多年来在Windows中内置的所有面向安全的技术。本文还介绍了每个功能如何确保客户安全。Matt Miller和David Weston还将做一个介绍,推荐阅读MSDN文章后再阅读。该演讲深入介绍了我们的安全理念。
我们目前正在研究基于硬件的安全功能。这将使我们大大提高防御攻击的门槛。由于Windows内核与硬件的深度集成,攻击者进行大规模攻击将变得困难且成本高昂。
根据研究(CFI攻击的演变,Joe Bialek),可以说ROP(返回定向编程)攻击已成为非常普遍的攻击者工具。因此,它们是内置主动Windows安全技术的下一个目标。在此出版物中,我们描述了我们使用基于硬件的堆栈保护来增强Windows 10中控制流完整性的努力。
内存安全漏洞
, , . , (dangling pointers), .
( strcpy). , (: ) , .

(dangling pointers) , , , , . use-after-free ( ) / , ( , ).
: , . , .
, .
:

Code Integrity Guard (CIG) .
Arbitrary Code Guard (ACG) , , , .
CIG ACG , Call/Jump Oriented Programming (COP/JOP) Return Oriented Programming (ROP).
Control Flow Guard (CFG) Windows 10 ( , forward-edge CFI). (Shadow Stacks) (backward-edge CFI).
ROP
, , . : , Data Execution Prevention (DEP) Address Space Layout Randomization (ASLR). () . , RET ( ), ( ), .

, Intel' Control-flow Enforcement Technology (CET). CET Intel.
Windows 10. , (Shadow Stack). CALL , . RET , , .
, (control protection, #CP). Windows , .

(Shadow Stack) , .
(Shadow Stacks) CET
, , , .
SSP, () . .
:
- INCSSP — SSP ( )
- RDSSP — SSP
- SAVEPREVSSP/RSTORSSP — / (, )
Intel’ CET.
, PE , .
, Windows , . Windows , PE .
(opt-in: ) , .
, Insider preview- Windows 10. , Intel' CET, Insider preview- Windows 10.
ROP , . , Windows , .
, , . , . Windows 10 .
, ( ) . - ( ) ( ) — . … , , :) , .