GHSA-4PM3-F52J-8GGH
Vulnerability from github – Published: 2022-04-22 20:39 – Updated: 2022-04-22 20:39Impact
The GeoServer security mechanism can perform an unchecked JNDI lookup, which in turn can be used to perform class deserialization and result in arbitrary code execution. The same can happen while configuring data stores with data sources located in JNDI, or while setting up the disk quota mechanism. In order to perform any of the above changes, the attack needs to have obtained admin rights and use either the GeoServer GUI, or its REST API.
Patches
The lookups are going to be restricted in GeoServer 2.21.0, 2.20.4, 2.19.6.
Workarounds
Protection can be achieved by making the GUI (geoserver/web), the REST configuration (geoserver/rest) and the embedded GeoWebCache configuration (geoserver/gwc/rest) unreachable from remote hosts, in addition to protecting access to the file system where the GeoServer configuration is stored.
{
"affected": [
{
"package": {
"ecosystem": "Maven",
"name": "org.geoserver:gs-main"
},
"ranges": [
{
"events": [
{
"introduced": "2.20.0"
},
{
"fixed": "2.20.4"
}
],
"type": "ECOSYSTEM"
}
]
},
{
"package": {
"ecosystem": "Maven",
"name": "org.geoserver:gs-main"
},
"ranges": [
{
"events": [
{
"introduced": "0"
},
{
"fixed": "2.19.6"
}
],
"type": "ECOSYSTEM"
}
]
}
],
"aliases": [
"CVE-2022-24847"
],
"database_specific": {
"cwe_ids": [
"CWE-20",
"CWE-917"
],
"github_reviewed": true,
"github_reviewed_at": "2022-04-22T20:39:10Z",
"nvd_published_at": "2022-04-13T22:15:00Z",
"severity": "HIGH"
},
"details": "### Impact\nThe GeoServer security mechanism can perform an unchecked JNDI lookup, which in turn can be used to perform class deserialization and result in arbitrary code execution. The same can happen while configuring data stores with data sources located in JNDI, or while setting up the disk quota mechanism.\nIn order to perform any of the above changes, the attack needs to have obtained admin rights and use either the GeoServer GUI, or its REST API.\n\n### Patches\nThe lookups are going to be restricted in GeoServer 2.21.0, 2.20.4, 2.19.6.\n\n### Workarounds\nProtection can be achieved by making the GUI (``geoserver/web``), the REST configuration (``geoserver/rest``) and the embedded GeoWebCache configuration (``geoserver/gwc/rest``) unreachable from remote hosts, in addition to protecting access to the file system where the GeoServer configuration is stored.\n\n\n",
"id": "GHSA-4pm3-f52j-8ggh",
"modified": "2022-04-22T20:39:10Z",
"published": "2022-04-22T20:39:10Z",
"references": [
{
"type": "WEB",
"url": "https://github.com/geoserver/geoserver/security/advisories/GHSA-4pm3-f52j-8ggh"
},
{
"type": "ADVISORY",
"url": "https://nvd.nist.gov/vuln/detail/CVE-2022-24847"
},
{
"type": "WEB",
"url": "https://github.com/geoserver/geoserver/commit/b94a69943992df999d627b21a4ed056fad4569f8"
},
{
"type": "PACKAGE",
"url": "https://github.com/geoserver/geoserver"
}
],
"schema_version": "1.4.0",
"severity": [
{
"score": "CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:H/A:H",
"type": "CVSS_V3"
}
],
"summary": "Improper Input Validation in GeoServer"
}
Sightings
| Author | Source | Type | Date |
|---|
Nomenclature
- Seen: The vulnerability was mentioned, discussed, or observed by the user.
- Confirmed: The vulnerability has been validated from an analyst's perspective.
- Published Proof of Concept: A public proof of concept is available for this vulnerability.
- Exploited: The vulnerability was observed as exploited by the user who reported the sighting.
- Patched: The vulnerability was observed as successfully patched by the user who reported the sighting.
- Not exploited: The vulnerability was not observed as exploited by the user who reported the sighting.
- Not confirmed: The user expressed doubt about the validity of the vulnerability.
- Not patched: The vulnerability was not observed as successfully patched by the user who reported the sighting.