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

摘要:

rubygem-puma security update

安全等级: Critical

公告ID: KylinSec-SA-2024-6673

发布日期: 2025年8月26日

关联CVE: CVE-2022-24790   CVE-2024-21647   CVE-2024-45614   CVE-2023-40175  

  • 详细介绍

1. 漏洞描述

   

A simple, fast, threaded, and highly concurrent HTTP 1.1 server for Ruby/Rack applications.

Security Fix(es):

Puma is a simple, fast, multi-threaded, parallel HTTP 1.1 server for Ruby/Rack applications. When using Puma behind a proxy that does not properly validate that the incoming HTTP request matches the RFC7230 standard, Puma and the frontend proxy may disagree on where a request starts and ends. This would allow requests to be smuggled via the front-end proxy to Puma. The vulnerability has been fixed in 5.6.4 and 4.3.12. Users are advised to upgrade as soon as possible. Workaround: when deploying a proxy in front of Puma, turning on any and all functionality to make sure that the request matches the RFC7230 standard.(CVE-2022-24790)

Puma is a Ruby/Rack web server built for parallelism. Prior to versions 6.3.1 and 5.6.7, puma exhibited incorrect behavior when parsing chunked transfer encoding bodies and zero-length Content-Length headers in a way that allowed HTTP request smuggling. Severity of this issue is highly dependent on the nature of the web site using puma is. This could be caused by either incorrect parsing of trailing fields in chunked transfer encoding bodies or by parsing of blank/zero-length Content-Length headers. Both issues have been addressed and this vulnerability has been fixed in versions 6.3.1 and 5.6.7. Users are advised to upgrade. There are no known workarounds for this vulnerability.(CVE-2023-40175)

Puma is a web server for Ruby/Rack applications built for parallelism. Prior to version 6.4.2, puma exhibited incorrect behavior when parsing chunked transfer encoding bodies in a way that allowed HTTP request smuggling. Fixed versions limits the size of chunk extensions. Without this limit, an attacker could cause unbounded resource (CPU, network bandwidth) consumption. This vulnerability has been fixed in versions 6.4.2 and 5.6.8.

(CVE-2024-21647)

Puma is a Ruby/Rack web server built for parallelism. In affected versions clients could clobber values set by intermediate proxies (such as X-Forwarded-For) by providing a underscore version of the same header (X-Forwarded_For). Any users relying on proxy set variables is affected. v6.4.3/v5.6.9 now discards any headers using underscores if the non-underscore version also exists. Effectively, allowing the proxy defined headers to always win. Users are advised to upgrade. Nginx has a underscores_in_headers configuration variable to discard these headers at the proxy level as a mitigation. Any users that are implicitly trusting the proxy defined headers for security should immediately cease doing so until upgraded to the fixed versions.(CVE-2024-45614)

2. 影响范围

cve名称 产品 组件 是否受影响
CVE-2022-24790 KY3.5.3 rubygem-puma Fixed
CVE-2024-21647 KY3.5.3 rubygem-puma Fixed
CVE-2024-45614 KY3.5.3 rubygem-puma Fixed
CVE-2023-40175 KY3.5.3 rubygem-puma Fixed

3. 影响组件

    rubygem-puma

4. 修复版本

   

KY3.5.3

软件名称 架构 版本号
rubygem-puma-doc noarch 5.6.5-3.ky3_5
rubygem-puma x86_64 5.6.5-3.ky3_5
rubygem-puma aarch64 5.6.5-3.ky3_5

5. 修复方法


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

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

6. 下载链接

   

KY3.5.3:

x86_64:

     rubygem-puma-doc   

     rubygem-puma   

aarch64:

     rubygem-puma-doc   

     rubygem-puma   

上一篇:KylinSec-SA-2025-2729 下一篇:KylinSec-SA-2025-2743