一种基于浏览器脚本行为的入侵检测方法及装置制造方法及图纸

技术编号:10866681 阅读:116 留言:0更新日期:2015-01-07 07:55
本发明专利技术公开了一种基于浏览器脚本行为的入侵检测方法及装置。所述入侵检测方法包括静态检测字节码,以找到与污点数据库中的污点数据相匹配的污点信息;动态执行所述字节码,并在所述动态执行的过程中跟踪所述污点信息的传输路径,以得到第一传输数据。根据所述第一传输数据判断所述污点信息是否传送到非法目的地;如果所述污点信息是传送到非法目的地,则将所述污点信息标记为可疑信息;检测与所述浏览器互换所述可疑信息的传输点,以获取表示所述传输点的第二传输数据,所述第二传输数据包括所述传输点的目的地数据和依赖数据;比较所述第一传输数据和所述第二传输数据;以及根据所述比较的结果判断所述脚本代码是否是恶意脚本。

【技术实现步骤摘要】
一种基于浏览器脚本行为的入侵检测方法及装置
本专利技术涉及信息安全领域,具体涉及一种基于浏览器脚本行为的入侵检测方法及 >J-U ρ?α装直。
技术介绍
随着Internet技术的广泛应用,越来越多的信息资源通过Web服务共享。例如,企业信息化过程中的各种应用都选择Web平台进行架设,此外,社交网络和微博等互联网产品得到快速应用,使得web浏览成为了互联网上使用率最高的网络服务,同时也成为了恶意代码利用的有效传播途径。 在这些恶意攻击中,XSS (Cross Site Scripting,跨站脚本攻击)和CSRF(Cross-site Request Forgery,跨站请求伪造)的危害很大。其中,XSS是指恶意攻击者往Web页面里插入恶意html代码。当用户浏览该页时,嵌入其中Web里面的html代码会被执行,从而达到恶意攻击用户的特殊目的。CSRF通过伪装来自受信任用户的请求来利用受信任的网站。例如,网站是通过cookie来识别用户的,当用户成功进行身份验证之后浏览器就会得到一个标识其身份的cookie,只要不关闭浏览器或者退出登录,以后访问这个网站会带上这个cookie。如果这期间浏览器被人控制着请求了这个网站的链接,可能就会执行一些用户不想做的功能(比如,修改个人资料),达到恶意攻击的目的。 然而,由于攻击方式的多样性,现有技术中的反病毒服务商无法有效的探测和遏制以XSS和CSRF为代表的网络攻击。
技术实现思路
本专利技术要解决的技术问题在于提供一种基于浏览器脚本行为的入侵检测方法及装置,以在保证有效检测以XSS和CSRF为代表的网络攻击,提高网络安全性。 为解决上述技术问题,本专利技术采用如下技术方案:本专利技术提供了一种浏览器的入侵检测方法,其特征在于,所述入侵检测方法包括以下步骤:读取所述浏览器的脚本代码;对所述脚本代码进行语法分析,以得到表示所述脚本代码语法树的语法数据;根据所述语法数据生成与所述语法树对应的字节码;静态检测所述字节码,以找到与污点数据库中的污点数据相匹配的污点信息;动态执行所述字节码,并在所述动态执行的过程中跟踪所述污点信息的传输路径,以得到第一传输数据,所述第一传输数据包括所述浏览器的传输目的地址和依赖数据;根据所述第一传输数据判断所述污点信息是否传送到非法目的地;如果所述污点信息是传送到非法目的地,则将所述污点信息标记为可疑信息;检测与所述浏览器互换所述可疑信息的传输点,以获取表不所述传输点的第二传输数据,所述第二传输数据包括所述传输点的目的地数据和依赖数据; 比较所述第一传输数据和所述第二传输数据;以及根据所述比较的结果判断所述脚本代码是否是恶意脚本。 在一个实施例中,所述第一传输数据的依赖数据包括所述浏览器和所述传输点之间传输的多个分散数据片段,所述多个分散数据片段在到达目的地址以后组成数据信息。 在一个实施例中,所述比较所述第一传输数据和所述第二传输数据的步骤还包括:比较所述第二传输数据中的依赖数据和所述可疑信息;如果所述依赖数据包括与所述可疑信息相匹配的信息,则比较所述第一传输数据的目的地址和所述第二传输数据的目的地址;以及如果所述比较结果表示所述传输点和所述浏览器同源,则判定所述脚本代码为恶意代码。 在一个实施例中,所述污点信息包括所述浏览器的用户身份信息、账号密码、地理位置和浏览记录。 在一个实施例中,所述动态执行所述代码的步骤还包括:读取所述字节码的出口代码;以及从所述字节码的出口代码向入口代码遍历执行所述字节码,以找到第一传输数据的目的地址和分散在所述字节码各码段的多个数据字段,其中,所述多个数据字段组成所述传输数据。 本专利技术还提供了一种浏览器的入侵检测装置,其特征在于,所述入侵检测装置包括:第一读取模块,用于读取所述浏览器的脚本代码;字节码生成模块,用于对所述脚本代码进行语法分析,以得到表示所述脚本代码语法树的语法数据,并根据所述语法数据生成与所述语法树对应的字节码;静态检测模块,用于静态检测所述字节码,以找到与污点数据库中的污点数据相匹配的污点信息;动态执行模块,用于动态执行所述字节码,并在所述动态执行的过程中跟踪所述污点信息的传输路径,以得到第一传输数据,所述第一传输数据包括所述浏览器的传输目的地址和依赖数据;第一判断模块,用于根据所述第一传输数据判断所述污点信息是否传送到非法目的地,其中,如果所述污点信息是传送到非法目的地,则将所述污点信息标记为可疑信息;传输点检测模块,检测与所述浏览器互换所述可疑信息的传输点,以获取表示所述传输点的第二传输数据,所述第二传输数据包括所述传输点的目的地数据和依赖数据;以及第一比较模块,用于比较所述第一传输数据和所述第二传输数据,并根据所述比较的结果判断所述脚本代码是否是恶意脚本。 在一个实施例中,所述第一传输数据的依赖数据包括所述浏览器和所述传输点之间传输的多个分散数据片段,所述多个分散数据片段在到达目的地址以后组成数据信息。 在一个实施例中,所述第一比较模块还包括:第二比较模块,用于比较所述第二传输数据中的依赖数据和所述可疑信息;第三比较模块,如果所述依赖数据包括与所述可疑信息相匹配的信息,则比较所述第一传输数据的目的地址和所述第二传输数据的目的地址;以及第二判断模块,如果所述比较结果表示所述传输点和所述浏览器同源,所述判断模块判定所述脚本代码为恶意代码。 在一个实施例中,所述污点信息包括所述浏览器的用户身份信息、账号密码、地理位置和浏览记录。 在一个实施例中,所述动态执行模块还包括:第二读取模块,用于读取所述字节码的出口代码;以及传输数据检测模块,用于从所述字节码的出口代码向入口代码遍历执行所述字节码,以找到发往所述第一传输数据的目的地址和分散在所述字节码各码段的多个数据字段,其中,所述多个数据字段组成所述第一传输数据。 与现有技术相比,本专利技术的入侵检测方法及装置可以有效的检测出脚本代码中蕴含的恶意代码(例如,诸如CSRF这样的通过冒充用户权限将用户信息传送到网络中作越权操作的恶意攻击),由此,提高了网络安全性。 【附图说明】 图1所示为根据本专利技术的实施例的基于浏览器脚本行为的入侵检测方法。 图2所示为根据本专利技术的实施例的动态执行字节码的方法。 图3所示为根据本专利技术的实施例的比较第一传输数据和第二传输数据的方法。 图4所示为根据本专利技术的实施例的基于浏览器脚本行为的入侵检测装置。 图5所示为根据本专利技术的实施例的动态执行模块的结构图。 图6所示为根据本专利技术的实施例的第一比较模块的结构图。 【具体实施方式】 以下将对本专利技术的实施例给出详细的说明。尽管本专利技术将结合一些【具体实施方式】进行阐述和说明,但需要注意的是本专利技术并不仅仅只局限于这些实施方式。相反,对本专利技术进行的修改或者等同替换,均应涵盖在本专利技术的权利要求范围当中。 另外,为了更好的说明本专利技术,在下文的【具体实施方式】中给出了众多的具体细节。本领域技术人员将理解,没有这些具体细节,本专利技术同样可以实施。在另外一些实例中,对于大家熟知的方法、流程、元件和电路未作详细描述,以便于凸显本专利技术的主旨。 图1所示为根据本专利技术的实施例的基于浏览器脚本行为的入侵检测方法100。XSS本文档来自技高网...

