• 公告ID (KylinSec-SA-2024-4188)

摘要:

jetty security update

安全等级: Medium

公告ID: KylinSec-SA-2024-4188

发布日期: 2024年12月9日

关联CVE: CVE-2023-26048   CVE-2023-36479   CVE-2023-40167  

  • 详细介绍

1. 漏洞描述

   

Jetty 是一个 100% 用 Java 编写的 HTTP 服务器和 Servlet 容器。这意味着您不需要配置和运行一个单独的 Web 服务器(比如 Apache)来使用 Java、servlets 和 JSP 生成动态内容。Jetty 是一个功能完备的 Web 服务器,适用于静态和动态内容。与单独的服务器/容器解决方案不同,这意味着您的 Web 服务器和 Web 应用程序在同一个进程中运行,没有互联开销和复杂性。此外,作为一个纯 Java 组件,Jetty 可以简单地被包含在您的应用程序中,用于演示、分发或部署。Jetty 可在所有支持 Java 的平台上使用。

这个软件包包含了:

安全修复:

Jetty 是一个基于 Java 的 Web 服务器和 Servlet 引擎。在受影响的版本中,具有多部分支持的 servlet(例如,用 `@MultipartConfig` 注解的)在调用 `HttpServletRequest.getParameter()` 或 `HttpServletRequest.getParts()` 时,如果客户端发送一个多部分请求,其中包含一个有名称但没有文件名且内容非常大的部分,可能会导致 `OutOfMemoryError`。即使在 `fileSizeThreshold=0` 的默认设置下,也应该将整个部分内容流式传输到磁盘,但仍然会发生这种情况。攻击者客户端可以发送一个大型的多部分请求,导致服务器抛出 `OutOfMemoryError`。然而,服务器在 `OutOfMemoryError` 之后可能能够恢复并继续服务——尽管可能需要一些时间。这个问题已经在 9.4.51、10.0.14 和 11.0.14 版本中被修复。建议用户升级。无法升级的用户可以设置多部分参数 `maxRequestSize`,它必须设置为非负值,以便限制整个多部分内容的大小(尽管仍然读入内存)。(CVE-2023-26048)

Eclipse Jetty 规范仓库是 Jetty 项目的规范仓库。使用具有非常特定命令结构的 CgiServlet 的用户可能会执行错误的命令。如果用户向 org.eclipse.jetty.servlets.CGI Servlet 发送请求,请求一个名称中有空格的二进制文件,servlet 将通过在命令周围添加引号来转义命令。这个被包裹的命令,加上一个可选的命令前缀,然后会通过调用 Runtime.exec 来执行。如果用户提供的原始二进制文件名包含一个引号后跟一个空格,结果命令行将包含多个令牌而不是一个。这个问题已经在 9.4.52、10.0.16、11.0.16 和 12.0.0-beta2 版本中被修复。(CVE-2023-36479)

Jetty 是一个基于 Java 的 Web 服务器和 Servlet 引擎。在 9.4.52、10.0.16、11.0.16 和 12.0.1 之前的版本中,Jetty 接受在 HTTP/1 头部字段中内容长度值之前的 `+` 字符。这比 RFC 允许的更宽松,其他服务器通常会以 400 响应拒绝这样的请求。虽然没有已知的利用场景,但如果 Jetty 与不关闭连接的服务器一起使用,可能会产生请求走私的情况。版本 9.4.52、10.0.16、11.0.16 和 12.0.1 包含了这个问题的补丁。由于没有已知的利用场景,因此没有已知的变通方法。(CVE-2023-40167)

2. 影响范围

cve名称 产品 组件 是否受影响
CVE-2023-26048 KY3.5.2 jetty Fixed
CVE-2023-36479 KY3.5.2 jetty Fixed
CVE-2023-40167 KY3.5.2 jetty Fixed

3. 影响组件

    jetty

4. 修复版本

   

KY3.5.2

