打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
数据随机化

该技术是在编译阶段在原始程序的数据操作指令前后加入一系列处理指令,使得原始数据以加密形式存储到内存中,只有正确解密内存数据的指令才能够正常执行。因此,攻击者将因为不了解原始密钥,而无法正确改写数据(如,指针地址)或泄漏内存中的原始数据。例如,攻击者若采用控制流劫持攻击,其想要覆盖的内存地址值是密文,不知道密钥的攻击者便无法构造正确的内存地址因而无法篡改程序的控制流。

2003年,C.考恩(Crispin Cowan)等人提出了PointGuard技术,是数据随机化技术的雏形。该技术将指针加密存储于内存中,仅在指针解引用(dereference)时才进行解密,使得攻击者无法直接覆盖指针以实现劫持程序的控制流。但该技术仅限于保护指针,而无法对抗非指针覆盖类型的攻击。2008年,微软研究院的C.查德尔(Cristian Cadar)等人首次正式提出数据随机化技术的概念,能够全面保护存储到内存中的数据。该技术是将在编译阶段通过静态分析识别数据操作相关指令,在内存数据操作指令前后加入一系列处理代码,使得数据在加密后才写入内存,并且通过在不同的内存操作处采用不同的随机密钥以增强随机性。

数据随机化能够有效弥补地址空间布局随机化和指令集随机化技术的局限性,运行期间引入的开销相对较小(约增加11%),能够抵御代码注入攻击和数据流攻击(例如,数据导向返回编程攻击(Data Oriented Programming Attack))等内存数据相关的软件漏洞利用攻击。

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
非接触式IC卡干扰式旁路攻击与防护
蓝牙存在致命安全漏洞,或暴露设备数据
IoT上的缓冲区溢出漏洞
陈根:蓝牙也能泄露隐私?无孔不入的黑客攻击
蓝牙技术不断发展,你的网络如何保障安全?
缓冲区溢出攻击指什么?如何防御?
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服