CN104601540A - 一种跨站脚本XSS攻击防御方法及Web服务器 - Google Patents

一种跨站脚本XSS攻击防御方法及Web服务器 Download PDF

Info

Publication number
CN104601540A
CN104601540A CN201410736209.4A CN201410736209A CN104601540A CN 104601540 A CN104601540 A CN 104601540A CN 201410736209 A CN201410736209 A CN 201410736209A CN 104601540 A CN104601540 A CN 104601540A
Authority
CN
China
Prior art keywords
xss
message
feature database
attack
intrusion feature
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201410736209.4A
Other languages
English (en)
Other versions
CN104601540B (zh
Inventor
王春生
杜志平
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Cloud Computing Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN201410736209.4A priority Critical patent/CN104601540B/zh
Publication of CN104601540A publication Critical patent/CN104601540A/zh
Application granted granted Critical
Publication of CN104601540B publication Critical patent/CN104601540B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • H04L63/145Countermeasures against malicious traffic the attack involving the propagation of malware through the network, e.g. viruses, trojans or worms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1416Event detection, e.g. attack signature detection

Abstract

本发明公开了一种跨站脚本XSS攻击防御方法及Web服务器,涉及互联网技术领域,通过Web服务器进行XSS攻击防御。本发明实施例提供的XSS攻击防御方法包括:Web服务器获取接收到的一消息的消息类型、内容字符串;根据所述内容字符串,查询预设的XSS攻击特征库,若所述内容字符串中至少一个字符与所述XSS攻击特征库中的XSS攻击描述特征相匹配,则确定所述消息具有XSS攻击特性;对所述请求消息进行防御处理,其中,所述XSS攻击特征库存储有XSS攻击描述特征。

Description

一种跨站脚本XSS攻击防御方法及Web服务器
技术领域
本发明涉及互联网技术领域,尤其涉及一种XSS攻击防御方法及Web服务器。
背景技术
当今,网络正成为现实生活中各种服务的一个新的平台和载体。为了提高用户体验,脚本语言(大多数为JavaScript)在网络应用中被大量使用。不幸的是,这个趋势让跨站脚本(Cross Site Script,即XSS)攻击成为了目前互联网最为严重的安全问题之一。XSS攻击指的是恶意攻击者往网页(Web)页面里插入恶意脚本程序代码,当用户浏览该页面时,嵌入Web里面的恶意脚本程序代码会被执行,从而达到恶意攻击用户的特殊目的,如泄露用户隐私、使客户端电脑感染病毒、控制企业数据、盗窃企业重要的具有商业价值的资料、非法转账、强制发送电子邮件、网站挂马以及控制受害者机器向其他网站发送攻击等。
当前主要的防御XSS攻击的方法包括:在客户端的Web浏览页面上对Web服务器输出的脚本程序代码做HTML转义处理,以破坏恶意脚本程序代码,实现防御XSS攻击的目的。但是,由于脚本程序代码中需要进行转义的点非常多,很容易遗漏,从而不能实现完全防御XSS攻击的目的。
发明内容
本发明的实施例提供一种XSS攻击防御方法及Web服务器,以解决现有不完全防御XSS攻击的问题。
为达到上述目的,本发明的实施例采用如下技术方案:
第一方面,本发明实施例提供一种XSS攻击防御方法,包括:
Web服务器获取接收到的一消息的内容字符串;
根据所述内容字符串,查询预设的XSS攻击特征库,若所述内容字符串中至少一个字符与所述XSS攻击特征库中的XSS攻击描述特征相匹配,则确定所述消息具有XSS攻击特性;其中,所述XSS攻击特征库存储有XSS攻击描述特征;
对所述消息进行防御处理。
在第一方面的第一种可能的实现方式中,结合第一方面,
所述XSS攻击特征库中的XSS攻击描述特征为:根据XSS攻击时的特性统计出来的。
在第一方面的第二种可能的实现方式中,结合第一方面或第一方面的第一种可能的实现方式,所述根据所述内容字符串,查询预设的XSS攻击特征库包括:
按照字符顺序将所述内容字符串中各个字符分别与所述XSS攻击特征库中的XSS攻击描述特征进行匹配。
在第一方面的第三种可能的实现方式中,结合第一方面至第一方面的第二种可能的实现方式中的任一种实现方式,所述消息还包含消息类型;
所述对所述消息进行防御处理包括:
当所述消息类型指示所述消息为请求消息时,对所述请求消息进行拦截处理;
当所述消息类型指示所述消息为响应消息时,对所述响应消息进行转义处理。
在第一方面的第四种可能的实现方式中,结合第一方面的第三种可能的实现方式,所述对所述请求消息进行拦截处理包括:
忽略或删除所述请求消息,并向Web客户端返回异常信息;其中,所述异常信息用于指示所述请求消息为XSS攻击消息。
在第一方面的第五种可能的实现方式中,结合第一方面的第三种可能的实现方式,所述XSS攻击特征库还存储有XSS攻击描述特征与其转义方式、以及转义处理的对应关系;
所述对所述响应消息进行转义处理包括:
将所述响应消息的内容字符串包含的XSS攻击特征的字符,按照所述XSS攻击特征库中的转义方式进行转义处理。
第二方面,本发明实施例提供一种Web服务器,包括:
获取单元,用于获取接收到的一消息的内容字符串;
确定单元,用于根据所述内容字符串,查询预设的XSS攻击特征库,若所述内容字符串中至少一个字符与所述XSS攻击特征库中的XSS攻击描述特征相匹配,则确定所述消息具有XSS攻击特性;其中,所述XSS攻击特征库存储有XSS攻击描述特征;
防御单元,用于对所述消息进行防御处理。
在第二方面的第一种可能的实现方式中,结合第二方面,
所述XSS攻击特征库中的XSS攻击描述特征为:根据XSS攻击时的特性统计出来的。
在第二方面的第二种可能的实现方式中,结合第二方面或第二方面的第一种可能的实现方式,所述确定单元,具体用于:
按照字符顺序将所述内容字符串中各个字符分别与所述XSS攻击特征库中的XSS攻击描述特征进行匹配。
在第二方面的第三种可能的实现方式中,结合第二方面至第二方面的第二种可能的实现方式中的任一种实现方式,所述消息还包含消息类型;
所述防御单元,具体用于:
当所述消息类型指示所述消息为请求消息时,对所述请求消息进行拦截处理;
当所述消息类型指示所述消息为响应消息时,对所述响应消息进行转义处理。
在第二方面的第四种可能的实现方式中,结合第二方面的第三种可能的实现方式,所述防御单元,具体用于:
当所述消息类型指示所述消息为请求消息时,忽略或删除所述请求消息,并向Web客户端返回异常信息;其中,所述异常信息用于指示所述请求消息为XSS攻击消息。
在第二方面的第五种可能的实现方式中,结合第二方面的第三种可能的实现方式,所述XSS攻击特征库还存储有XSS攻击描述特征与其转义方式、以及转义处理的对应关系;
所述防御单元,具体用于:
当所述消息类型指示所述消息为响应消息时,将所述响应消息的内容字符串包含的XSS攻击特征的字符,按照XSS攻击特征库中的转义方式进行转义处理。
相较于现有技术,本发明实施例提供的XSS攻击防御方法不再通过Web客户端进行XSS攻击的防御,而是通过Web服务器进行XSS攻击防御。这样,在接收到Web客户端发送的消息时,就对具有XSS攻击特性的消息进行防御处理,避免了现有Web客户端需要在Web服务器输出的脚本程序代码中对各转义点进行转义处理来防御XSS攻击时,导致的不完全防御XSS攻击的问题。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的实施环境的网络架构;
图2为本发明实施例提供的一种XSS攻击防御方法的流程图;
图3为本发明实施例提供的一种Web服务器的结构图;
图4为本发明实施例提供的一种Web服务器的结构图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,本发明实施例提供的XSS攻击防御方法可以适用于防御XSS攻击,也可以适用于防御病毒、结构化查询语言(英文:Structured Query Language,缩写:SQL注入)、命令注入等类型的攻击,本发明实施例对此不进行限定,本发明仅基于图1所示系统下防御XSS攻击为例进行说明。
图1示出了本发明XSS攻击防御方法的实施环境的网络架构。该实施架构的系统可以包含Web客户端10、Web服务器30以及第三方系统20。其中,Web客户端10包含Web浏览器,用户可以通过点击Web浏览器页面上的链接与Web服务器30之间进行信息交互;Web服务器30为本发明实施例提供的用于防御XSS攻击的Web服务器,可以为处于云管理系统(英文:Fusion Manager,缩写:FM)中的Tomcat,通过查询云管理系统中的XSS攻击特征库来确定接收到的信息中是否包含有XSS攻击,以实现防御XSS攻击的攻击;第三方系统20可以为向Web服务器30提供升级等服务的第三方服务提供者,也可以为利用Web服务器30的对外开放API(英文:Application Programming Interface,中文:应用程序编程接口)的第三方系统。此外,本领域普通技术人员可以理解,图1仅为示意图,其并不对Web服务器构成限定。例如,本发明实施例提供的Web服务器也可以为一包含XSS攻击特征库的Web服务器,通过查询自身的XSS攻击特征库以实现防御XSS攻击的目的。
图2为本发明实施例提供的XSS攻击防御方法的流程图,应用于Web服务器,如图2所示,该方法可以包括:
201、获取接收到的一消息的内容字符串。
其中,所述消息可以为超文本传送协议(英文:hypertext transferprotocol,缩写:http)消息,所述内容字符串用于表示所述消息内容。
202、根据所述内容字符串,查询预设的XSS攻击特征库,若所述内容字符串中至少一个字符与所述XSS攻击特征库中的XSS攻击描述特征相匹配,则确定所述消息具有XSS攻击特性。
其中,所述XSS攻击特征库存储有XSS攻击描述特征;
所述XSS攻击特征库中的XSS攻击描述特征可以为:根据XSS攻击时的特性统计出来的。
优选的,可以按照字符顺序将所述内容字符串中各个字符分别与所述XSS攻击特征库中的XSS攻击描述特征进行匹配,以确定所述消息是否具有XSS攻击特性。
例如,可以根据图1所示的系统架构的场景下,XSS攻击的统计特性,提取XSS攻击描述特征,并采用正则表达式将XSS攻击描述特征表示出来,形成如表1所示的XSS攻击特征库,当所述消息的内容字符串包含有“<"、“>"、<\s*script\s*>.*<\s*/\s*script\s*>中任一种字符时,则确定所述消息具有XSS攻击特性。
表1
编号 XSS攻击描述特征
1 “<”
2 “>”
3 <\s*script\s*>.*<\s*/\s*script\s*>
203、对所述消息进行防御处理。
示例性的,本发明实施例中,可以根据所述消息的类型的不同进行不同的防御处理,例如,所述消息还可以包含消息类型,所述消息类型可以指示所述消息为请求(request)消息或者响应(response)消息;
当所述消息类型指示所述消息为请求消息时,对所述请求消息进行拦截处理;
当所述消息类型指示所述消息为响应消息时,对所述响应消息进行转义处理。
其中,请求消息与响应消息是一一对应、成对出现的,即发送请求消息后,则必然会接收到与其对应的响应消息;通常情况下,请求消息携带有HTTP URL链接(如:GET/PUT/POST/DELETE URL);响应消息通常携带有HTTP响应码(如:HTTP/1.1200OK);优选的,当获取到的消息携带有HTTP URL链接,则确定该消息为请求消息;当获取到的消息携带有HTTP响应码,则确定该消息为响应消息。
优选的,所述对所述请求消息进行拦截处理可以包括:
忽略或删除所述请求消息,并向Web客户端返回异常信息;其中,所述异常信息用于指示所述请求消息为XSS攻击消息。
优选的,XSS攻击特征库还可以存储有XSS攻击描述特征与其转义方式、以及转义处理的对应关系;其中,所述转义方式可以为替换方式或者自定义方式,所述替换为将XSS攻击描述特征替换为转义处理字段中的值,所述自定义为系统调用用户提供的转义插件将XSS攻击描述特征转义为转义处理字段中的值;
所述对所述响应消息进行转义处理可以包括:
将所述响应消息的内容字符串包含的XSS攻击特征的字符,按照所述XSS攻击特征库中的转义方式进行转义处理。
如此,将从Web客户端或第三方系统流入到Web服务器中的XSS攻击代码进行转义处理,使其不能显示,避免了Web服务器受到恶意代码。
例如,如表2所示,为一XSS攻击特征库,包含1、2、3三种XSS攻击描述特征,若响应消息中包含“<”,则将“<”替换成“%3C”;若响应消息中包含“>”,则将“>”替换成“%3E”;若响应消息中包含符合正则表达式<\s*script\s*>.*<\s*/\s*script\s*>的内容字符串,则采用自定义方式转义为“com.huawei.xxxx”。
表2
进一步的,本发明实施例中,为了避免Web服务器对所有信息进行XSS攻击防御处理,可能造成的误伤情况(如:某些应用场景的请求或返回消息中携带XSS攻击特征是正常的,但此时若要进行XSS攻击防御处理,则会造成误伤),可以由各个业务模块自己识别定义一种适合特定应用场景下的、不进行任何防御(如本发明提供的XSS防御方法)处理的消息类型,即例外消息;在步骤202之前,确定所述消息是否为例外消息;
若所述消息为例外消息,则不确定该消息是否具有XSS攻击特性,进而也不再进行任何防御处理;
若所述消息为例外消息,则不确定该消息是否具有XSS攻击特性,则执行步骤202。
由上可知,本发明实施例提供一种XSS攻击防御方法,相较于现有技术,本发明实施例提供的XSS攻击防御方法不再通过Web客户端进行XSS攻击的防御,而是通过Web服务器进行XSS攻击防御。这样,在接收到Web客户端发送的消息时,就对具有XSS攻击特性的消息进行防御处理,避免了现有Web客户端需要在Web服务器输出的脚本程序代码中对各转义点进行转义处理来防御XSS攻击时,导致的不完全防御XSS攻击的问题。
此外,本发明实施例还提供的一种Web服务器30的结构图,如图3所示,该Web服务器30可以包括:
获取单元301,用于获取接收到的一消息的内容字符串。
其中,所述消息可以为超文本传送协议(英文:Hypertext transferprotocol,缩写:HTTP)报文,所述内容字符串用于表示所述消息内容。
确定单元302,用于根据所述内容字符串,查询预设的XSS攻击特征库,若所述内容字符串中至少一个字符与所述XSS攻击特征库中的XSS攻击描述特征相匹配,则确定所述消息具有XSS攻击特性;其中,所述XSS攻击特征库存储有XSS攻击描述特征。
其中,所述XSS攻击特征库存储有XSS攻击描述特征;
所述XSS攻击特征库中的XSS攻击描述特征可以为:根据XSS攻击时的特性统计出来的。例如,可以根据图1所示的系统架构的场景下,XSS攻击的统计特性,提取XSS攻击描述特征,并采用正则表达式将XSS攻击描述表示出来,形成如表1所示的XSS攻击特征库。
防御单元303,用于对所述消息进行防御处理。
进一步的,所述确定单元302,具体用于:
按照字符顺序将所述内容字符串中各个字符分别与所述XSS攻击特征库中的XSS攻击描述特征进行匹配,以确定所述消息是否具有XSS攻击特性。
进一步的,所述防御单元303,具体用于:
根据所述消息的类型的不同进行不同的防御处理,例如,所述消息还可以包含消息类型,所述消息类型可以指示所述消息为请求(request)消息或者响应(response)消息;
当所述消息类型指示所述消息为请求消息时,对所述请求消息进行拦截处理;
当所述消息类型指示所述消息为响应消息时,对所述响应消息进行转义处理。
其中,请求消息与响应消息是一一对应、成对出现的,即发送请求消息后,则必然会接收到与其对应的响应消息;通常情况下,请求消息携带有HTTP URL链接(如:GET/PUT/POST/DELETE URL);响应消息通常携带有HTTP响应码(如:HTTP/1.1200OK);优选的,当获取到的消息携带有HTTP URL链接,则确定该消息为请求消息;当获取到的消息携带有HTTP响应码,则确定该消息为响应消息。
示例性的,当所述消息类型指示所述消息为请求消息时,所述防御单元303,具体用于:
忽略或删除所述请求消息,并向Web客户端返回异常信息;其中,所述异常信息用于指示所述请求消息为XSS攻击消息。
进一步的,所述XSS攻击特征库还存储有XSS攻击描述特征与其转义方式、以及转义处理的对应关系;
相应的,当所述消息类型指示所述消息为响应消息时,所述防御单元303,具体用于:
将所述响应消息的内容字符串包含的XSS攻击特征的字符,按照XSS攻击特征库中的转义方式进行转义处理。
例如,如表2所示,为一XSS攻击特征库,包含1、2、3三种XSS攻击描述特征,若响应消息中包含“<”,则将“<”替换成“%3C”;若响应消息中包含“>”,则将“>”替换成“%3E”;若响应消息中包含符合正则表达式<\s*script\s*>.*<\s*/\s*script\s*>的内容字符串,则采用自定义方式转义为“com.huawei.xxxx”。
进一步的,本发明实施例中,为了避免Web服务器对所有信息进行XSS攻击防御处理,可能造成的误伤情况(如:某些应用场景的请求或返回消息中携带XSS攻击特征是正常的,但此时若要进行XSS攻击防御处理,则会造成误伤),可以由各个业务模块自己识别定义一种适合特定应用场景下的、不进行任何防御(如本发明提供的XSS防御方法)处理的消息类型,即例外消息;
相应的,所述确定单元302,还用于在根据所述内容字符串,查询预设的XSS攻击特征库之前,确定所述消息是否为例外消息;
若所述消息为例外消息,则不确定该消息是否具有XSS攻击特性;若所述消息为例外消息,则确定该消息是否具有XSS攻击特性。
由上可知,本发明实施例提供一种Web服务器30,在接收到Web客户端发送的消息时,就对具有XSS攻击特性的消息进行防御处理,避免了现有Web客户端需要在Web服务器输出的脚本程序代码中对各转义点进行转义处理来防御XSS攻击时,导致的不完全防御XSS攻击的问题。
此外,本发明实施例还提供的一种Web服务器40的结构图,如图4所示,该Web服务器40可以包括:通信单元401,处理器402、存储器403、至少一个通信总线404,用于实现这些装置之间的连接和相互通信;
通信单元401,用于与外部网元之间进行数据传输。
处理器402可能是一个中央处理器(英文:central processing unit,简称为CPU);
存储器403,可以是易失性存储器(英文:volatile memory),例如随机存取存储器(英文:random-access memory,缩写:RAM);或者非易失性存储器(英文:non-volatile memory),例如只读存储器(英文:read-only memory,缩写:ROM),快闪存储器(英文:flash memory),硬盘(英文:hard disk drive,缩写:HDD)或固态硬盘(英文:solid-state drive,缩写:SSD);或者上述种类的存储器的组合,并向处理器402提供指令和数据;
所述通信单元401,用于获取接收到的一消息的内容字符串。
其中,所述消息可以为超文本传送协议(英文:Hypertext transferprotocol,缩写:HTTP)报文,所述内容字符串用于表示所述消息内容。
所述处理器402,用于根据所述内容字符串,查询预设的XSS攻击特征库,若所述内容字符串中至少一个字符与所述XSS攻击特征库中的XSS攻击描述特征相匹配,则确定所述消息具有XSS攻击特性,并对所述消息进行防御处理。
其中,所述XSS攻击特征库存储有XSS攻击描述特征;
所述XSS攻击特征库中的XSS攻击描述特征可以为:根据XSS攻击时的特性统计出来的。例如,可以根据图1所示的系统架构的场景下,XSS攻击的统计特性,提取XSS攻击描述特征,并采用正则表达式将XSS攻击描述表示出来,形成如表1所示的XSS攻击特征库。
进一步的,所述处理器402,具体用于:
按照字符顺序将所述内容字符串中各个字符分别与所述XSS攻击特征库中的XSS攻击描述特征进行匹配,以确定所述消息是否具有XSS攻击特性。
进一步的,所述处理器402,具体用于:
根据所述消息的类型的不同进行不同的防御处理,例如,所述消息还可以包含消息类型,所述消息类型可以指示所述消息为请求(request)消息或者响应(response)消息;
当所述消息类型指示所述消息为请求消息时,对所述请求消息进行拦截处理;
当所述消息类型指示所述消息为响应消息时,对所述响应消息进行转义处理。
其中,请求消息与响应消息是一一对应、成对出现的,即发送请求消息后,则必然会接收到与其对应的响应消息;通常情况下,请求消息携带有HTTP URL链接(如:GET/PUT/POST/DELETE URL);响应消息通常携带有HTTP响应码(如:HTTP/1.1200OK);优选的,当获取到的消息携带有HTTP URL链接,则确定该消息为请求消息;当获取到的消息携带有HTTP响应码,则确定该消息为响应消息。
示例性的,当所述消息类型指示所述消息为请求消息时,所述处理器402,具体用于:
忽略或删除所述请求消息,并向Web客户端返回异常信息;其中,所述异常信息用于指示所述请求消息为XSS攻击消息。
进一步的,所述XSS攻击特征库还存储有XSS攻击描述特征与其转义方式、以及转义处理的对应关系;
相应的,当所述消息类型指示所述消息为响应消息时,所述处理器402,还用于将所述响应消息的内容字符串包含的XSS攻击特征的字符,按照XSS攻击特征库中的转义方式进行转义处理。
例如,如表2所示,为一XSS攻击特征库,包含1、2、3三种XSS攻击描述特征,若响应消息中包含“<”,则将“<”替换成“%3C”;若响应消息中包含“>”,则将“>”替换成“%3E”;若响应消息中包含符合正则表达式<\s*script\s*>.*<\s*/\s*script\s*>的内容字符串,则采用自定义方式转义为“com.huawei.xxxx”。
进一步的,本发明实施例中,为了避免Web服务器对所有信息进行XSS攻击防御处理,可能造成的误伤情况(如:某些应用场景的请求或返回消息中携带XSS攻击特征是正常的,但此时若要进行XSS攻击防御处理,则会造成误伤),可以由各个业务模块自己识别定义一种适合特定应用场景下的、不进行任何防御(如本发明提供的XSS防御方法)处理的消息类型,即例外消息;
相应的,所述处理器402,还用于在根据所述内容字符串,查询预设的XSS攻击特征库之前,确定所述消息是否为例外消息;
若所述消息为例外消息,则不确定该消息是否具有XSS攻击特性;若所述消息为例外消息,则确定该消息是否具有XSS攻击特性。
由上可知,本发明实施例提供一种Web服务器40,在接收到Web客户端发送的消息时,就对具有XSS攻击特性的消息进行防御处理,避免了现有Web客户端需要在Web服务器输出的脚本程序代码中对各转义点进行转义处理来防御XSS攻击时,导致的不完全防御XSS攻击的问题。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。

Claims (12)

1.一种XSS攻击防御方法,其特征在于,包括:
Web服务器获取接收到的一消息的内容字符串;
根据所述内容字符串,查询预设的XSS攻击特征库,若所述内容字符串中至少一个字符与所述XSS攻击特征库中的XSS攻击描述特征相匹配,则确定所述消息具有XSS攻击特性;其中,所述XSS攻击特征库存储有XSS攻击描述特征;
对所述消息进行防御处理。
2.根据权利要求1所述的XSS攻击防御方法,其特征在于,
所述XSS攻击特征库中的XSS攻击描述特征为:根据XSS攻击时的特性统计出来的。
3.根据权利要求1或2所述的XSS攻击防御方法,其特征在于,所述根据所述内容字符串,查询预设的XSS攻击特征库包括:
按照字符顺序将所述内容字符串中各个字符分别与所述XSS攻击特征库中的XSS攻击描述特征进行匹配。
4.根据权利要求1-3任一项所述的XSS攻击防御方法,其特征在于,所述消息还包含消息类型;
所述对所述消息进行防御处理包括:
当所述消息类型指示所述消息为请求消息时,对所述请求消息进行拦截处理;
当所述消息类型指示所述消息为响应消息时,对所述响应消息进行转义处理。
5.根据权利要求4所述的XSS攻击防御方法,其特征在于,所述对所述请求消息进行拦截处理包括:
忽略或删除所述请求消息,并向Web客户端返回异常信息;其中,所述异常信息用于指示所述请求消息为XSS攻击消息。
6.根据权利要求4所述的XSS攻击防御方法,其特征在于,所述XSS攻击特征库还存储有XSS攻击描述特征与其转义方式、以及转义处理的对应关系;
所述对所述响应消息进行转义处理包括:
将所述响应消息的内容字符串包含的XSS攻击特征的字符,按照所述XSS攻击特征库中的转义方式进行转义处理。
7.一种Web服务器,其特征在于,包括:
获取单元,用于获取接收到的一消息的内容字符串;
确定单元,用于根据所述内容字符串,查询预设的XSS攻击特征库,若所述内容字符串中至少一个字符与所述XSS攻击特征库中的XSS攻击描述特征相匹配,则确定所述消息具有XSS攻击特性;其中,所述XSS攻击特征库存储有XSS攻击描述特征;
防御单元,用于对所述消息进行防御处理。
8.根据权利要求7所述的Web服务器,其特征在于,
所述XSS攻击特征库中的XSS攻击描述特征为:根据XSS攻击时的特性统计出来的。
9.根据权利要求7或8所述的Web服务器,其特征在于,所述确定单元,具体用于:
按照字符顺序将所述内容字符串中各个字符分别与所述XSS攻击特征库中的XSS攻击描述特征进行匹配。
10.根据权利要求7-9任一项所述的Web服务器,其特征在于,所述消息还包含消息类型;
所述防御单元,具体用于:
当所述消息类型指示所述消息为请求消息时,对所述请求消息进行拦截处理;
当所述消息类型指示所述消息为响应消息时,对所述响应消息进行转义处理。
11.根据权利要求10所述的Web服务器,其特征在于,所述防御单元,具体用于:
当所述消息类型指示所述消息为请求消息时,忽略或删除所述请求消息,并向Web客户端返回异常信息;其中,所述异常信息用于指示所述请求消息为XSS攻击消息。
12.根据权利要求10所述的Web服务器,其特征在于,所述XSS攻击特征库还存储有XSS攻击描述特征与其转义方式、以及转义处理的对应关系;
所述防御单元,具体用于:
当所述消息类型指示所述消息为响应消息时,将所述响应消息的内容字符串包含的XSS攻击特征的字符,按照XSS攻击特征库中的转义方式进行转义处理。
CN201410736209.4A 2014-12-05 2014-12-05 一种跨站脚本XSS攻击防御方法及Web服务器 Active CN104601540B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410736209.4A CN104601540B (zh) 2014-12-05 2014-12-05 一种跨站脚本XSS攻击防御方法及Web服务器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410736209.4A CN104601540B (zh) 2014-12-05 2014-12-05 一种跨站脚本XSS攻击防御方法及Web服务器

Publications (2)

Publication Number Publication Date
CN104601540A true CN104601540A (zh) 2015-05-06
CN104601540B CN104601540B (zh) 2018-11-16

Family

ID=53127047

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410736209.4A Active CN104601540B (zh) 2014-12-05 2014-12-05 一种跨站脚本XSS攻击防御方法及Web服务器

Country Status (1)

Country Link
CN (1) CN104601540B (zh)

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104967628A (zh) * 2015-07-16 2015-10-07 浙江大学 一种保护web应用安全的诱骗方法
CN105959335A (zh) * 2016-07-19 2016-09-21 腾讯科技(深圳)有限公司 一种网络攻击行为检测方法及相关装置
CN106060090A (zh) * 2016-07-29 2016-10-26 广州市乐商软件科技有限公司 网站脚本攻击防范方法及装置
CN106506548A (zh) * 2016-12-23 2017-03-15 努比亚技术有限公司 跨站脚本攻击的防御装置及方法
CN107172029A (zh) * 2017-05-09 2017-09-15 努比亚技术有限公司 跨站攻击解决方法、移动终端及存储介质
CN107872463A (zh) * 2017-11-29 2018-04-03 四川无声信息技术有限公司 一种web邮件xss攻击检测方法及相关装置
WO2018068366A1 (zh) * 2016-10-14 2018-04-19 福建亿榕信息技术有限公司 预防xss攻击的方法
CN108491717A (zh) * 2018-03-28 2018-09-04 四川长虹电器股份有限公司 一种基于机器学习的xss防御系统及其实现方法
CN108512903A (zh) * 2018-02-27 2018-09-07 深圳乐信软件技术有限公司 一种异常信息处理方法、装置、存储介质及api网关
CN108881101A (zh) * 2017-05-08 2018-11-23 腾讯科技(深圳)有限公司 一种基于文档对象模型的跨站脚本漏洞防御方法、装置以及客户端
CN109040097A (zh) * 2018-08-23 2018-12-18 彩讯科技股份有限公司 一种跨站脚本攻击的防御方法、装置、设备和存储介质
CN109257393A (zh) * 2018-12-05 2019-01-22 四川长虹电器股份有限公司 基于机器学习的xss攻击防御方法及装置
CN110650117A (zh) * 2019-08-01 2020-01-03 平安科技(深圳)有限公司 跨站攻击防护方法、装置、设备及存储介质
CN112966264A (zh) * 2021-02-28 2021-06-15 新华三信息安全技术有限公司 Xss攻击检测方法、装置、设备及机器可读存储介质
CN114024709A (zh) * 2021-09-22 2022-02-08 湖北天融信网络安全技术有限公司 防御方法、xss漏洞的查寻方法、流量检测设备及存储介质

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090119769A1 (en) * 2007-11-05 2009-05-07 Microsoft Corporation Cross-site scripting filter
CN101964025A (zh) * 2009-07-23 2011-02-02 中联绿盟信息技术(北京)有限公司 Xss检测方法和设备
CN102082780A (zh) * 2009-11-30 2011-06-01 国际商业机器公司 安全验证的方法和装置
CN102833269A (zh) * 2012-09-18 2012-12-19 苏州山石网络有限公司 跨站攻击的检测方法、装置和具有该装置的防火墙
CN102999723A (zh) * 2012-11-20 2013-03-27 焦点科技股份有限公司 主动防御xss攻击的数据防御组件生成方法及其装置
CN102999420A (zh) * 2011-09-13 2013-03-27 阿里巴巴集团控股有限公司 基于dom的跨站脚本漏洞测试方法和系统
CN103026684A (zh) * 2010-07-22 2013-04-03 国际商业机器公司 跨站脚本攻击保护
CN103577188A (zh) * 2013-10-24 2014-02-12 北京奇虎科技有限公司 防御跨站脚本攻击的方法及装置
CN103929440A (zh) * 2014-05-09 2014-07-16 国家电网公司 基于web服务器缓存匹配的网页防篡改装置及其方法
CN104182685A (zh) * 2014-08-19 2014-12-03 北京京东尚科信息技术有限公司 一种用于java web应用的xss防御方法及组件

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090119769A1 (en) * 2007-11-05 2009-05-07 Microsoft Corporation Cross-site scripting filter
CN101964025A (zh) * 2009-07-23 2011-02-02 中联绿盟信息技术(北京)有限公司 Xss检测方法和设备
CN102082780A (zh) * 2009-11-30 2011-06-01 国际商业机器公司 安全验证的方法和装置
CN103026684A (zh) * 2010-07-22 2013-04-03 国际商业机器公司 跨站脚本攻击保护
CN102999420A (zh) * 2011-09-13 2013-03-27 阿里巴巴集团控股有限公司 基于dom的跨站脚本漏洞测试方法和系统
CN102833269A (zh) * 2012-09-18 2012-12-19 苏州山石网络有限公司 跨站攻击的检测方法、装置和具有该装置的防火墙
CN102999723A (zh) * 2012-11-20 2013-03-27 焦点科技股份有限公司 主动防御xss攻击的数据防御组件生成方法及其装置
CN103577188A (zh) * 2013-10-24 2014-02-12 北京奇虎科技有限公司 防御跨站脚本攻击的方法及装置
CN103929440A (zh) * 2014-05-09 2014-07-16 国家电网公司 基于web服务器缓存匹配的网页防篡改装置及其方法
CN104182685A (zh) * 2014-08-19 2014-12-03 北京京东尚科信息技术有限公司 一种用于java web应用的xss防御方法及组件

Cited By (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104967628A (zh) * 2015-07-16 2015-10-07 浙江大学 一种保护web应用安全的诱骗方法
CN104967628B (zh) * 2015-07-16 2017-12-26 浙江大学 一种保护web应用安全的诱骗方法
CN105959335A (zh) * 2016-07-19 2016-09-21 腾讯科技(深圳)有限公司 一种网络攻击行为检测方法及相关装置
CN106060090A (zh) * 2016-07-29 2016-10-26 广州市乐商软件科技有限公司 网站脚本攻击防范方法及装置
WO2018018699A1 (zh) * 2016-07-29 2018-02-01 广州市乐商软件科技有限公司 网站脚本攻击防范方法及装置
WO2018068366A1 (zh) * 2016-10-14 2018-04-19 福建亿榕信息技术有限公司 预防xss攻击的方法
CN106506548A (zh) * 2016-12-23 2017-03-15 努比亚技术有限公司 跨站脚本攻击的防御装置及方法
CN108881101A (zh) * 2017-05-08 2018-11-23 腾讯科技(深圳)有限公司 一种基于文档对象模型的跨站脚本漏洞防御方法、装置以及客户端
CN107172029A (zh) * 2017-05-09 2017-09-15 努比亚技术有限公司 跨站攻击解决方法、移动终端及存储介质
CN107872463A (zh) * 2017-11-29 2018-04-03 四川无声信息技术有限公司 一种web邮件xss攻击检测方法及相关装置
CN108512903A (zh) * 2018-02-27 2018-09-07 深圳乐信软件技术有限公司 一种异常信息处理方法、装置、存储介质及api网关
CN108491717A (zh) * 2018-03-28 2018-09-04 四川长虹电器股份有限公司 一种基于机器学习的xss防御系统及其实现方法
CN109040097A (zh) * 2018-08-23 2018-12-18 彩讯科技股份有限公司 一种跨站脚本攻击的防御方法、装置、设备和存储介质
CN109257393A (zh) * 2018-12-05 2019-01-22 四川长虹电器股份有限公司 基于机器学习的xss攻击防御方法及装置
CN110650117A (zh) * 2019-08-01 2020-01-03 平安科技(深圳)有限公司 跨站攻击防护方法、装置、设备及存储介质
WO2021017318A1 (zh) * 2019-08-01 2021-02-04 平安科技(深圳)有限公司 跨站攻击防护方法、装置、设备及存储介质
CN112966264A (zh) * 2021-02-28 2021-06-15 新华三信息安全技术有限公司 Xss攻击检测方法、装置、设备及机器可读存储介质
CN114024709A (zh) * 2021-09-22 2022-02-08 湖北天融信网络安全技术有限公司 防御方法、xss漏洞的查寻方法、流量检测设备及存储介质

Also Published As

Publication number Publication date
CN104601540B (zh) 2018-11-16

Similar Documents

Publication Publication Date Title
CN104601540A (zh) 一种跨站脚本XSS攻击防御方法及Web服务器
US9860270B2 (en) System and method for determining web pages modified with malicious code
Sigler Crypto-jacking: how cyber-criminals are exploiting the crypto-currency boom
US20120222117A1 (en) Method and system for preventing transmission of malicious contents
CN102833258B (zh) 网址访问方法及系统
CN101895516B (zh) 一种跨站脚本攻击源的定位方法及装置
US20130312081A1 (en) Malicious code blocking system
US20120090026A1 (en) Cross-site scripting prevention in dynamic content
CN105592017B (zh) 跨站脚本攻击的防御方法及系统
US20230179631A1 (en) System and method for detection of malicious interactions in a computer network
US20170353434A1 (en) Methods for detection of reflected cross site scripting attacks
CN106713318B (zh) 一种web站点安全防护方法及系统
CN113645234B (zh) 基于蜜罐的网络防御方法、系统、介质及装置
CN104767747A (zh) 点击劫持安全检测方法和装置
CN105049440A (zh) 检测跨站脚本攻击注入的方法及系统
CN107770125A (zh) 一种网络安全应急响应方法及应急响应平台
CN111628990A (zh) 识别攻击的方法、装置和服务器
CN105704120A (zh) 一种基于自学习形式的安全访问网络的方法
Mansoori et al. YALIH, yet another low interaction honeyclient
Mun et al. Blackhole attack: user identity and password seize attack using honeypot
WO2007096659A1 (en) Phishing mitigation
US10757118B2 (en) Method of aiding the detection of infection of a terminal by malware
US11128639B2 (en) Dynamic injection or modification of headers to provide intelligence
Sandhu et al. Google safe browsing-web security
Selvamani et al. Protection of web applications from cross-site scripting attacks in browser side

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20220217

Address after: 550025 Huawei cloud data center, jiaoxinggong Road, Qianzhong Avenue, Gui'an New District, Guiyang City, Guizhou Province

Patentee after: Huawei Cloud Computing Technology Co.,Ltd.

Address before: 518129 Bantian HUAWEI headquarters office building, Longgang District, Guangdong, Shenzhen

Patentee before: HUAWEI TECHNOLOGIES Co.,Ltd.