🔍 CVE-2025-61919

7.5
CVSS Score
HIGH
2025-10-10
2026-10-19 16:10
✅ 완료

🇰🇷 한글 설명

Rack 웹 서버 인터페이스에서 application/x-www-form-urlencoded 형식의 요청 본문을 처리할 때 크기 제한 없이 메모리에 전체를 읽어들이는 취약점이 발견되었습니다. 이로 인해 공격자가 매우 큰 요청 본문을 전송할 경우 서버 메모리가 고갈되어 서비스 거부(DoS) 상태가 발생할 수 있습니다.

💡 쉬운 설명

웹 서버가 너무 큰 데이터를 한꺼번에 메모리에 담으려다 서버가 과부하로 멈춰버리는 문제입니다. 공격자가 엄청나게 큰 데이터를 보내 서버의 메모리를 가득 채워 서비스를 마비시킬 수 있습니다.

🇺🇸 원문 (English)

Rack is a modular Ruby web server interface. Prior to versions 2.2.20, 3.1.18, and 3.2.3, `Rack::Request#POST` reads the entire request body into memory for `Content-Type: application/x-www-form-urlencoded`, calling `rack.input.read(nil)` without enforcing a length or cap. Large request bodies can therefore be buffered completely into process memory before parsing, leading to denial of service (DoS) through memory exhaustion. Users should upgrade to Rack version 2.2.20, 3.1.18, or 3.2.3, anu of which enforces form parameter limits using `query_parser.bytesize_limit`, preventing unbounded reads of `application/x-www-form-urlencoded` bodies. Additionally, enforce strict maximum body size at the proxy or web server layer (e.g., Nginx `client_max_body_size`, Apache `LimitRequestBody`).

📍 영향받는 시스템

Rack versions prior to 2.2.20, 3.1.18, and 3.2.3

⚔️ 공격 벡터

application/x-www-form-urlencoded Content-Type을 가진 대용량 HTTP POST 요청 전송

🛡️ 대응 방법

Rack 버전을 2.2.20, 3.1.18 또는 3.2.3 이상으로 업데이트하고, Nginx(client_max_body_size) 등 프록시 계층에서 요청 본문 크기를 제한하십시오.

🔧 검증 코드

출력된 Rack 버전이 취약한 버전(2.2.20, 3.1.18, 3.2.3 미만)인지 확인합니다.

Shell / Script
gem list rack

📊 CVSS Vector String

CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H

💻 영향받는 소프트웨어

Nginx