首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Web应用防火墙规则优化

Web应用防火墙规则优化
EN

Security用户
提问于 2012-08-02 04:08:02
回答 1查看 511关注 0票数 1

以下是取自ModSecurity核心规则的两条规则。这两个规则是XSS攻击的基本规则。如果我们查看这两条规则,它们的变量和操作是相同的,它们在正则表达式中的不同,即\bgetparent文件夹\b“和\bonmousedown\b\W*?\=”,并发现了大量这样的规则。这是多余的吗?我可以组合这些规则,即单个正则表达式吗?

REQUEST_COOKIES|REQUEST_COOKIES_NAMES|REQUEST_FILENAME|ARGS_NAMES|ARGS|XML:/*“\bgetparent文件夹\b”阶段:2,rev:'2.2.4',SecRule,t:none,t:htmlEntityDecode,t:compressWhiteSpace,t:小写,ctl:auditLogParts=+E,块,msg:‘跨站点脚本攻击’,id:'958016',标签:‘SecRule_A2/WASC-8’,标签:‘WASCTC/WASC-22’,标记:‘OWASP_TOP_10/A2’,标签:‘OWASP_App传感器/IE1’,标签:‘PCI/6.5.1’,日志数据:‘%{TX.0}’,严重性:‘2’,setvar:'tx.msg=%{rule.msg}',rule.msg}setvar:tx.%{rule.id}-WEB_ATTACK/XSS-%{matched_var_name}=%{tx.0}“SecRule REQUEST_COOKIES|REQUEST_COOKIES_NAMES|REQUEST_FILENAME|ARGS_NAMES|ARGS|XML:/* "\bonmousedown\b\W*?\=”\“阶段:2,rev:'2.2.4',capture,t:none,t:htmlEntityDecode,t:compressWhiteSpace,t:小写,ctl:auditLogParts=+E,块,msg:‘跨站点脚本攻击’,id:'958414',标签:‘OWASP_TOP_10/A2’,标签:‘OWASP_App传感器/IE1’,标签:‘PCI/6.5.1’,日志数据:‘%{TX.0}’,严重性:‘2’,setvar:‘tms.g=%{rule.msg}’,rule.msg}setvar:tx.%{rule.id}-WEB_ATTACK/XSS-%{matched_var_name}=%{tx.0}“

EN

回答 1

Security用户

回答已采纳

发布于 2012-08-08 05:43:26

好吧,我看这两个正则表达式的区别,

代码语言:javascript
复制
\bgetparentfolder\b

\bonmousedown\b\W*?\=

第一个只是匹配字符串“getparent文件夹”,而第二个是匹配除了字母、数字和下划线之外的字符串"onmousedown“,懒洋洋地匹配上一项(附加字符)0次或多次。我相信这将匹配使用onmousedown javascript事件的两种方式:

在HTML中:

代码语言:javascript
复制
<element onmousedown="SomeJavaScriptCode">

在JavaScript中:

代码语言:javascript
复制
object.onmousedown="SomeJavaScriptCode"

来自电子书XSS 2.5的这个页面提到了如何在XSS攻击中使用onmousedown。

哦,至于第一个正则表达式,“\bgetparent文件夹\b”,我没有在任何Javascript或JScript引用中找到它,但是在搜索它之后,我可以看到这个名称的函数和方法出现在许多语言中,比如VBScript。

因此很明显,这两条规则正在寻找同一类攻击(XSS)的非常不同的实现。所以我认为把它们结合成一个规则和一个组合的正则表达式是没有意义的。

票数 1
EN
页面原文内容由Security提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://security.stackexchange.com/questions/18022

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档