我正在使用来自OWASP的新CoreRuleSet 3.0并遇到一个情境,其中忽略偏执级别并且文件中的所有规则都会运行。
在CRS-SETUP配置文件中,有一个设置偏执级别的块:
SecAction \ “ID:900000,\ 阶段1,\ NOLOG,\ 通过,\ T:没有,\ SETVAR:tx.paranoia_level = 2"
然后是
的包含992_PARANOIATEST.conf 其中包含:
SecRule TX:PARANOIA_LEVEL "@lt 4" "phase:3,id:992017,nolog,pass,skipAfter:END-PARANOIA-992"
SecRule TX:PARANOIA_LEVEL“@lt 4”“phase:4,id:992018,nolog,pass,skipAfter:END-PARANOIA-992”
#Plaranoia Level 4(仅当tx.paranoia_level足够高时适用:4或更高)
SecRule ARGS“(海象)” “阶段2,\ ID:992100,\ 捕获,\ logdata:'匹配数据:%{TX.0}在%{MATCHED_VAR_NAME}内找到:%{MATCHED_VAR} PARANOIA_LEVEL =%{tx.paranoia_level}',\ 标签:'测试规则块海象',\ 日志,\ 标签: '偏执级/ 4',\ 块“
SecMarker“END-PARANOIA-992”
在表单字段中,我放置了海象这个词,我被阻止,日志显示此规则被触发,偏执等级仍为2,而不是4.
答案 0 :(得分:0)
当我在点击帖子之前查看问题时,我看到了灯光。我可能从Response(第3阶段和第4阶段)复制了Paranoia Level样板,但我的规则是第2阶段规则(Request)。使用偏执级别跳过块修复阶段可以解决问题。