mod_security 配置问题:解析操作时出错:未知操作:ver

mod_security 配置问题:解析操作时出错:未知操作:ver

我正在尝试使用安装/配置 mod-sec本教程,它使用 OWASPModSecurity 核心规则集。然而当我重新启动 apache 时,出现以下错误:

Syntax error on line 53 of /etc/modsecurity/base_rules/modsecurity_crs_20_protocol_violations.conf:
Error parsing actions: Unknown action: ver
Action 'configtest' failed.
The Apache error log may have more information.
...fail!

这是有问题的代码块:(具体来说ver:'OWASP_CRS/2.2.9',\

SecRule REQUEST_LINE "!^(?i:(?:[a-z]{3,10}\s+(?:\w{3,7}?://[\w\-\./]*(?::\d+)?)?/[^?#]*(?:\?[^#\s]*)?(?:#[\S]*)?|connect (?:\d{1,3}\.){3}\d{1,3}\.?(?::\d+)?|options \*)\s+[\w\./]+|get /[^?#]*(?:\?[^#\s]*)?(?:#[\S]*)?)$"\
  "msg:'Invalid HTTP Request Line',\
  severity:'4',\
  id:'960911',\
  ver:'OWASP_CRS/2.2.9',\
  rev:'2',\
  maturity:'9',\
  accuracy:'9',\
  logdata:'%{request_line}',\
  phase:1,\
  block,\
  t:none,\
  tag:'OWASP_CRS/PROTOCOL_VIOLATION/INVALID_REQ',\
  tag:'CAPEC-272',\
  setvar:'tx.msg=%{rule.msg}',\
  setvar:tx.anomaly_score=+%{tx.notice_anomaly_score},\
  setvar:'tx.%{rule.id}-OWASP_CRS/PROTOCOL_VIOLATION/INVALID_REQ-%{matched_var_name}=%{matched_var}'"

我已经安装了modsec Version: 2.6.3-1ubuntu0.2,所以我相信它应该可以与OWASP ModSecurity Core Rule Set

关于如何让它工作,您有什么想法吗?提前致谢!

答案1

谷歌搜索你的错误信息,我发现

...

现在 apache 启动失败:Sep 30 15:30:14 mydomain httpd[2377]: /etc/httpd/modsecurity.d/activated_rules/modsecurity_crs_20_protocol_violations.conf 第 52 行语法错误:Sep 30 15:30:14 mydomain httpd[2377]: 解析操作时出错:未知操作:ver

响应是

这是我的错...CRS v2.2.6 使用了 ModSecurity v2.7.0 中的一些新操作 -

  • 版本
  • 到期
  • 准确性

您使用的 CRS 似乎对于您安装的 mod_security 版本来说太新了。您需要更新到较新版本的 mod_security 或找到较旧版本的 CRS。

答案2

OWASP 规则集已升级,要求 modsecurity >= 2.7。

有一个降级脚本util/规则管理文件夹可以自动降级规则集以兼容 2.6 版本。

要降级已激活的规则,只需在规则目录中运行此命令(需要 perl):

perl <PATH_TO_OWASP_RULESET_TGZ>/SpiderLabs-owasp-modsecurity-crs-ebe8790/util/rule-management/remove-2.7-actions.pl -t 2.6 -f .

相关内容