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支持》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
C++ 程序设计语言(特别版)(英文影印版)
[美] Bjarne Stroustrup / 高等教育出版社 / 2001-8-1 / 55.00
《C++程序设计语言》(特别版)(影印版)作者是C++的发明人,对C++语言有着全面、深入的理解,因此他强调应将语言作为设计与编程的工具,而不仅仅是语言本身,强调只有对语言功能有了深入了解之后才能真正掌握它。《C++程序设计语言》编写的目的就是帮助读者了解C++是如何支持编程技术的,使读者能从中获得新的理解,从而成为一名优秀的编程人员和设计人员。一起来看看 《C++ 程序设计语言(特别版)(英文影印版)》 这本书的介绍吧!