一种用于防范React前端框架的跨站脚本攻击XSS的方法及系统技术方案

技术编号:21369778 阅读:27 留言:0更新日期:2019-06-15 11:13
本发明专利技术公开了一种用于防范React前端框架的跨站脚本攻击XSS的方法及系统,包括:根据设置的过滤规则配置DOMParser接口文件;对用户提交的请求进行预处理,并将经过预处理的请求发送至服务器,以接收源码文件;利用DOMParser接口对接收的源码文件中包含的预设的关键字进行过滤处理,以过滤掉恶意代码,防范跨站脚本攻击XSS。本发明专利技术通过自定义过滤标签和属性确定过滤规则,并根据过滤规则对DOMParser接口进行配置,利用React的特性,封装成即插即用的工具组件,方便程序内部的调用,运用灵活,解析效率高,渲染速度快;使用DOMParser的HTMLParser方法,可以有效地过滤掉恶意代码,防止XSS攻击,并且DOMParser具有较高的过滤性能,使用DOMParser可以在一定程度上提升页面的加载速度,提高用户的上网体验。

A Method and System for Preventing XSS from Cross-Station Script Attacks on React Front-end Framework

The invention discloses a method and system for preventing cross-station script attack XSS of React front-end framework, including: configuring DOMParser interface file according to set filtering rules; preprocessing user submitted requests and sending preprocessed requests to the server to receive source files; and using DOMParser interface to receive the preset contained in the received source files. Keyword is filtered to filter out malicious code and prevent cross-site script attacks on XSS. The invention defines filtering rules by defining filter labels and attributes, configures the DOMParser interface according to filtering rules, encapsulates the plug and play tool components by using the characteristics of React, facilitates the call within the program, uses flexibility, has high resolution efficiency, and renders fast; uses the HTMLLParser method of DOMParser, can effectively filter out malicious code and prevent XSS. Attacks, and DOMParser has high filtering performance, the use of DOMParser can improve the page loading speed to a certain extent, improve the user's online experience.

