[发明专利]一种检测结构化异常处理攻击的方法及装置有效
申请号: | 201410459683.7 | 申请日: | 2014-09-10 |
公开(公告)号: | CN104217163B | 公开(公告)日: | 2017-04-26 |
发明(设计)人: | 薛小昊;刘桂峰;姚辉 | 申请(专利权)人: | 珠海市君天电子科技有限公司 |
主分类号: | G06F21/56 | 分类号: | G06F21/56 |
代理公司: | 北京市广友专利事务所有限责任公司11237 | 代理人: | 祁献民 |
地址: | 519070 广东省珠海市唐家*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 检测 结构 异常 处理 攻击 方法 装置 | ||
技术领域
本发明涉及网络安全技术,尤其涉及一种检测结构化异常处理(SEH,Structured Exception Handler)攻击的方法及装置。
背景技术
随着计算机网络技术的广泛应用,互联网逐渐成为恶意应用程序攻击用户计算机的主要途径,恶意应用程序通过将应用程序文件伪装成其他类型文件,并引诱用户点击和下载,在恶意应用程序被下载到用户计算机并成功运行后,攻击者就可以利用安装的恶意应用程序,针对操作系统以及应用程序软件的漏洞实施攻击,例如,破坏用户计算机、窃取用户隐私信息等。其中,漏洞是指操作系统或应用程序软件在逻辑设计上的缺陷或在编写时产生的错误。这些缺陷或错误往往可以被攻击者利用,并植入木马等恶意应用程序,从而侵害、控制甚至破坏用户计算机软硬件系统,或者窃取用户隐私信息,给用户的网络安全带来极大隐患。
其中,通过缓冲区溢出的方式对操作系统漏洞实施攻击,是近年来操作系统遭受恶意应用程序攻击的主要方式。缓冲区是操作系统在应用程序运行期间,为该应用程序分配的用于存放局部变量及函数参数的一段连续的存储空间。当应用程序向预分配的固定大小(容量)的缓冲区中进行数据填充时,如果填充的数据超过缓冲区容量,在操作系统不对缓冲区中填充的数据进行边界检测的情况下,将发生缓冲区溢出现象,溢出的数据将向与缓冲区相邻的高地址继续写入,形成缓冲区溢出现象。
由于操作系统存在缺乏边界安全检查的机制,从而为攻击者入侵提供了可乘之机,攻击者可以利用缓冲区溢出现象,通过构造用于填充缓冲区的填充数据,从而使得溢出的数据覆盖到该应用程序的关键位置,例如,函数指针、函数的返回地址或是栈指针等,实现对该应用程序执行流程的控制,并进而可以将该应用程序引导到预先存放的恶意代码处执行,从而达到破坏操作系统甚至获得操作系统控制权限。以获得操作系统控制权限为例,通过缓冲区溢出,可以获取根(root)权限或管理员权限,并利用获得的根权限或管理员权限,实现窃取用户隐私信息的目的。
目前,针对缓冲区溢出,业界虽然提出了许多检测和防护策略,但一方面,由于不断有新的操作系统漏洞被攻击者发掘和利用,另一方面,已有的防护策略不断被层出不穷的攻击方式所攻破。因而,缓冲区溢出攻击仍面临较为严峻的形势,针对缓冲区溢出攻击的研究是网络安全领域的一个热点研究。
SEH攻击是一种新的缓冲区溢出攻击方式,攻击者通过利用堆栈溢出漏洞或者其他漏洞构造攻击数据,并使用构造的攻击数据覆盖运行应用程序的线程的SEH结构链表上的一个或多个节点中的数据,从而控制SEH结构链表中用于控制应用程序执行流程的指令指针寄存器(EIP,Instruction Pointer),给操作系统以及应用程序运行带来极大的安全威胁。
以Windows操作系统为例,SEH攻击一直是微软面临的最大安全问题。虽然微软在不断完善SEH攻击的防护策略,例如,在Windows XP SP2之后,针对SEH攻击,微软引入SafeSEH防护策略。但由于该SafeSEH防护策略,需要编译器在编译可执行(PE,Portable Execute)文件时进行特殊支持,例如,需要.net的编译器编译的映像文件支持才能发挥防护作用,而Windows XP SP2之前的很多库文件及操作系统文件都是由不支持SafeSEH的编译器编译的。因此,在漏洞攻击中,攻击者可以利用早期(Windows XP SP2之前)不支持SafeSEH编译器的模块进行攻击,从而绕过设置的SafeSEH防护策略。
针对SEH攻击,在Vista以上的版本中,微软还引入结构化异常处理覆盖保护(SEHOP,Structured Exception Handler Overwrite Protection)防护策略,该SEHOP防护策略具有比SafeSEH防护策略更严格的防护机制。通过对应用程序运行使用的线程的SEH结构进行安全检测,以检测该应用程序是否受到了SEH攻击。但该SEHOP防护策略需要用户手动开启SEHOP防护开关,也同样需要编译器的支持,且不支持Vista以下的版本,使得Vista以下版本的操作系统不能有效进行SEH攻击检测,因而,与SafeSEH防护策略相类似,防护SEH攻击的应用范围较为有限,不能满足早期版本的操作系统对SEH攻击的检测和防护;进一步地,由于层出不穷的漏洞攻击,尤其是在微软停止XP服务后,已有的SafeSEH防护策略以及SEHOP防护策略可能被其他的攻击方式所攻破,使得许多基于Windows操作系统的用户将面临更为严重的安全问题。
发明内容
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于珠海市君天电子科技有限公司,未经珠海市君天电子科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410459683.7/2.html,转载请声明来源钻瓜专利网。