Vulnerability · Published Jun 29, 2021 · Assigned by GitHub_M
CVE-2021-29485Remote Code Execution Vulnerability in Session Storage
Critical 9.9
In plain English
A critical-severity unsafe deserialization 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 2.0% (higher than 81% 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 malicious attacker can achieve Remote Code Execution (RCE) via a maliciously crafted Java deserialization gadget chain leveraged against the Ratpack session store. If one's application does not use Ratpack's session mechanism, it is not vulnerable. Ratpack 1.9.0 introduces a strict allow-list mechanism that mitigates this vulnerability when used. Two possible workarounds exist. The simplest mitigation for users of earlier versions is to reduce the likelihood of attackers being able to write to the session data store. Alternatively or additionally, the allow-list mechanism could be manually back ported by providing an alternative implementation of `SessionSerializer` that uses an allow-list.
Affected packages & fixed versions
| Ecosystem | Package | Fixed in | Advisory |
|---|---|---|---|
| Maven | io.ratpack:ratpack-core | 1.9.0 | GHSA-hc33-32vw-rpp9 |
Affected products (as reported)
Weakness: CWE-502 · Vector: CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H
References
- https://github.com/ratpack/ratpack/security/advisories/GHSA-hc33-32vw-rpp9 x_refsource_CONFIRM
- https://mvnrepository.com/artifact/io.ratpack/ratpack-core x_refsource_MISC