【技术实现步骤摘要】
一种用于防范React前端框架的跨站脚本攻击XSS的方法及系统
本专利技术涉及Web
,并且更具体地,涉及一种用于防范React前端框架的跨站脚本攻击XSS的方法及系统。
技术介绍
在科学技术日新月异发展的今天,计算机在人们的日常生活中发挥重要的作用,但是计算机在带来便利的同时也伴随着安全威胁。网络是人与世界交互的媒介,通过网络人们可以在网上购物,娱乐,办公,传递信息等,无形之中,人们在网上产生大量的数据,包括很多重要的数据,如个人隐私、具有商业价值的企业资料、国家机密。在这些重要数据的诱惑下,一些不法分子在网上实施各种网络攻击,以达到盗窃数据或权限的目的。其中,XSS攻击是网络上最常见的攻击手段之一。跨站脚本攻击(Cross-SiteScripting,XSS)是一类注入问题,恶意脚本被注入到健康的、可信任的网站。当一个攻击者通过一个网站应用程序,以浏览器端脚本的形式,给另一端的用户发送恶意代码时,XSS攻击就发生了。允许这种攻击成功的缺陷广泛存在于各个大小网站,只要这个网站某个页面将用户的输入包含在它生成的动态输出页面中并且未经验证或编码转义,这个缺陷就存在。攻击者使用XSS发送恶意脚本给一个不持怀疑态度的用户,用户端的浏览器没法知道脚本可不可信,从而执行该js脚本。因为浏览器认为该脚本来自于一个可信赖的网站,导致恶意脚本可以访问任何cookies信息、会话令牌、或者其他由浏览器保存的敏感信息,甚至可以修改当前网页内容。因此,需要一种能够防范XSS攻击的方法。
技术实现思路
本专利技术提出一种用于防范React前端框架的跨站脚本攻击XSS的方法及系统,以解决如何防范跨站脚本攻击XSS的问题。为了解决上述问题,根据本专利技术的一个方面,提供了一种用于防范React前端框架的跨站脚本攻击XSS的方法,其特征在于,所述方法包括:根据设置的过滤规则配置DOMParser接口文件;对用户提交的请求进行预处理,并将经过预处理的请求发送至服务器,以接收源码文件;利用DOMParser接口对接收的源码文件中包含的预设的关键字进行过滤处理,以过滤掉恶意代码,防范跨站脚本攻击XSS。优选地,其中所述过滤规则包括:根据预设的关键字利用start()函数获取源码文件中字符串的标签、属性和标签类型;利用end()函数闭合获取的源码文件中字符串的标签;利用chars()函数获取源码文件中字符串的标签内的文本,并将所述文件进行拼接后返回到results中;利用comment()函数获取与预设的关键字对应的注释,并将所述注释进行拼接后返回到results中。优选地,其中所述对用户提交的请求进行预处理,包括:对用户提交的请求的信息进行可靠的输入验证,对用户提交的请求的信息中的在预设长度阈值范围内、采用预设格式以及预设字符的信息进行提交;其中,所述请求包括:URL、查询关键字、HTTP头和POST数据。优选地,其中所述源码文件的格式包括:HTML、XML和XHTML。优选地,其中所述预设的关键字包括:存在安全隐患的标签关键字和属性关键字,所述标签关键字包括:script标签、style标签、link标签、iframe标签和frame标签;所述属性关键字包括:onerror属性、onblur属性和onclick属性。优选地,其中所述方法还包括:对经过过滤处理的源码文件进行语法解析,建立相应的内部数据结构,构建渲染树,并对所述渲染树中各个元素进行位置计算和样式计算,以能够根据所述渲染树对显示页面进行渲染。根据本专利技术的另一个方面,提供了一种用于防范React前端框架的跨站脚本攻击XSS的系统,其特征在于,所述系统包括:接口文件配置单元,用于根据设置的过滤规则配置DOMParser接口文件;源码文件获取单元,用于对用户提交的请求进行预处理,并将经过预处理的请求发送至服务器,以接收源码文件;过滤处理单元,用于利用DOMParser接口对接收的源码文件中包含的预设的关键字进行过滤处理,以过滤掉恶意代码,防范跨站脚本攻击XSS。优选地,其中所述过滤规则包括:根据预设的关键字利用start()函数获取源码文件中字符串的标签、属性和标签类型;利用end()函数闭合获取的源码文件中字符串的标签;利用chars()函数获取源码文件中字符串的标签内的文本,并将所述文件进行拼接后返回到results中;利用comment()函数获取与预设的关键字对应的注释,并将所述注释进行拼接后返回到results中。优选地,其中所述源码文件获取单元,对用户提交的请求进行预处理,包括:对用户提交的请求的信息进行可靠的输入验证,对用户提交的请求的信息中的在预设长度阈值范围内、采用预设格式以及预设字符的信息进行提交;其中,所述请求包括:URL、查询关键字、HTTP头和POST数据。优选地,其中所述源码文件的格式包括:HTML、XML和XHTML。优选地,其中所述预设的关键字包括:存在安全隐患的标签关键字和属性关键字,所述标签关键字包括:script标签、style标签、link标签、iframe标签和frame标签;所述属性关键字包括:onerror属性、onblur属性和onclick属性。优选地,其中所述系统还包括:渲染单元,用于对经过过滤处理的源码文件进行语法解析,建立相应的内部数据结构,构建渲染树,并对所述渲染树中各个元素进行位置计算和样式计算,以能够根据所述渲染树对显示页面进行渲染。本专利技术提供了一种用于防范React前端框架的跨站脚本攻击XSS的方法及系统,包括:根据设置的过滤规则配置DOMParser接口文件;对用户提交的请求进行预处理,并将经过预处理的请求发送至服务器,以接收源码文件;利用DOMParser接口对接收的源码文件中包含的预设的关键字进行过滤处理,以过滤掉恶意代码,防范跨站脚本攻击XSS。本专利技术通过自定义过滤标签和属性确定过滤规则,并根据过滤规则对DOMParser接口进行配置,利用React的特性,封装成即插即用的工具组件,方便程序内部的调用,在一处配置过滤规则可以在多处使用,只需导入该方法即可直接调用,运用灵活,解析效率高,渲染速度快;使用DOMParser的HTMLParser方法,可以有效地过滤掉恶意代码,防止XSS攻击,并且DOMParser具有较高的过滤性能,使用DOMParser可以在一定程度上提升页面的加载速度,提高用户的上网体验。附图说明通过参考下面的附图,可以更为完整地理解本专利技术的示例性实施方式:图1为根据本专利技术实施方式的用于防范React前端框架的跨站脚本攻击XSS的方法100的流程图;图2为根据本专利技术实施方式的利用DOMParser进行过滤和解析的示意图;以及图3为根据本专利技术实施方式的用于防范React前端框架的跨站脚本攻击XSS的系统300的结构示意图。具体实施方式现在参考附图介绍本专利技术的示例性实施方式,然而,本专利技术可以用许多不同的形式来实施,并且不局限于此处描述的实施例,提供这些实施例是为了详尽地且完全地公开本专利技术,并且向所属
的技术人员充分传达本专利技术的范围。对于表示在附图中的示例性实施方式中的术语并不是对本专利技术的限定。在附图中,相同的单元/元件使用相同的附图标记。除非另有说明,此处使用的术语(包括科技术语)对所属本文档来自技高网
...

