基于对象分析的攻击识别方法及装置的制造方法

文档序号:9238135阅读:232来源:国知局
基于对象分析的攻击识别方法及装置的制造方法
【技术领域】
[0001] 本发明涉及网络安全技术领域,具体涉及一种基于对象分析的攻击识别方法及装 置。
【背景技术】
[0002] 网络攻击,是指利用网络存在的漏洞和安全缺陷对网络系统的硬件、软件及其系 统中的数据进行的攻击。攻击分为主动攻击和被动攻击。主动攻击是指包含攻击者访问 所需要信息的故意行为。被动攻击主要是收集信息而不是进行访问,数据的合法用户对这 种活动一点也不会察觉到。被动攻击包括:1、窃听:包括键击记录、网络监听、非法访问数 据、获取密码文件;2、欺骗:包括获取口令、恶意代码、网络欺骗;3、拒绝服务:包括导致异 常型、资源耗尽型、欺骗型;4、数据驱动攻击:包括缓冲区溢出、格式化字符串攻击、输入验 证攻击、同步漏洞攻击、信任漏洞攻击。
[0003] 现有攻击的一种识别方案是基于正则表示进行的。基于正则表达式的攻击识别方 案的一般步骤为:针对攻击构造关键字符;构造正则表达式;判断是否有与正则表达式匹 配得的数据,如果有,则确定存在攻击。正则表达式是基于字符的逻辑过滤,检测效率低。以 对http请求消息进行攻击检测为例,是对所有包含的字符进行正则表达式匹配,随着攻击 特征以及数据请求量两方面增长,造成特征库特别庞大,而正则表达式匹配性能并非线性 增长,而是n*n的增长关系,效率会降到很低。

【发明内容】

