论文部分内容阅读
基于浏览器的偷渡式下载攻击(Drive-by Download Attacks)已经成为当前最具威胁的恶意攻击方式之一。与正常的弹出式下载方式不同,偷渡式下载攻击在不与用户交互的情况下利用系统程序漏洞完成攻击。在成功入侵用户系统后,攻击者可以获取目标机上重要的银行账号或购物网站登陆息。根据偷渡式下载攻击特点,传统的防御方法一般分为三种,基于静态或动态网页代码分析技术、蜜罐技术、基于代码层的检测方法。在充分分析相关技术的优势与不足后,本文基于Windows文件系统过滤驱动与用户层钩子技术,实现了一种有效防御采用偷渡式下载方式的恶意程序执行的系统。本文创新之处主要有以下两点:首先,为了正确区分文件下载方式为偷渡式下载还是弹出式下载,本文在应用层模块中引入文件下载全路径(File Full-Path)概念解决下载方式的匹配问题。首先分析用户下载行为,判断出用户确定下载时间点;然后拦截浏览器的文件下载过程,获取下载弹出进度框中的文件存放目录,将其作为文件全路径参数下传给内核层文件过滤驱动模块。其次,在内核层模块设计中引入特殊空间(Special Zone)概念。特殊空间的功能是禁止被重定向进入到此空间的可执行文件的执行。基于MiniFilter过滤驱动的文件过滤模块将所有通过浏览器进程下载的可执行文件先重定向到特殊空间里,然后根据文件全路径信息匹配文件下载方式。当文件下载方式为弹出式下载时,需要将文件还原到原保存目录,这样做的目的是保证系统对用户的透明性。由于恶意程序一定会在执行之前重定向至特殊空间中,系统阻断了恶意程序自动执行过程,有效地保证了用户系统的安全。本文从有效性与性能消耗两项指标对系统进行了安全测试。实验结果表明,该系统具有良好的防御基于浏览器的偷渡式下载入侵能力和较低的运行开销。