CN110933062A - El表达式注入漏洞的防御方法 - Google Patents

El表达式注入漏洞的防御方法 Download PDF

Info

Publication number
CN110933062A
CN110933062A CN201911166915.9A CN201911166915A CN110933062A CN 110933062 A CN110933062 A CN 110933062A CN 201911166915 A CN201911166915 A CN 201911166915A CN 110933062 A CN110933062 A CN 110933062A
Authority
CN
China
Prior art keywords
parameter
illegal
characters
encoding
expression injection
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.)
Pending
Application number
CN201911166915.9A
Other languages
English (en)
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.)
Hangzhou Dbappsecurity Technology Co Ltd
Original Assignee
Hangzhou Dbappsecurity Technology 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 Hangzhou Dbappsecurity Technology Co Ltd filed Critical Hangzhou Dbappsecurity Technology Co Ltd
Priority to CN201911166915.9A priority Critical patent/CN110933062A/zh
Publication of CN110933062A publication Critical patent/CN110933062A/zh
Pending legal-status Critical Current

Links

Images

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/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
    • 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/1433Vulnerability analysis
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/30Network architectures or network communication protocols for network security for supporting lawful interception, monitoring or retaining of communications or communication related information
    • H04L63/306Network architectures or network communication protocols for network security for supporting lawful interception, monitoring or retaining of communications or communication related information intercepting packet switched data communications, e.g. Web, Internet or IMS communications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Technology Law (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明提供了一种EL表达式注入漏洞的防御方法,包括以下步骤:1)、服务端对客户端传递的请求进行解析,提取目标参数test_el;2)、对提取的参数test_el进行黑名单检验,如果存在黑名单中的非法字符或者关键词则进入步骤3;如果不存在黑名单中的非法字符及关键词,则参数test_el作为提交参数,执行步骤4;3)、对参数test_el内容进行编码,对编码转换后参数内容中的预定义字符进行转义,转义后得到提交参数;4)、对提交参数后的返回页面进行过滤审查,得到拦截的非法数据;执行步骤5;5)、将被拦截的非法数据以及请求信息存储到服务器中。本发明解决了EL表达式注入漏洞的造成的服务器信息泄漏及代码执行等危害,提供了一种防御EL表达式注入漏洞的装置。

Description