【技术保护点】
1.一种用于防范React前端框架的跨站脚本攻击XSS的方法,其特征在于,所述方法包括:根据设置的过滤规则配置DOMParser接口文件;对用户提交的请求进行预处理,并将经过预处理的请求发送至服务器,以接收源码文件;利用DOMParser接口对接收的源码文件中包含的预设的关键字进行过滤处理,以过滤掉恶意代码,防范跨站脚本攻击XSS。

【技术特征摘要】
1.一种用于防范React前端框架的跨站脚本攻击XSS的方法,其特征在于,所述方法包括:根据设置的过滤规则配置DOMParser接口文件;对用户提交的请求进行预处理,并将经过预处理的请求发送至服务器,以接收源码文件;利用DOMParser接口对接收的源码文件中包含的预设的关键字进行过滤处理,以过滤掉恶意代码,防范跨站脚本攻击XSS。2.根据权利要求1所述的方法,其特征在于,所述过滤规则包括:根据预设的关键字利用start()函数获取源码文件中字符串的标签、属性和标签类型;利用end()函数闭合获取的源码文件中字符串的标签;利用chars()函数获取源码文件中字符串的标签内的文本,并将所述文件进行拼接后返回到results中;利用comment()函数获取与预设的关键字对应的注释,并将所述注释进行拼接后返回到results中。3.根据权利要求1所述的方法,其特征在于,所述对用户提交的请求进行预处理,包括:对用户提交的请求的信息进行可靠的输入验证,对用户提交的请求的信息中的在预设长度阈值范围内、采用预设格式以及预设字符的信息进行提交;其中,所述请求包括:URL、查询关键字、HTTP头和POST数据。4.根据权利要求1所述的方法,其特征在于,所述源码文件的格式包括:HTML、XML和XHTML。5.根据权利要求1所述的方法,其特征在于,所述预设的关键字包括:存在安全隐患的标签关键字和属性关键字,所述标签关键字包括:script标签、style标签、link标签、iframe标签和frame标签;所述属性关键字包括:onerror属性、onblur属性和onclick属性。6.根据权利要求1所述的方法,其特征在于,所述方法还包括:对经过过滤处理的源码文件进行语法解析,建立相应的内部数据结构,构建渲染树,并对所述渲染树中各个元素进行位置计算和样式计算,以能够根据所述渲染树对显示页面进行渲染。7.一种用于防范React前端框架的跨站脚本攻击X...

【专利技术属性】
技术研发人员:牟森梁宵刘茜耿方李骁
申请(专利权)人:航天信息股份有限公司
类型:发明
国别省市:北京,11

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

1