内存信息泄露的运行中随机化防御方法的研究与改进

来源 :南京大学 | 被引量 : 0次 | 上传用户:qzyss
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
运行中随机化是针对基于内存信息泄露的代码复用攻击提出的一种防御方法。在程序运行过程中触发随机化操作,使攻击者难以获得有效的内存布局信息用于组织攻击。现有的运行中随机化方法TASR使用write/read操作配对出现作为运行中随机化的触发条件。然而,触发条件过于宽泛,使得没有风险的write操作也会触发运行中随机化,导致程序性能下降,I/0密集型程序所受影响尤为严重。因此,本文研究内存信息泄露的运行中随机化防御方法,细化运行中随机化触发条件,以避免不必要且耗时的随机化操作,提高运行中随机化方法的有效性。本文主要的研究工作如下:(1)分析、总结了不同类型的内存布局信息泄露以及基于随机化的防御方法的原理,重点分析了现有运行中随机化方法存在的运行开销问题以及其随机化触发条件不合理的原因。TASR的运行中随机化触发条件为write/read操作配对出现,因此善意的write操作也会触发运行中随机化,造成程序性能损失。(2)为细化运行中随机化触发条件,定义了安全敏感区域的概念,并以write操作访问安全敏感区域作为随机化操作的触发条件,同时给出了程序安全敏感区域的分析、提取方法,以及程序运行中检查方法。安全敏感区域是包含有助于攻击者分析程序内存布局信息的内存区域,对其进行write操作访问可使攻击者获得内存布局相关信息,因此为有风险的内存访问操作。通过分析目标文件的元数据以及监控装载/卸载过程能获得安全敏感区域的范围,而对write操作访问目标进行检查,判断是否与安全敏感区域相交来区分有、无风险的操作,以此细化随机化的触发条件。(3)通过分析目标文件的段表和节表来提取安全敏感区域的信息,以及对装载/卸载操作相关的系统调用进行监控,来确定安全敏感区域的最终位置。然后对输入/输出相关的系统调用进行监控来判断是否要触发运行中随机化,以此实现了改进方法的原型系统。理论分析表明,改进方法可保持与原方法相同的安全性。以Nginx网络服务器作为I/O密集型程序样本,进行了服务能力实验。实验结果表明,改进方法能显著降低原方法对I/O密集型程序造成的额外开销。
其他文献
低压开关设备的安全可靠性直接影响着整个供电系统的正常运行,为了避免计划维修导致的“过剩维修”和“不足维修”,本文采取模糊理论的方法对低压开关电器的工作状态进行预测,并根据器件的健康状态来制定检修计划,实施设备检修,然后应用智能故障诊断模型—改进的RBF神经网络对器件的故障进行诊断。这样不仅可以节约维修费用,而且可以减少故障排查时间。首先,对低压电气控制柜的整体结构进行了分析,由于故障最终发生在组成
随着多媒体技术和宽带网络的飞速发展,视频点播VOD(Video on Demand)的应用越来越广泛,并深受用户的欢迎。智能化住宅小区的普及,给视频点播服务带来了广阔的应用前程;宽带网
当前,网络和数据库技术的快速发展,使得计算机能存储大规模的海量数据;但传统的数据分析处理工具如管理信息系统对这些数据只能进行表层的处理,更深层次的数据分析能力却不尽