摘要:
jetty security update
安全等级: Medium
公告ID: KylinSec-SA-2024-4188
发布日期: 2024年12月9日
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)
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 |
软件名称 | 架构 | 版本号 |
---|---|---|
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 |
方法一:下载安装包进行升级安装
1、通过下载链接下载需要升级的升级包保存,如 xxx.rpm
2、通过rpm命令升级,如 rpm -Uvh xxx.rpm
方法二:通过软件源进行升级安装
1、保持能够连接上互联网
2、通过yum命令升级指定的包,如 yum install 包名
jetty-http2-http-client-transport
jetty-javax-websocket-client-impl
jetty-javax-websocket-server-impl
jetty-http2-http-client-transport
jetty-javax-websocket-client-impl