[0004] 鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上 述问题的基于对象分析的攻击识别方法及装置。
[0005] 依据本发明的一个方面,提供一种基于对象分析的攻击识别方法,其特征在于,包 括:构建特征库,所述特征库包括多条特征表达式,每条特征表达式具有对象的属性;构建 多模库,所述多模库包括多条关键字,每条关键字具有对象的属性;所述多模库中的关键字 与所述特征库中的一条或多条特征表达式具有映射关系,具有映射关系的关键字与特征表 达式具有相同的属性;基于所述特征库及所述多模库,对解析消息后获得的对象的数据进 行匹配,确定是否存在攻击。
[0006] 优选的,所述基于所述特征库及所述多模库,对解析消息后获得的对象的数据进 行匹配,确定是否存在攻击包括:对获取的消息进行协议分析,解析获得一个或多个对象的 数据;针对所述对象的数据,利用多模库进行多模匹配,如果匹配到针对该对象的关键字, 则进行后续步骤,否则确定不存在攻击;从特征库中匹配是否存在针对该对象的、与匹配的 关键字具有映射关系的特征表达式,如果没有匹配到特征表达式,则确定不存在攻击,否则 进行后续步骤;基于所述针对该对象的、与匹配的关键字对应的特征表达式,对该对象的数 据进行规则匹配,如果匹配成功,则确定存在攻击,否则确定不存在攻击。
[0007] 优选的,所述多模库根据所述特征库构建,每一条关键字代表一个模式。
[0008] 优选的,确定一条关键字是否为针对所述对象的关键字的方式为:确定该关键字 的属性是否为所述对象;确定一条特征表达式是否为针对所述对象的特征表达式的方式 为:确定该特征表达式的属性是否为所述对象。
[0009] 优选的,在构建所述特征库过程中,基于攻击的类型,按照主类、子类和规则的方 式组织所述多条特征表达式;在构架所述多模库过程中,基于攻击的类型,按照主类、子类 和规则的方式组织所述多条关键字。
[0010] 优选的,所述消息为应用层协议消息;所述应用层协议包括TFTP、HTTP、SNMP、 FTP、SMTP、DNS或Telnet协议。
[0011] 优选的,所述消息是指http协议消息;所述对象是指http协议消息的预定义字 段,包括url、reference、参数、cookie。
[0012] 优选的,采用多模匹配算法进行所述多模匹配;所述多模匹配算法为ACBM算法。
[0013] 依据本发明的另一个方面,提供一种基于对象分析的攻击识别装置,包括:消息获 取单元,用于获取消息;消息解析单元,用于对获取的消息进行协议分析,解析获得一个或 多个对象的数据;特征库构建单元,用于构建所述特征库,所述特征库包括多条特征表达 式,每条特征表达式具有对象的属性;多模库构建单元,用于构建所述多模库,所述多模库 包括多条关键字,每条关键字具有对象的属性;其中,所述多模库中的关键字与特征库中的 一条或多条特征表达式具有映射关系,具有映射关系的关键字与特征表达式具有相同的属 性;匹配单元,用于基于所述特征库及所述多模库,对所述消息解析单元获得的对象的数据 进行匹配,确定是否存在攻击。
[0014] 优选的,所述匹配单元包括:多模匹配子单元,用于针对所述对象的数据,利用多 模库进行多模匹配;映射确定子单元,用于从特征库中匹配是否存在针对该对象的、与匹配 的关键字具有映射关系的特征表达式;规则匹配子单元,用于基于所述针对该对象的、与匹 配的关键字对应的特征表达式,对该对象的数据进行规则匹配;结果确定子单元,用于根据 多模匹配子单元、映射确定子单元及规则匹配子单元的确认结果确定是否存在攻击,其中, 如果多模匹配子单元未匹配到针对该对象的关键字、所述映射确定子单元没有匹配到特征 表达式或者所述规则匹配子单元没有匹配成功,则确定不存在攻击,如果所述规则匹配子 单元匹配成功,则确定存在攻击。
[0015] 优选的,所述多模库根据所述特征库构建,每一条关键字代表一个模式。
[0016] 优选的,所述映射确定子单元确定一条关键字是否为针对所述对象的关键字的方 式为:确定该关键字的属性是否为所述对象;所述规则匹配子单元确定一条特征表达式是 否为针对所述对象的特征表达式的方式为:确定该特征表达式的属性是否为所述对象。
[0017] 优选的,所述特征库构建单元,在构建所述特征库过程中,用于基于攻击的类型, 按照主类、子类和规则的方式组织所述多条特征表达式;所述多模库构建单元,在构架所述 多模库过程中,用于基于攻击的类型,按照主类、子类和规则的方式组织所述多条关键字。
[0018] 优选的,所述消息获取单元获取的所述消息为应用层协议消息;所述应用层协议 包括TFTP、HTTP、SNMP、FTP、SMTP、DNS或Telnet协议。
[0019] 优选的,所述消息获取单元获取的所述消息是指http协议消息;所述消息解析单 元获得的所述对象是指http协议消息的预定义字段,包括url、reference、参数、cookie。
[0020] 优选的,所述多模匹配单元采用多模匹配算法进行所述多模匹配;所述多模匹配 算法为ACBM算法。
[0021] 可见,本发明基于对象进行有针对性的过滤,且通过多模库与特征库结合的方式, 可以将大部分安全数据进行过滤,而不需要对大部分数据进行繁琐的字符匹配,从而显著 提_检测效率
[0022] 进一步,由于本发明对数据进行多模过滤、特征过滤及字符匹配三个层次的过滤, 对于安全数据在第一层次或第二层次即可保证安全过滤,而不必进行繁琐的字符过滤。在 第一层次过滤中,过滤掉所有的安全请求数据;第二层次过滤中,对有嫌疑的数据做一次初 步的过滤;第三层次过滤中,消息有攻击行为的可能行就非常大,用特征表达式来确定。采 用本发明实施例,通过第一层次能够过滤掉绝大部分的数据,第二层次和第三层次过滤中, 处理的请求数据大概在很小(据统计约为10%)的比例。也就是,不需要对绝大部分的正常 数据进行特征正则表达式匹配处理。由此,检测效率有显著提高。
[0023] 上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段, 而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够 更明显易懂,以下特举本发明的【具体实施方式】。
【附图说明】
[0024] 通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通 技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明 的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
[0025] 图1示出了根据本发明一个实施例的特征库与模式库的关系示意图;
[0026] 图2示出了根据根据本发明一个实施例的基于对象分析的攻击识别方法流程图; 以及
[0027] 图3示出了根据本发明一个实施例的按照攻击类型构建特征库或模式库的示意 图。
【具体实施方式】
[0028] 下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开 的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例 所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围 完整的传达给本领域的技术人员。
[0029] 以门户网站为例,由于用户多、浏览量大,因而存在较高的安全风险。目前较常 见的web应用安全漏洞包括:SQL注入、XSS跨站、表单绕过、Cookies欺骗、信息泄漏、 GoogleHacking、访问控制错误、PHP特有漏洞攻击、变量滥用、文件包含、上传漏洞攻击、网 页篡改、挂马等。
[0030] 以SQL注入攻击为例,现有基于正则表达式的SQL注入检测的过程为:当拦截到 http请求后首先对内容进行URL(统一资源定位符,Un
当前第1页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1