问题描述
我们正在使用 ModSecurity CRS 3.0.2 并且需要排除规则 930110,如果它包含模式“../”和“..\”(路径遍历攻击),则该规则会阻止请求。如果我们在提交请求时附加一个文件,这种模式会被频繁匹配并且请求被阻止,这是我们想要避免的。
我可以使用以下方法排除 REQUEST_BODY:
SecruleUpdateTargetById 930110 "!REQUEST_BODY"
有没有办法只排除附件并扫描 REQUEST_BODY 的其余部分?
如果没有,我们是否可以识别 REQUEST_BODY 是否包含附件并仅在这种情况下排除 REQUEST_BODY。我尝试了如下字符串搜索,但它不起作用。 'filename' 是 REQUEST_BODY 中的一个示例字符串,每当附加文件时我都会看到。
Secrule REQUEST_BODY "@包含文件名"
"id:1001,phase:1,pass,nolog,
ctl:ruleRemoveTargetById=930110;REQUEST_BODY"
REQUEST_URI 过滤器虽然有效
Secrule REQUEST_URI "@beginsWith /process"
"id:1001,
ctl:ruleRemoveTargetById=930110;REQUEST_BODY"
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)