[发明专利]跨站攻击的检测方法、装置和具有该装置的防火墙有效
申请号: | 201210346751.X | 申请日: | 2012-09-18 |
公开(公告)号: | CN102833269A | 公开(公告)日: | 2012-12-19 |
发明(设计)人: | 张斌;常磊 | 申请(专利权)人: | 苏州山石网络有限公司 |
主分类号: | H04L29/06 | 分类号: | H04L29/06 |
代理公司: | 北京康信知识产权代理有限责任公司 11240 | 代理人: | 吴贵明;张永明 |
地址: | 215163 江苏省苏州市高新区*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 攻击 检测 方法 装置 具有 防火墙 | ||
技术领域
本发明涉及互联网领域,具体而言,涉及一种跨站攻击的检测方法、装置和具有该装置的防火墙。
背景技术
近几年,跨站攻击(Cross Site Scripting,XSS)始终盘踞着Web安全威胁的榜首。攻击者通过XSS,可以达到诸如钓鱼、网站挂马、HTTP会话劫持、信息盗取等非法目的,因此,XSS严重影响Web的安全和正常运行。
为了检测XSS,现有的IPS、IDS或WAF等系统中,均是基于正则表达式匹配的防护技术,也即通过正则表达式描述XSS行为,与正则表达式相匹配的行为确定为XSS行为,例如采用如下的正则表达式:<iframe/s+(src/s*=|height/s*=|width/s*=)。
但是,可以用于XSS的形式非常多,几乎每一个HTML标签、CSS标签都可以被用于攻击,为了避免漏报,需要通过大量的正则表达式进行匹配,无疑会直接产生网络性能的降低。同时,HTML、CSS标签的混淆形式非常多,例如攻击者可以通过HTTP编码、HTML编码、添加无效字符(控制字符、换行符、标点符号)等手段进行防御躲避,使得基于正则表达式的防护技术出现漏报。为了避免漏报,需要对正则表达式放宽描述精度,而这种做法又会直接导致误报的出现。此外,采用基于正则表达式的防护技术,在规则命中后,没有额外的处理,从而安全管理员不能知道攻击的详细行为,给安全管理员的工作带来了额外的分析负担。
综上,由于正则表达式本身描述能力的局限性,使得基于正则表达式的XSS检测技术存在误报高和漏报高的缺点。
为了克服正则表达式在表述能力上的弱点,现存的很多WAF类产品采用基于机器学习的检测技术。通常该类技术都需要一个学习阶段,也即:采用统计分析、数据挖掘等方法,学习到正常流量的数据特征后,在后续的检测阶段,对接收到的流量在学习到的正常流量模型的指导下进行分类,采用“非正常即异常”的方式检测攻击。
但是,由于机器学习过程中存在过学习和欠学习的问题,过学习通常意味着攻击流量混入了正常流量中被错误地学习,从而导致攻击的特征被带入到最终的正常流量模型,此时在检测时会带来漏报的问题;欠学习通常意味着学习流量并没有包含所有的正常流量模式,导致部分正常流量的模型没有被学习到,在检测过程中会导致误报的问题。
综上,由于现实中很难完整地学习到正常流量的所有特征,使得基于机器学习的检测技术中仍然存在误报和漏报的问题。
针对相关技术中跨站攻击的检测方法容易误报和漏报的问题,目前尚未提出有效的解决方案。
发明内容
本发明的主要目的在于提供一种跨站攻击的检测方法、装置和具有该装置的防火墙,以解决跨站攻击的检测方法容易误报和漏报的问题。
为了实现上述目的,根据本发明的一个方面,提供了一种跨站攻击的检测方法。
根据本发明的跨站攻击的检测方法包括:对用户提交的数据进行参数分解,得到分解后的参数;对分解后的参数进行HTTP编码的解码,得到解码后的参数;对解码后的参数进行词法分析,得到词法分析后的参数;对词法分析后的参数进行语法分析,并建立语法树;以及当语法树建立成功时,确定用户提交的数据对应的行为是跨站攻击。
进一步地,对用户提交的数据进行参数分解包括以下任意一种或多种参数分解:对数据请求行中的URI进行参数分解;对数据请求的Cookie首部进行参数分解;对数据请求的Cookie2首部进行参数分解;对数据请求的Referer首部进行参数分解;以及对POST请求的实体进行参数分解。
进一步地,在对解码后的参数进行词法分析之前,该方法还包括:判断解码后的参数是否由数字和/或字母组成,其中,对解码后的参数进行词法分析包括:当解码后的参数不是由数字和/或字母组成时,对解码后的参数进行词法分析。
进一步地,对解码后的参数进行词法分析,以得到词法分析后的参数包括:对解码后的参数进行HTML的词法分析,以得到HTML词法分析后的参数;以及对解码后的参数进行CSS的词法分析,以得到CSS词法分析后的参数。
进一步地,对词法分析后的参数进行语法分析包括:对HTML词法分析后的参数进行HTML语法分析;以及对CSS词法分析后的参数进行CSS语法分析。
进一步地,在确定用户提交的数据对应的行为是跨站攻击后,该方法还包括:对成功建立的语法树进行语义分析;以及根据语义分析的结果确定跨站攻击的目的。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于苏州山石网络有限公司,未经苏州山石网络有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210346751.X/2.html,转载请声明来源钻瓜专利网。