EL表达式注入漏洞的防御方法
技术领域
本发明涉及一种EL表达式注入漏洞的防御技术,具体涉及一种EL表达式注入漏洞的防御方法。
背景技术
EL(Expression Language)提供了在JSP(Java ServerPages,java服务器页面)中简化表达式的方法,使JSP写起来更加简单。EL表达式通常是JSP中用来在显示层中显示数据的标签,可以提高页面的耦合度。由于其方便好用,被其他框架所借鉴并发展,最常见的两个例子是OGNL(Struts使用)语言和SPEL(Spring使用)。EL注入漏洞,使得攻击者可以访问Web应用Application和session等敏感信息,另外在OGNL和SPEL中则可以执行系统命令。
现有技术没有关于EL表达式注入漏洞的防御方法技术。
因此,需要对现有技术进行改进。
发明内容
本发明要解决的技术问题是提供一种高效的EL表达式注入漏洞的防御方法。
为解决上述技术问题,本发明提供了一种EL表达式注入漏洞的防御方法,包括以下步骤:
1)、服务端对客户端传递的请求进行解析,提取目标参数test_el;
2)、对提取的参数test_el进行黑名单检验,如果存在黑名单中的非法字符或者关键词则进入步骤3;如果不存在黑名单中的非法字符及关键词,则参数test_el作为提交参数,执行步骤4;
3)、对参数test_el内容进行编码,对编码转换后参数内容中的预定义字符进行转义,转义后得到提交参数;
4)、对提交参数后的返回页面进行过滤审查,得到拦截的非法数据;执行步骤5;
5)、将被拦截的非法数据以及请求信息存储到服务器中。
作为对本发明EL表达式注入漏洞的防御方法的改进:
在步骤1中,参数test_el的获取方式为:
通过JavaScript脚本或者表单(Form)向网站服务器提交参数值,服务器接收到参数值后,返回到网页的参数值。
作为对本发明EL表达式注入漏洞的防御方法的进一步改进:
步骤3的编码方法为base64编码、hex编码、URL编码等,
作为对本发明EL表达式注入漏洞的防御方法的进一步改进:
步骤3的预定义字符包括黑名单中的非法字符一部分/全部的非法字符以及空格等类似的其他字符,根据预设的转义规则新型转义。
作为对本发明EL表达式注入漏洞的防御方法的进一步改进:
非法字符包含+、-、`、|、$、&、;、'、>、=;非法关键词包含ls、ipconfig、echo、cat;预定义字符包括空格、+、>、=。
作为对本发明EL表达式注入漏洞的防御方法的进一步改进:
步骤5中的请求信息指攻击者发送的http请求包。
本发明EL表达式注入漏洞的防御方法的技术优势为:
现有技术解决EL表达式注入漏洞的方法是通过忽略提交参数中的EL表达式内容,没有通用的防御方法。本发明是针对现有技术的不足,提出了一种EL表达式注入漏洞防御方法,该方法的应用可以有效避免EL表达式注入漏洞被攻击。本发明解决了EL表达式注入漏洞的造成的服务器信息泄漏及代码执行等危害,提供了一种防御EL表达式注入漏洞的装置。
附图说明
下面结合附图对本发明的具体实施方式作进一步详细说明。
图1为本发明EL表达式注入漏洞的防御方法的流程示意图。
具体实施方式
下面结合具体实施例对本发明进行进一步描述,但本发明的保护范围并不仅限于此。
实施例1、EL表达式注入漏洞的防御方法,如图1所示,包括以下步骤:
1)、服务端对客户端传递的请求进行解析,提取目标参数test_el;
网页是网站的展现形式,是包含HTML标签的纯文本文件,可以用浏览器打开并显示里面的内容。其中动态页面可以根据用户提供的数据展现不同内容,用户和网站服务器之间可以交互。交互方法为前端网页可通过GET、POST方式提交多个参数至网站服务器。具体地,可以通过JavaScript脚本或者表单(Form)向网站服务器提交参数及其值。网站服务器接收到参数值后,一些参数的值可能会被服务器返回到网页中。因此,上述的目标参数test_el指前端网页中的能被网站服务器接收并处理的参数。
2)、对提取的参数test_el进行黑名单检验,如果存在黑名单中的非法字符或者关键词则进入步骤3;如果不存在黑名单中的非法字符及关键词,则参数test_el作为提交参数,执行步骤4。
黑名单包含两个模块,第一个模块为非法字符,包含+、-、`、|、$、&、;、'、>、=等特殊字符,第二个模块为非法关键词,包含ls、ipconfig、echo、cat等。若检验通过则进入步骤4,不通过则进入步骤3;
3)、对参数test_el内容进行编码,对编码转换后参数内容中的预定义字符进行转义,转义后的编码参数作为提交参数;
编码方法为base64编码、hex编码、URL编码等。预定义字符可以包括一部分/全部的非法字符以及空格等类似的其他字符。
例如预定义字符转义的方式可以为如下表所示:
转义前 转义后
空格 %20
+ %2b
> %3e
%3d
4)、提交参数后服务器会自动返回页面,对提交参数后的返回页面进行过滤审查,得到拦截的非法数据,防止执行可疑的命令;执行步骤5;
过滤审查为:看返回页面中是否存在不应该存在的命令执行结果内容,如ipconfig的执行结果中会存在“Windows IP配置”等内容,如果存在。
5)、将被拦截的非法数据以及请求信息存储到服务器中。
请求信息指攻击者发送的http请求包。
步骤4检验不通过,存在非法数据则不提交给服务器,拒绝返回html内容。
最后,还需要注意的是,以上列举的仅是本发明的若干个具体实施例。显然,本发明不限于以上实施例,还可以有许多变形。本领域的普通技术人员能从本发明公开的内容直接导出或联想到的所有变形,均应认为是本发明的保护范围。

Claims (6)

