HTTP Request Smuggling The advisory has been revoked - it doesn't affect any version of package webrick  (opens in a new tab)


Threat Intelligence

Exploit Maturity
Proof of Concept
EPSS
0.39% (32nd percentile)

Do your applications use this vulnerable package?

In a few clicks we can analyze your entire application and see what components are vulnerable in your application, and suggest you quick fixes.

Test your applications
  • Snyk IDSNYK-RUBY-WEBRICK-8068535
  • published22 Sept 2024
  • disclosed22 Sept 2024
  • creditJulianWu

Introduced: 22 Sep 2024

CVE-2024-47220  (opens in a new tab)
CWE-444  (opens in a new tab)

How to fix?

Upgrade webrick to version 1.8.2 or higher.

Amendment

This was deemed not a vulnerability.

Overview

webrick is a HTTP server toolkit that can be configured as an HTTPS server, a proxy server, and a virtual-host server.

Affected versions of this package are vulnerable to HTTP Request Smuggling when httprequest.rb processes a request with both Content-Length and Transfer-Encoding headers. An attacker can send a GET /admin inside a POST /user to trick the server into treating the second one as a legitimate request, exposing unintended data.

Note: The package maintainers instruct users not to use this package in production and that it is no longer part of the Ruby language although it was in the past. Note: CVE-2024-47220 was rejected by the CVE List.

PoC

POST /user HTTP/1.1
Host: 127.0.0.1:8000
Content-Length: 50
Transfer-Encoding: chunked

0

GET /admin HTTP/1.1
Host: 127.0.0.1:8000