Jetty 9.4.38 将 monitoredPath(上下文)公开为自己的上下文

Jetty 9.4.38 exposes monitoredPath (contexts) as own context

我检查了所有配置文件并搜索了码头文档以及该主题的 github 问题,但找不到任何相关信息。

当 运行 jetty 9.4.38 独立时,它将 etc/jetty-deploy.xml 中设置为 monitoredDir 的文件夹公开为自己的上下文。

          <Arg>
            <New class="org.eclipse.jetty.deploy.providers.WebAppProvider">
              <Set name="monitoredDirName">
                <Property>
                  <Name>jetty.deploy.monitoredPath</Name>
                  <Default>
                    <Property name="jetty.base" default="." />/<Property name="jetty.deploy.monitoredDir" deprecated="jetty.deploy.monitoredDirName" default="contexts"/>  
                  </Default>
                </Property>
              </Set> 

我无法从外部访问此上下文,然后浏览文件夹中的文件(上下文 xmls...)

我可以通过设置

禁止文件浏览
<init-param>
      <param-name>dirAllowed</param-name>
      <param-value>false</param-value>
</init-param>

在 etc/webdefaults.xml

但如果我知道路径,我仍然可以访问文件夹中包含的文件。

对于如何禁用此上下文的任何提示,我将不胜感激,以便无法从外部访问它。

升级您的 Jetty 版本。

不久前曾报道过此问题,并已在 CVE-2021-28163 的修复中得到解决。

https://www.eclipse.org/jetty/security_reports.php