【技术保护点】
一种浏览器的入侵检测方法,其特征在于,所述入侵检测方法包括以下步骤:读取所述浏览器的脚本代码;对所述脚本代码进行语法分析,以得到表示所述脚本代码语法树的语法数据;根据所述语法数据生成与所述语法树对应的字节码;静态检测所述字节码,以找到与污点数据库中的污点数据相匹配的污点信息;动态执行所述字节码,并在所述动态执行的过程中跟踪所述污点信息的传输路径,以得到第一传输数据,所述第一传输数据包括所述浏览器的传输目的地址和依赖数据;根据所述第一传输数据判断所述污点信息是否传送到非法目的地;如果所述污点信息是传送到非法目的地,则将所述污点信息标记为可疑信息;检测与所述浏览器互换所述可疑信息的传输点,以获取表示所述传输点的第二传输数据,所述第二传输数据包括所述传输点的目的地数据和依赖数据;比较所述第一传输数据和所述第二传输数据;以及根据所述比较的结果判断所述脚本代码是否是恶意脚本。

【技术特征摘要】
1.一种浏览器的入侵检测方法,其特征在于,所述入侵检测方法包括以下步骤: 读取所述浏览器的脚本代码; 对所述脚本代码进行语法分析,以得到表示所述脚本代码语法树的语法数据; 根据所述语法数据生成与所述语法树对应的字节码; 静态检测所述字节码,以找到与污点数据库中的污点数据相匹配的污点信息; 动态执行所述字节码,并在所述动态执行的过程中跟踪所述污点信息的传输路径,以得到第一传输数据,所述第一传输数据包括所述浏览器的传输目的地址和依赖数据; 根据所述第一传输数据判断所述污点信息是否传送到非法目的地; 如果所述污点信息是传送到非法目的地,则将所述污点信息标记为可疑信息; 检测与所述浏览器互换所述可疑信息的传输点,以获取表不所述传输点的第二传输数据,所述第二传输数据包括所述传输点的目的地数据和依赖数据; 比较所述第一传输数据和所述第二传输数据;以及 根据所述比较的结果判断所述脚本代码是否是恶意脚本。2.根据权利要求1所述的浏览器的入侵检测方法,其特征在于,所述第一传输数据的依赖数据包括所述浏览器和所述传输点之间传输的多个分散数据片段,所述多个分散数据片段在到达目的地址以后组成数据信息。3.根据权利要求2所述的浏览器的入侵检测方法,其特征在于,所述比较所述第一传输数据和所述第二传输数据的步骤还包括: 比较所述第二传输数据中的依赖数据和所述可疑信息; 如果所述依赖数据包括与所述可疑信息相匹配的信息,则比较所述第一传输数据的目的地址和所述第二传输数据的目的地址;以及 如果所述比较结果表示所述传输点和所述浏览器不同源,则判定所述脚本代码为恶意代码。4.根据权利要求1所述的浏览器的入侵检测方法,其特征在于,所述污点信息包括所述浏览器的用户身份信息、账号密码、地理位置和浏览记录。5.根据权利要求1或2或3或4所述的浏览器的入侵检测方法,其特征在于,所述动态执行所述代码的步骤还包括: 读取所述字节码的出口代码;以及 从所述字节码的出口代码向入口代码遍历执行所述字节码,以找到第一传输数据的目的地址和分散在所述字节码各码段的多个数据字段,其中,所述多个数据字段组成所述传输数据。6.一种浏览器的入侵检测装置,其特征在于,所述入侵检测装置包括: 第一读取模块,用于读取所...

【专利技术属性】
技术研发人员:张小松刘小垒牛伟纳陈瑞东王东孙恩博吴安彬许云清许珑于
申请(专利权)人:电子科技大学
类型:发明
国别省市:四川;51

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1