CVE-2015-8103 Jenkins CLI Deserialization of Untrusted Data vulnerability
Remote attackers can execute arbitrary code on Jenkins servers by sending crafted serialized Java objects via the CLI subsystem.
- Exploited in the wild
- Not known
- Login needed
- Not needed
- Attackable
- Over the internet
- Victim action needed
- Not needed
- Fix
- Available
What is CVE-2015-8103?
CVE-2015-8103 is a critical unsafe deserialization vulnerability in Jenkins Jenkins, published on 25 Nov 2015. An attacker can exploit it over the internet without logging in, with no action from the victim.
Official description
The Jenkins CLI subsystem in Jenkins before 1.638 and LTS before 1.625.2 allows remote attackers to execute arbitrary code via a crafted serialized Java object, related to a problematic webapps/ROOT/WEB-INF/lib/commons-collections-*.jar file and the "Groovy variant in 'ysoserial'".
Weakness: CWE-502
Which versions are affected by CVE-2015-8103?
4 open source packages ship an affected version, including org.jenkins-ci.main:cli. It affects 2 products.
| Package | Affected | Fixed in |
|---|---|---|
org.jenkins-ci.main:cli Maven | All versions | 1.625.2 |
org.jenkins-ci.main:cli Maven | All versions | 1.625.2 |
org.jenkins-ci.main:cli Maven | From 1.626 | 1.638 |
org.jenkins-ci.main:cli Maven | From 1.626 | 1.638 |
Products include Jenkins Jenkins, Redhat Openshift Container Platform.
How do I fix CVE-2015-8103?
Upgrade org.jenkins-ci.main:cli to a fixed version for your release line: 1.625.2 or 1.638.
Upgrade, and only deserialise data from trusted sources or with an allow-list of types. More about Unsafe deserialization.
Is CVE-2015-8103 being exploited?
It is not confirmed as exploited in the wild, but public exploit code for CVE-2015-8103 exists.
Public exploit code: 3 Metasploit modules, 1 Exploit-DB entry and 2 proofs of concept on GitHub.
Other vulnerabilities in Jenkins Jenkins
- CVE-2024-23897 Jenkins Command Line Interface (CLI) Path Traversal
- CVE-2018-1000861 Jenkins Stapler Web Framework Deserialization of Untrusted Data
- CVE-2017-1000353 Jenkins Remote Code Execution
- CVE-2015-5317 Jenkins User Interface (UI) Information Disclosure
- CVE-2021-21690 Multiple vulnerabilities allow bypassing path filtering of agent-to-controller access control in Jenkins
Sources
Also known as GHSA-wfw7-6632-xcv2, MGASA-2016-0137.