jolokia-service-jsr160 Incomplete target JMX Service URL deny list handling for user-controlled input
A flaw was found in Jolokia's JSR-160 proxy functionality where insufficient validation of client-controlled JMX service URLs allows a bypass of the denylist introduced to mitigate CVE-2018-1000130. The proxy accepts a `target.url` value from a Jolokia POST request and passes it to `JMXServiceURL` and `JMXConnectorFactory` for establishing the remote JMX connection. The existing denylist only rejects URLs matching `service:jmx:rmi:///jndi/ldap:.*`, which can be bypassed using alternative valid JMX service URL forms, including `ldaps://` schemes or LDAP URLs with a non-empty JMX host component. These URLs are accepted as valid `JMXServiceURL` objects and can cause the Jolokia agent JVM to perform a JNDI lookup against an attacker-controlled LDAP endpoint. This can result in server-side request forgery (SSRF), forwarding of supplied JMX credentials to the remote endpoint, and potentially remote code execution depending on the classes and configuration available in the target JVM.
- Products
- org.jolokia:jolokia-service-jsr160
- Affected versions
- 2.0.0, 2.0.0-M1, 2.0.0-M2, 2.0.0-M3, 2.0.0-M4, 2.0.1, 2.0.2, 2.0.3, 2.1.0, 2.1.1, 2.1.2, 2.2.0, 2.2.1, 2.2.2, 2.2.3, 2.2.4, 2.2.5, 2.2.6, 2.2.7, 2.2.8, 2.2.9, 2.3.0, 2.4.0, 2.4.1, 2.4.2, 2.4.3, 2.5.0, 2.5.1, 2.6.0, 2.6.1
- Fixed versions
- 2.6.2
- CVEs
- CVE-2026-84218
- Confirmed fixed CVEs
- Not specified
- Updated in this feed
- 28 Oct 2026, 08:47 UTC · Revision 1
Source evidence
jolokia-service-jsr160 Incomplete target JMX Service URL deny list handling for user-controlled input
core-osv · Original sourcePublished 1 Sept 2026, 15:31 UTC
A flaw was found in Jolokia's JSR-160 proxy functionality where insufficient validation of client-controlled JMX service URLs allows a bypass of the denylist introduced to mitigate CVE-2018-1000130. The proxy accepts a `target.url` value from a Jolokia POST request and passes it to `JMXServiceURL` and `JMXConnectorFactory` for establishing the remote JMX connection. The existing denylist only rejects URLs matching `service:jmx:rmi:///jndi/ldap:.*`, which can be bypassed using alternative valid JMX service URL forms, including `ldaps://` schemes or LDAP URLs with a non-empty JMX host component. These URLs are accepted as valid `JMXServiceURL` objects and can cause the Jolokia agent JVM to perform a JNDI lookup against an attacker-controlled LDAP endpoint. This can result in server-side request forgery (SSRF), forwarding of supplied JMX credentials to the remote endpoint, and potentially remote code execution depending on the classes and configuration available in the target JVM.
osv:GHSA-c9ff-59g8-m36q
org.jolokia:jolokia-service-jsr160
Fixed versions: 2.6.2
Complete source record
{
"id": "87c9fc489238cb042580aff5be617ff3333ecb56dfaa2accea47af8edd4451f9",
"url": "https://osv.dev/vulnerability/GHSA-c9ff-59g8-m36q",
"method": "structured",
"payload": {
"kind": "advisory",
"title": "jolokia-service-jsr160 Incomplete target JMX Service URL deny list handling for user-controlled input",
"summary": "A flaw was found in Jolokia's JSR-160 proxy functionality where insufficient validation of client-controlled JMX service URLs allows a bypass of the denylist introduced to mitigate CVE-2018-1000130. The proxy accepts a `target.url` value from a Jolokia POST request and passes it to `JMXServiceURL` and `JMXConnectorFactory` for establishing the remote JMX connection. The existing denylist only rejects URLs matching `service:jmx:rmi:///jndi/ldap:.*`, which can be bypassed using alternative valid JMX service URL forms, including `ldaps://` schemes or LDAP URLs with a non-empty JMX host component. These URLs are accepted as valid `JMXServiceURL` objects and can cause the Jolokia agent JVM to perform a JNDI lookup against an attacker-controlled LDAP endpoint. This can result in server-side request forgery (SSRF), forwarding of supplied JMX credentials to the remote endpoint, and potentially remote code execution depending on the classes and configuration available in the target JVM.",
"evidence": "osv:GHSA-c9ff-59g8-m36q",
"products": [
{
"name": {
"value": "org.jolokia:jolokia-service-jsr160",
"evidence": "/affected/0/package/name"
},
"prerequisites": [],
"fixed_versions": [
{
"value": "2.6.2",
"evidence": "/affected/0/ranges"
}
],
"affected_versions": [
{
"value": "2.0.0",
"evidence": "/affected/0/versions"
},
{
"value": "2.0.0-M1",
"evidence": "/affected/0/versions"
},
{
"value": "2.0.0-M2",
"evidence": "/affected/0/versions"
},
{
"value": "2.0.0-M3",
"evidence": "/affected/0/versions"
},
{
"value": "2.0.0-M4",
"evidence": "/affected/0/versions"
},
{
"value": "2.0.1",
"evidence": "/affected/0/versions"
},
{
"value": "2.0.2",
"evidence": "/affected/0/versions"
},
{
"value": "2.0.3",
"evidence": "/affected/0/versions"
},
{
"value": "2.1.0",
"evidence": "/affected/0/versions"
},
{
"value": "2.1.1",
"evidence": "/affected/0/versions"
},
{
"value": "2.1.2",
"evidence": "/affected/0/versions"
},
{
"value": "2.2.0",
"evidence": "/affected/0/versions"
},
{
"value": "2.2.1",
"evidence": "/affected/0/versions"
},
{
"value": "2.2.2",
"evidence": "/affected/0/versions"
},
{
"value": "2.2.3",
"evidence": "/affected/0/versions"
},
{
"value": "2.2.4",
"evidence": "/affected/0/versions"
},
{
"value": "2.2.5",
"evidence": "/affected/0/versions"
},
{
"value": "2.2.6",
"evidence": "/affected/0/versions"
},
{
"value": "2.2.7",
"evidence": "/affected/0/versions"
},
{
"value": "2.2.8",
"evidence": "/affected/0/versions"
},
{
"value": "2.2.9",
"evidence": "/affected/0/versions"
},
{
"value": "2.3.0",
"evidence": "/affected/0/versions"
},
{
"value": "2.4.0",
"evidence": "/affected/0/versions"
},
{
"value": "2.4.1",
"evidence": "/affected/0/versions"
},
{
"value": "2.4.2",
"evidence": "/affected/0/versions"
},
{
"value": "2.4.3",
"evidence": "/affected/0/versions"
},
{
"value": "2.5.0",
"evidence": "/affected/0/versions"
},
{
"value": "2.5.1",
"evidence": "/affected/0/versions"
},
{
"value": "2.6.0",
"evidence": "/affected/0/versions"
},
{
"value": "2.6.1",
"evidence": "/affected/0/versions"
}
]
}
],
"severity": "high",
"structured": {
"id": "GHSA-c9ff-59g8-m36q",
"aliases": [
"CVE-2026-84218",
"GHSA-c9ff-59g8-m36q"
],
"metrics": [
{
"type": "CVSS_V3",
"score": "CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H"
}
],
"affected": [
{
"ranges": [
{
"type": "ECOSYSTEM",
"events": [
{
"introduced": "0"
},
{
"fixed": "2.6.2"
}
]
}
],
"package": {
"name": "org.jolokia:jolokia-service-jsr160",
"purl": "pkg:maven/org.jolokia/jolokia-service-jsr160",
"ecosystem": "Maven"
},
"versions": [
"2.0.0",
"2.0.0-M1",
"2.0.0-M2",
"2.0.0-M3",
"2.0.0-M4",
"2.0.1",
"2.0.2",
"2.0.3",
"2.1.0",
"2.1.1",
"2.1.2",
"2.2.0",
"2.2.1",
"2.2.2",
"2.2.3",
"2.2.4",
"2.2.5",
"2.2.6",
"2.2.7",
"2.2.8",
"2.2.9",
"2.3.0",
"2.4.0",
"2.4.1",
"2.4.2",
"2.4.3",
"2.5.0",
"2.5.1",
"2.6.0",
"2.6.1"
],
"database_specific": {
"source": "https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2026/09/GHSA-c9ff-59g8-m36q/GHSA-c9ff-59g8-m36q.json"
}
}
],
"modified": "2026-10-07T18:15:10.799001851Z",
"provider": "osv",
"references": [
"https://nvd.nist.gov/vuln/detail/CVE-2026-84218",
"https://github.com/jolokia/jolokia/issues/1049",
"https://access.redhat.com/security/cve/CVE-2026-84218",
"https://bugzilla.redhat.com/show_bug.cgi?id=2526752",
"https://github.com/advisories/GHSA-c9ff-59g8-m36q",
"https://github.com/jolokia/jolokia",
"https://jolokia.org/#jolokia_2_6_2_released_with_security_fixes"
],
"provider_metadata": {
"cwe_ids": [
"CWE-184"
],
"severity": "HIGH",
"github_reviewed": true,
"nvd_published_at": "2026-09-01T14:17:49Z",
"github_reviewed_at": "2026-10-07T18:04:11Z"
}
},
"related_cves": [
{
"value": "CVE-2026-84218",
"evidence": "/aliases"
}
],
"security_relevant": true,
"severity_evidence": "/database_specific/severity"
},
"source_id": "core-osv",
"document_id": 97153,
"published_at": "2026-09-01T15:31:13+00:00"
}