首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ModSecurity WAF异常评分

ModSecurity WAF异常评分
EN

Security用户
提问于 2020-05-04 18:23:14
回答 1查看 880关注 0票数 1

我正在使用ModSecurity进入OWASP,并研究OWASP在请求-901-INITIALIZATION.Conconf中计算异常分数的方法,如果它们设置了以下行:

代码语言:javascript
复制
setvar:'tx.anomaly_score=0',\
setvar:'tx.anomaly_score_pl1=0',\
setvar:'tx.anomaly_score_pl2=0',\
setvar:'tx.anomaly_score_pl3=0',\
setvar:'tx.anomaly_score_pl4=0',\

在请求-949-阻塞-EVALUATION.CON,他们做了以下工作:

代码语言:javascript
复制
SecRule TX:PARANOIA_LEVEL "@ge 1" \
    "id:949060,\
    phase:2,\
    pass,\
    t:none,\
    nolog,\
    setvar:'tx.anomaly_score=+%{tx.anomaly_score_pl1}'"
enter preformatted text here
SecRule TX:PARANOIA_LEVEL "@ge 2" \
"id:949061,\
phase:2,\
pass,\
t:none,\
nolog,\
setvar:'tx.anomaly_score=+%{tx.anomaly_score_pl2}'"

Q1:当然,偏执程度会是1,2,3或4,那么为什么"@ge 1“呢?哪一个会在每个偏执狂水平上被评估?

Q2:当他们做setVar "setvar:'tx.anomaly_score=+%{tx.anomaly_score_pl2}"时,方程是tx.anomaly_score=tx.anomaly_score+tx.anomaly_score_pl2,对吗?如果我的请求被多个规则验证,这在逻辑上是如何适用的?

Q3:我想要一个详细的例子,说明OWASP如何计算异常分数并使用它来拒绝请求。

EN

回答 1

Security用户

发布于 2020-11-03 18:33:16

Q1:TX:PARANOIA_LEVEL "@ge 1"指的是if TX:PARANOIA_LEVEL >= 1,所有四个PL都匹配。请阅读上面的规则的理由。

Q2:是的,+=和你在那里写的一样。

如果我的请求被多个规则验证,这在逻辑上是如何适用的?

规则是一个一个地进行评估的,因为您(或规则制定者)列出了它们(按阶段分组)。如果一个规则包含像上面这样的赋值操作,那么只是计算-但是TX (或tx)意味着事务,所以对于每个请求都有它自己的TX集合。

Q3:我认为最好的起点是此Modsecurity文档。它有点过时了,但基本的东西还在那里。一个简短的总结:每条规则都有一个严重性级别,它可以是一个注意级别(包括点2)、警告(3)、错误(4)、关键级别(5) (这些都是在这个文件中定义的)。每个规则被激活在不同的请(偏执水平),所以选择的分数(变量)将增加的严重性值。

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

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

复制
相关文章

相似问题

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