繁体   English   中英

如何在.htaccess中禁用mod_security和mod_security2

[英]How to disable mod_security and mod_security2 in .htaccess

我创建了一个Wordpress插件,该插件变得很流行,但是我收到很多抱怨,称它不起作用。 登录许多用户的WP网站后(询问管理员密码后),我注意到我无法轻易解决的最后一个问题是mod_security和mod_security2阻止了一些AJAX请求或.htaccess,这在某些配置上导致500错误。

那么首先为什么这段代码会导致某些服务器返回500错误

<IfModule mod_security2.c>
  SecRuleRemoveById 300015
  SecRuleRemoveById 300016
  SecRuleRemoveById 300017
  SecRuleRemoveById 950907
  SecRuleRemoveById 950005
  SecRuleRemoveById 950006
  SecRuleRemoveById 960008
  SecRuleRemoveById 960011
  SecRuleRemoveById 960904
  SecRuleRemoveById phpids-17
  SecRuleRemoveById phpids-20
  SecRuleRemoveById phpids-21
  SecRuleRemoveById phpids-30
  SecRuleRemoveById phpids-61

在其他服务器上以这种方式通过id删除规则会导致500错误:

<IfModule mod_security.c>
  SecRuleRemoveById 300015
  ...
  SecRuleRemoveById phpids-61
</IfModule>

因此,目前唯一不会导致任何服务器崩溃的工作是

<IfModule mod_security.c>
  SecFilterEngine Off
  SecFilterScanPOST Off
</IfModule>

但是对于具有mod_security2的服务器来说还不够!

如何编写跨服务器的.htaccess文件,以及应添加哪些IF条件以在任何适用的位置禁用mod_security和mod_security2,并且在其他配置下不会引起500错误?

编辑:不仅在Apache中。 使用.htaccess的任何地方。

ModSecurity社区经理Ryan C. Barnett声称:

在2.x中不再支持.htaccess文件,因为它引发了太多的安全问题。

来源: http//article.gmane.org/gmane.comp.apache.mod-security.user/3065

以下是启用htaccess的唯一可能的配置(自2.7.3开始),但您需要./configure --enable-htaccess-config

  • 安全动作
  • 安全规则

  • SecRuleRemoveByMsg

  • SecRuleRemoveByTag
  • SecRuleRemoveById

  • SecRuleUpdateActionById

  • SecRuleUpdateTargetById
  • SecRuleUpdateTargetByTag
  • SecRuleUpdateTargetByMsg

https://github.com/SpiderLabs/ModSecurity/blob/876d4f5f9558595c00f40af25ea6216386f15cd7/CHANGES#L69

显示消息告诉联系服务器管理员将是最后要做的事情。 首先,我将尝试使用以下解决方案之一来自动创建配置:

在子文件夹中创建2-3个沙盒.htaccess配置

  1. 在插件激活测试期间,使用模拟的远程AJAX测试一一配置
  2. 从最佳常规设置config子文件夹开始
  3. 检查此文件夹中的AJAX代理脚本调用和图像,样式等文件访问
  4. 找到成功的配置(取消阻止且不会崩溃)后,将选定的.htaccess文件保存到包含AJAX代理PHP文件的文件夹中
  5. 如果所有配置(或内置的wordpress AJAX脚本-不太可靠)都无法正常显示,则会显示一条错误消息,告知联系服务器管理员以允许对指定文件夹进行htaccess

要么

  1. 使用PHP检查加载的模块
  2. 仅当存在mod_security2时才添加SecRuleRemoveById id以防止基本的mod_security崩溃

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM