您现在的位置是:网络安全 >>正文
操作系统/虚拟化安全知识域:系统强化之控制流限制
网络安全24426人已围观
简介控制流限制正交防线是调节操作系统的控制流。通过确保攻击者无法将控制权转移到他们选择的代码上,即使我们不删除内存错误,我们也使利用内存错误变得更加困难。最好的例子被称为控制流完整性CFI),现在许多编译 ...
正交防线是操作调节操作系统的控制流。通过确保攻击者无法将控制权转移到他们选择的系统虚拟系统限制代码上 ,即使我们不删除内存错误 ,化安我们也使利用内存错误变得更加困难 。全知强化最好的识域例子被称为控制流完整性(CFI) ,现在许多编译器工具链(如LLVM和微软的控制流VisualStudio) ,并于2017年以ControlFlowGuard的操作名义并入Windows内核-另见软件安全CyBOK知识领域。
从概念上讲,系统虚拟系统限制CFI非常简单:我们确保代码中的化安控制流始终遵循静态控制流图 。例如 ,模板下载全知强化一个函数的识域返回指令应该只允许返回到它的调用站点 ,而使用C中的控制流函数指针或C++中的虚函数的间接调用应该只能够定位它应该能够调用的合法函数的入口点。为了实现这种保护,操作我们可以标记间接控制转移指令的系统虚拟系统限制所有合法目标(返回、间接调用和间接跳转),化安并将这些标签添加到特定于此指令的集合。在运行时 ,建站模板我们检查指令即将进行的控制转移是否是到集合中的目标 。否则 ,CFI会发出警报和/或使程序崩溃。
与ASLR一样,CFI有多种口味,从粗粒度到细粒度,从上下文敏感到上下文不敏感。就像在ASLR中一样 ,今天的大多数实现只采用最简单,最粗粒度的保护。亿华云粗粒度CFI意味着为了性能而稍微放宽规则。例如 ,它不是将函数的返回指令限制为可能调用此函数的仅目标合法调用站点,而是可以针对任何调用站点。虽然不如细粒度CFI安全,但它仍然极大地限制了攻击者的回旋余地,并且具有更快的运行时检查。
在现代机器上,某些形式的CFI甚至(或将要)得到硬件的源码下载支持。例如 ,英特尔控制流强制技术(CET)支持影子堆栈和间接分支跟踪 ,以帮助分别强制实施退货和前向控制传输的完整性(以非常粗粒度的方式)。ARM也不甘示弱 ,它提供了指针身份验证,以防止对指针值进行非法修改—主要是通过使用指针的上位来存储指针身份验证代码(PAC) ,其功能类似于加密指针值上的签名(除非您获得正确的PAC ,否则您的指针无效)。源码库
遗憾的是,CFI只能通过破坏返回地址 、函数指针和跳转目标等控制数据来帮助抵御改变控制流的攻击,但对非控制数据攻击却无能为力。例如 ,它无法阻止覆盖当前进程的权限级别并将其设置为“root”的内存损坏(例如,通过将有效用户ID设置为root用户的ID)。但是 ,如果对控制流的香港云服务器限制在实践中如此成功 ,您可能想知道数据流是否也可以进行类似的限制 。事实上 ,它们确实如此 ,这被称为数据流完整性(DFI)。在DFI中 ,我们静态地确定每个加载指令(即从内存中读取的指令)存储指令可能合法地产生了数据 ,并且我们标记这些指令并将这些标签保存在一组中。在运行时,对于内存中的每个字节 ,我们记住该位置的最后一个存储的标签。当我们遇到加载指令时 ,我们会检查该地址的最后一个存储是否在合法存储集中 ,如果不是,我们会发出警报。与CFI不同 ,DFI在实践中并未被广泛采用 ,可能是因为其显著的性能开销。
Tags:
转载:欢迎各位朋友分享到网络,但转载请说明文章出处“信息技术视野”。http://www.bziz.cn/html/348d799644.html
相关文章
如何使用Redeye在渗透测试活动中更好地管理你的数据
网络安全关于RedeyeRedeye是一款功能强大的渗透测试数据管理辅助工具,该工具专为渗透测试人员设计和开发,旨在帮助广大渗透测试专家以一种高效的形式管理渗透测试活动中的各种数据信息。工具概览服务器端面板将 ...
【网络安全】
阅读更多Alienware17配置升级教程(教你如何升级Alienware17的硬件配置,让游戏性能发挥到极致)
网络安全Alienware17作为一款高性能游戏笔记本,已经为众多游戏玩家提供了出色的游戏体验。然而,随着游戏的发展和要求的提高,我们往往需要对其硬件配置进行升级,以确保在最新游戏中能够流畅运行。本文将为大家 ...
【网络安全】
阅读更多华为荣耀7剪辑视频方法
网络安全1)打开华为荣耀7【视频】,在【我的视频】界面中点击【我的拍摄】。(如下图) 2)点击【三点】,在提示框中点击【视频趣味剪辑】,自行选择剪辑区域及特效即可,而且还能加特效呢!duang! ...
【网络安全】
阅读更多