9.8crit
CVE-2017-20189
Clojure classes can be used to craft a serialized object that runs arbitrary code on deserialization
Also known as GHSA-jgxc-8mwq-9xqw
Published 2 y ago · modified 4 mo ago · JSON
CVSS
9.8
v3.1 · CNA
CISA KEV
No
not known exploited
EPSS
1.3%
percentile 71%
Public exploits
0
none known
Summary
In Clojure before 1.9.0, classes can be used to construct a serialized object that executes arbitrary code upon deserialization. This is relevant if a server deserializes untrusted objects.
CISA SSVC assessment
- Exploitation
- Proof of concept public
- Automatable
- yes
- Technical impact
- total
- Assessed
- 17 mo ago
Exploit prediction (EPSS)
1.33% probability of exploitation in the next 30 days, higher than 71% of all scored CVEs.
CVSS scores
| Assigned by | Version | Score | Vector |
|---|---|---|---|
| CISA ADP | 3.1 | 9.8 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H |
| NVD | 3.1 | 9.8 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H |
| CNA | 3.1 | 9.8 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H |
| GitHub | 3.1 | 9.8 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H |
Affected packages
| Ecosystem | Package | Affected | Fixed in |
|---|---|---|---|
| maven | org.clojure:clojure | <1.9.0 | 1.9.0 |
Classification
- Weakness
- CWE-502 Deserialization of Untrusted Data
References
- hackmd.io /%40fe1w0/HyefvRQKp · x_transferred
- clojure.atlassian.net /browse/CLJ-2204 · x_transferred
- github.com /frohoff/ysoserial/pull/68/files · x_transferred
- github.com /clojure/clojure/commit/271674c9b484d798484d134a5ac40a6df15d3ac3 · x_transferred
- security.snyk.io /vuln/SNYK-JAVA-ORGCLOJURE-5740378 · x_transferred
- security.netapp.com /advisory/ntap-20241108-0002/
- nvd.nist.gov /vuln/detail/CVE-2017-20189 · advisory
- github.com /clojure/clojure · package
- groups.google.com /d/msg/clojure/WaL3hHzsevI/7zHU-L7LBQAJ · web
- security.netapp.com /advisory/ntap-20241108-0002 · web
Sources
- CVE List: CVE-2017-20189
- GitHub Advisory: GHSA-jgxc-8mwq-9xqw
- NVD: CVE-2017-20189
vulnwire keeps one entry per vulnerability: the CVE id wins, then GHSA; records that alias each other are merged. Machine-readable: JSON.