1.EL表达式注入漏洞的防御方法,其特征在于:包括以下步骤:
1)、服务端对客户端传递的请求进行解析,提取目标参数test_el;
2)、对提取的参数test_el进行黑名单检验,如果存在黑名单中的非法字符或者关键词则进入步骤3;如果不存在黑名单中的非法字符及关键词,则参数test_el作为提交参数,执行步骤4;
3)、对参数test_el内容进行编码,对编码转换后参数内容中的预定义字符进行转义,转义后得到提交参数;
4)、对提交参数后的返回页面进行过滤审查,得到拦截的非法数据;执行步骤5;
5)、将被拦截的非法数据以及请求信息存储到服务器中。
2.根据权利要求1所述的EL表达式注入漏洞的防御方法,其特征在于:
在步骤1中,参数test_el的获取方式为:
通过JavaScript脚本或者表单(Form)向网站服务器提交参数值,服务器接收到参数值后,返回到网页的参数值。
3.根据权利要求2所述的EL表达式注入漏洞的防御方法,其特征在于:
步骤3的编码方法为base64编码、hex编码、URL编码等。
4.根据权利要求3所述的EL表达式注入漏洞的防御方法,其特征在于:
步骤3的预定义字符包括黑名单中的非法字符一部分/全部的非法字符以及空格等类似的其他字符,根据预设的转义规则新型转义。
5.根据权利要求4所述的EL表达式注入漏洞的防御方法,其特征在于:
非法字符包含+、-、`、|、$、&、;、'、>、=;非法关键词包含ls、ipconfig、echo、cat;预定义字符包括空格、+、>、=。
6.根据权利要求5所述的EL表达式注入漏洞的防御方法,其特征在于:
步骤5中的请求信息指攻击者发送的http请求包。
CN201911166915.9A 2019-11-25 2019-11-25 El表达式注入漏洞的防御方法 Pending CN110933062A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911166915.9A CN110933062A (zh) 2019-11-25 2019-11-25 El表达式注入漏洞的防御方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911166915.9A CN110933062A (zh) 2019-11-25 2019-11-25 El表达式注入漏洞的防御方法

Publications (1)

Publication Number Publication Date
CN110933062A true CN110933062A (zh) 2020-03-27

Family

ID=69850941

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911166915.9A Pending CN110933062A (zh) 2019-11-25 2019-11-25 El表达式注入漏洞的防御方法

Country Status (1)

Country Link
CN (1) CN110933062A (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105704146A (zh) * 2016-03-18 2016-06-22 四川长虹电器股份有限公司 Sql防注入的系统与方法
CN106506548A (zh) * 2016-12-23 2017-03-15 努比亚技术有限公司 跨站脚本攻击的防御装置及方法
US20170318045A1 (en) * 2016-04-27 2017-11-02 Sap Se End-to-End Taint Tracking for Detection and Mitigation of Injection Vulnerabilities in Web Applications
CN107590387A (zh) * 2017-09-04 2018-01-16 杭州安恒信息技术有限公司 El表达式注入漏洞检测方法、装置及电子设备
CN108881101A (zh) * 2017-05-08 2018-11-23 腾讯科技(深圳)有限公司 一种基于文档对象模型的跨站脚本漏洞防御方法、装置以及客户端

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105704146A (zh) * 2016-03-18 2016-06-22 四川长虹电器股份有限公司 Sql防注入的系统与方法
US20170318045A1 (en) * 2016-04-27 2017-11-02 Sap Se End-to-End Taint Tracking for Detection and Mitigation of Injection Vulnerabilities in Web Applications
CN106506548A (zh) * 2016-12-23 2017-03-15 努比亚技术有限公司 跨站脚本攻击的防御装置及方法
CN108881101A (zh) * 2017-05-08 2018-11-23 腾讯科技(深圳)有限公司 一种基于文档对象模型的跨站脚本漏洞防御方法、装置以及客户端
CN107590387A (zh) * 2017-09-04 2018-01-16 杭州安恒信息技术有限公司 El表达式注入漏洞检测方法、装置及电子设备

Similar Documents

Publication Publication Date Title
Melicher et al. Riding out domsday: Towards detecting and preventing dom cross-site scripting
CN104766014B (zh) 用于检测恶意网址的方法和系统
JP6624771B2 (ja) クライアントベースローカルマルウェア検出方法
CN105049440B (zh) 检测跨站脚本攻击注入的方法及系统
US8448241B1 (en) Browser extension for checking website susceptibility to cross site scripting
CN103559235B (zh) 一种在线社交网络恶意网页检测识别方法
CN104881608B (zh) 一种基于模拟浏览器行为的xss漏洞检测方法
CN105956180B (zh) 一种敏感词过滤方法
US9553865B2 (en) Protecting websites from cross-site scripting
CN104881607B (zh) 一种基于模拟浏览器行为的xss漏洞检测系统
CN105871845A (zh) Web漏洞扫描行为的检测方法及装置
CN106230835B (zh) 基于Nginx日志分析和IPTABLES转发的反恶意访问的方法
CN107276986B (zh) 一种通过机器学习保护网站的方法、装置和系统
CN109858248A (zh) 恶意Word文档检测方法和装置
US10291640B2 (en) System and method for detecting anomalous elements of web pages
CN106789877A (zh) 一种基于沙箱的漏洞验证系统
Rao et al. Two for the price of one: A combined browser defense against XSS and clickjacking
Choi et al. HXD: Hybrid XSS detection by using a headless browser
CN104660556B (zh) 跨站伪造请求漏洞检测的方法及装置
US9098704B2 (en) Method for function capture and maintaining parameter stack
Kour et al. Tracing out cross site scripting vulnerabilities in modern scripts
CN110933062A (zh) El表达式注入漏洞的防御方法
CN112287349A (zh) 安全漏洞检测方法及服务端
CN108200191B (zh) 利用微扰法的客户端动态url相关脚本字符串检测系统
Siewert et al. On the security of parsing security-relevant HTTP headers in modern browsers

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication

Application publication date: 20200327

RJ01 Rejection of invention patent application after publication