Vulnerability · Published Jun 29, 2021 · Assigned by GitHub_M
CVE-2021-29479Cached redirect poisoning via X-Forwarded-Host header
High 7.0
In plain English
A high-severity security flaw in ratpack from ratpack. There are no confirmed reports of exploitation so far. The chance it is exploited in the next 30 days is estimated at 0.9% (higher than 59% of all known vulnerabilities). Fixed versions are available - upgrade the affected package.
Official description
Ratpack is a toolkit for creating web applications. In versions prior to 1.9.0, a user supplied `X-Forwarded-Host` header can be used to perform cache poisoning of a cache fronting a Ratpack server if the cache key does not include the `X-Forwarded-Host` header as a cache key. Users are only vulnerable if they do not configure a custom `PublicAddress` instance. For versions prior to 1.9.0, by default, Ratpack utilizes an inferring version of `PublicAddress` which is vulnerable. This can be used to perform redirect cache poisoning where an attacker can force a cached redirect to redirect to their site instead of the intended redirect location. The vulnerability was patched in Ratpack 1.9.0. As a workaround, ensure that `ServerConfigBuilder::publicAddress` correctly configures the server in production.
Affected packages & fixed versions
| Ecosystem | Package | Fixed in | Advisory |
|---|---|---|---|
| Maven | io.ratpack:ratpack-core | 1.9.0 | GHSA-w6rq-6h34-vh7q |
Affected products (as reported)
Weakness: CWE-807 · Vector: CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:H/A:L
References
- https://portswigger.net/web-security/web-cache-poisoning x_refsource_MISC
- https://github.com/ratpack/ratpack/security/advisories/GHSA-w6rq-6h34-vh7q x_refsource_CONFIRM