HTTP 服务器或 HTTP 代理服务器漏洞中允许 CONNECT 方法

HTTP 服务器或 HTTP 代理服务器漏洞中允许 CONNECT 方法

我的设置详细信息:

  • 操作系统:RHEL7
  • Web 服务器:Apache http 服务器(启用 SSL)
  • AppContainer : NodeJS
  • Webserver 通过 mod_proxy 连接到 NodeJS。

我使用以下配置阻止了 apache http 服务器中的 connect 方法。但 connect 方法漏洞仍然存在。我需要在 NodeJS 端做什么吗?

RewriteCond %{REQUEST_METHOD} !^(GET|POST|PUT|DELETE|HEAD)
RewriteRule .* - [R=405,L]

答案1

出现此类一般问题的最常见原因是未在您所处的RewriteEngine on上下文中启用 mod_rewrite。RewriteRule

但是,即使如此,我还是建议使用<Limit><LimitExcept>块,或者最好mod_proxy_connect根本不加载,这样该CONNECT方法就无法使用。当然,如果它由您的应用程序处理,那也需要禁用。

评论后的附加信息:

不是修改<Directory />配置附带的块,它应该保持原样。

另外,不要(正如我在评论中所说的那样)将<Limit>块放在另一个块内(在你的情况下是一个<Directory>块。块中的配置指令<Directory>仅在请求映射到文件系统时才生效,但你正在代理/另一个服务示例.com, 意思是请求被映射到文件系统,因此您的<Limit>阻止永远不会生效。

相关内容