LLVM已经提供了一个“Shadow Call Stack”传递,用于保护程序免受堆栈缓冲区溢出的影响。虽然64位ARM(AArch64)影子调用堆栈运行良好,但x86_64实现被认为是不够的,现在已被删除。
发现x86_64 LLVM影子调用堆栈的性能下降太多,并且存在安全漏洞,因此预计它会被删除,而现在它终于发生了。 LLVM 9中已 删除 x86_64版本将继续支持AArch64 LLVM ShadowCallStack传递。
删除x86_64 ShadowCallStack支持
摘要:
x86_64上的ShadowCallStack遭遇与Return Flow Guard相同的安全问题,并且根据基准测试,性能开销高达13%。 x86_64 ShadowCallStack始终是一个实验性功能,并且从未提供支持它所需的运行时,因此没有预期的下游用户。
那些有兴趣了解Shadow Call Stack的设计意图及其与AArch64的相关性的人可以通过 LLVM文档 找到。
Linux公社的RSS地址 : https://www.linuxidc.com/rssFeed.aspx
本文永久更新链接地址: https://www.linuxidc.com/Linux/2019-03/157350.htm
以上所述就是小编给大家介绍的《LLVM放弃对x86_64的Shadow Call Stack支持》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
Purely Functional Data Structures
Chris Okasaki / Cambridge University Press / 1999-6-13 / USD 49.99
Most books on data structures assume an imperative language such as C or C++. However, data structures for these languages do not always translate well to functional languages such as Standard ML, Ha......一起来看看 《Purely Functional Data Structures》 这本书的介绍吧!