windows10的cfg,windows10cf兼容性最佳设置( 三 )


windows10的cfg,windows10cf兼容性最佳设置

文章插图
运行时显示EIP控制:
windows10的cfg,windows10cf兼容性最佳设置

文章插图
而且 , 在偏移0x40和0x44的写入现在位于栈顶 , 允许创建一个stack pivot和ROP链 , 一种方法是用POP EAX接着XCHG EAX , ESP 。
0x03 微软缓解措施
Microsoft已经声明 , 堆栈上的损坏返回地来绕过CFG是一个已知的设计限制 , 因此无法修复或领取任何种类的赏金 , 如下所示:
windows10的cfg,windows10cf兼容性最佳设置

文章插图
正如那个所说 , 微软做了两个事情来缓解这个技术 , 首先在未来的Windows 10版本中 , RFG将被实现 , 阻止堆栈损坏以给予执行控制的方式 。另一个是在Windows 10的周年版发布中引入敏感的API的介绍 , 它仅保护微软Edge , 但是上述情况无法保护 , 但是他能阻止微软Edge中的RtlCaptureContext 。Poc代码可以在这找到:***/MortenSchenk/RtlCaptureContext-CFG-Bypass 。

推荐阅读