软件名称 架构 版本号
jetty noarch 9.4.16-8.ky3_5
jetty-alpn-client noarch 9.4.16-8.ky3_5
jetty-alpn-server noarch 9.4.16-8.ky3_5
jetty-annotations noarch 9.4.16-8.ky3_5
jetty-ant noarch 9.4.16-8.ky3_5
jetty-cdi noarch 9.4.16-8.ky3_5
jetty-client noarch 9.4.16-8.ky3_5
jetty-continuation noarch 9.4.16-8.ky3_5
jetty-deploy noarch 9.4.16-8.ky3_5
jetty-fcgi-client noarch 9.4.16-8.ky3_5
jetty-fcgi-server noarch 9.4.16-8.ky3_5
jetty-http noarch 9.4.16-8.ky3_5
jetty-http-spi noarch 9.4.16-8.ky3_5
jetty-http2-client noarch 9.4.16-8.ky3_5
jetty-http2-common noarch 9.4.16-8.ky3_5
jetty-http2-hpack noarch 9.4.16-8.ky3_5
jetty-http2-http-client-transport noarch 9.4.16-8.ky3_5
jetty-http2-server noarch 9.4.16-8.ky3_5
jetty-httpservice noarch 9.4.16-8.ky3_5
jetty-infinispan noarch 9.4.16-8.ky3_5
jetty-io noarch 9.4.16-8.ky3_5
jetty-jaas noarch 9.4.16-8.ky3_5
jetty-jaspi noarch 9.4.16-8.ky3_5
jetty-javadoc noarch 9.4.16-8.ky3_5
jetty-javax-websocket-client-impl noarch 9.4.16-8.ky3_5
jetty-javax-websocket-server-impl noarch 9.4.16-8.ky3_5
jetty-jmx noarch 9.4.16-8.ky3_5
jetty-jndi noarch 9.4.16-8.ky3_5
jetty-jsp noarch 9.4.16-8.ky3_5
jetty-jspc-maven-plugin noarch 9.4.16-8.ky3_5
jetty-jstl noarch 9.4.16-8.ky3_5
jetty-maven-plugin noarch 9.4.16-8.ky3_5
jetty-nosql noarch 9.4.16-8.ky3_5
jetty-osgi-alpn noarch 9.4.16-8.ky3_5
jetty-osgi-boot noarch 9.4.16-8.ky3_5
jetty-osgi-boot-jsp noarch 9.4.16-8.ky3_5
jetty-osgi-boot-warurl noarch 9.4.16-8.ky3_5
jetty-plus noarch 9.4.16-8.ky3_5
jetty-project noarch 9.4.16-8.ky3_5
jetty-proxy noarch 9.4.16-8.ky3_5
jetty-quickstart noarch 9.4.16-8.ky3_5
jetty-rewrite noarch 9.4.16-8.ky3_5
jetty-security noarch 9.4.16-8.ky3_5
jetty-server noarch 9.4.16-8.ky3_5
jetty-servlet noarch 9.4.16-8.ky3_5
jetty-servlets noarch 9.4.16-8.ky3_5
jetty-spring noarch 9.4.16-8.ky3_5
jetty-start noarch 9.4.16-8.ky3_5
jetty-unixsocket noarch 9.4.16-8.ky3_5
jetty-util noarch 9.4.16-8.ky3_5
jetty-util-ajax noarch 9.4.16-8.ky3_5
jetty-webapp noarch 9.4.16-8.ky3_5
jetty-websocket-api noarch 9.4.16-8.ky3_5
jetty-websocket-client noarch 9.4.16-8.ky3_5
jetty-websocket-common noarch 9.4.16-8.ky3_5
jetty-websocket-server noarch 9.4.16-8.ky3_5
jetty-websocket-servlet noarch 9.4.16-8.ky3_5
jetty-xml noarch 9.4.16-8.ky3_5

5. 修复方法


方法一:下载安装包进行升级安装
1、通过下载链接下载需要升级的升级包保存,如 xxx.rpm
2、通过rpm命令升级,如 rpm -Uvh xxx.rpm

方法二:通过软件源进行升级安装
1、保持能够连接上互联网
2、通过yum命令升级指定的包,如 yum install 包名

6. 下载链接

   

KY3.5.2:

x86_64:

     jetty   

     jetty-alpn-client   

     jetty-alpn-server   

     jetty-annotations   

     jetty-ant   

     jetty-cdi   

     jetty-client   

     jetty-continuation   

     jetty-deploy   

     jetty-fcgi-client   

     jetty-fcgi-server   

     jetty-http   

     jetty-http-spi   

     jetty-http2-client   

     jetty-http2-common   

     jetty-http2-hpack   

     jetty-http2-http-client-transport   

     jetty-http2-server   

     jetty-httpservice   

     jetty-infinispan   

     jetty-io   

     jetty-jaas   

     jetty-jaspi   

     jetty-javadoc   

     jetty-javax-websocket-client-impl   

     jetty-javax-websocket-server-impl   

     jetty-jmx   

     jetty-jndi   

     jetty-jsp   

     jetty-jspc-maven-plugin   

     jetty-jstl   

     jetty-maven-plugin   

     jetty-nosql   

     jetty-osgi-alpn   

     jetty-osgi-boot   

     jetty-osgi-boot-jsp   

     jetty-osgi-boot-warurl   

     jetty-plus   

     jetty-project   

     jetty-proxy   

     jetty-quickstart   

     jetty-rewrite   

     jetty-security   

     jetty-server   

     jetty-servlet   

     jetty-servlets   

     jetty-spring   

     jetty-start   

     jetty-unixsocket   

     jetty-util   

     jetty-util-ajax   

     jetty-webapp   

     jetty-websocket-api   

     jetty-websocket-client   

     jetty-websocket-common   

     jetty-websocket-server   

     jetty-websocket-servlet   

     jetty-xml   

aarch64:

     jetty   

     jetty-alpn-client   

     jetty-alpn-server   

     jetty-annotations   

     jetty-ant   

     jetty-cdi   

     jetty-client   

     jetty-continuation   

     jetty-deploy   

     jetty-fcgi-client   

     jetty-fcgi-server   

     jetty-http   

     jetty-http-spi   

     jetty-http2-client   

     jetty-http2-common   

     jetty-http2-hpack   

     jetty-http2-http-client-transport   

     jetty-http2-server   

     jetty-httpservice   

     jetty-infinispan   

     jetty-io   

     jetty-jaas   

     jetty-jaspi   

     jetty-javadoc   

     jetty-javax-websocket-client-impl   

     jetty-javax-websocket-server-impl   

     jetty-jmx   

     jetty-jndi   

     jetty-jsp   

     jetty-jspc-maven-plugin   

     jetty-jstl   

     jetty-maven-plugin   

     jetty-nosql   

     jetty-osgi-alpn   

     jetty-osgi-boot   

     jetty-osgi-boot-jsp   

     jetty-osgi-boot-warurl   

     jetty-plus   

     jetty-project   

     jetty-proxy   

     jetty-quickstart   

     jetty-rewrite   

     jetty-security   

     jetty-server   

     jetty-servlet   

     jetty-servlets   

     jetty-spring   

     jetty-start   

     jetty-unixsocket   

     jetty-util   

     jetty-util-ajax   

     jetty-webapp   

     jetty-websocket-api   

     jetty-websocket-client   

     jetty-websocket-common   

     jetty-websocket-server   

     jetty-websocket-servlet   

     jetty-xml   

上一篇:KylinSec-SA-2024-4166 下一篇:KylinSec-SA-2024-4190