GHSA-r4hf-r8gj-jgw2 CVE-2024-40625
Coverage REST API Server Side Request Forgery
- Severity
- 5.5 / 10
- Medium · CVSS 3.1
- Exploit chance (EPSS)
- 0.37%
- Chance of exploitation in the next 30 days. Higher than 30.81% of scored vulnerabilities.
- Known exploited
- No
- Not in CISA's catalog
- Weakness
- CWE-918 Server-Side Request Forgery (SSRF)
- Fix
- Available
- 2 packages have a fixed version
Description
Summary
The Coverage rest api /workspaces/{workspaceName}/coveragestores/{storeName}/{method}.{format} allow to upload file with a specified url (with {method} equals 'url') with no restrict.
Details
The Coverage rest api /workspaces/{workspaceName}/coveragestores/{storeName}/{method}.{format} allow to upload file with a specified url (with {method} equals 'url'). But this url has not been check with URL Checks feature.
For example, should add the code below to check fileURL:
URLCheckers.confirm(fileURL)
The vulnerable code was RESTUtils.java
Impact
This vulnerability presents the opportunity for Server Side Request Forgery.
References
Affected versions
Maven
| Package | Vulnerable | Fixed in |
|---|---|---|
| org.geoserver.web:gs-web-app | < 2.26.0 |
2.26.0 |
| org.geoserver:gs-rest | < 2.26.0 |
2.26.0 |
How to fix
Move to the fixed version or later with your package manager, update the lockfile, and run your tests. If the package only arrives through another dependency, upgrade that dependency first. If none of its releases pulls a fixed version yet, force the version with your package manager's override.
org.geoserver.web:gs-web-app Maven → 2.26.0
- maven
<dependency><groupId>org.geoserver.web</groupId><artifactId>gs-web-app</artifactId><version>2.26.0</version></dependency>- gradle
implementation("org.geoserver.web:gs-web-app:2.26.0")
org.geoserver:gs-rest Maven → 2.26.0
- maven
<dependency><groupId>org.geoserver</groupId><artifactId>gs-rest</artifactId><version>2.26.0</version></dependency>- gradle
implementation("org.geoserver:gs-rest:2.26.0")
Severity breakdown
CVSS 3.1 5.5
CVSS:3.1/AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:N/A:L
- Attack vector
- Network
- Attack complexity
- Low
- Privileges required
- High
- User interaction
- None
- Scope
- Unchanged
- Confidentiality
- High
- Integrity
- None
- Availability
- Low
Weakness
CWE-918: Server-Side Request Forgery (SSRF)
The web server receives a URL or similar request from an upstream component and retrieves the contents of this URL, but it does not sufficiently ensure that the request is being sent to the expected destination.
References
Advisories
Packages
Other links
Timeline
- Published
- Last updated by the source
- Latest EPSS score
Related advisories
| Advisory | Severity | Why it's related |
|---|---|---|
| GHSA-fjf5-xgmq-5525 GeoServer is vulnerable to Unauthenticated XML External Entities (XXE) attack via WMS GetMap feature | Critical Known exploited | Also affects org.geoserver.web:gs-web-app |
| GHSA-6jj6-gm7p-fcvv Remote Code Execution (RCE) vulnerability in geoserver | Critical Known exploited | Also affects org.geoserver.web:gs-web-app |
| GHSA-wf6j-gr27-g7ch GeoServer has a Server-Side Template Injection (SSTI) vulnerability in processing FreeMarker templates | High | Also affects org.geoserver.web:gs-web-app |
| GHSA-x4r9-gmw3-hxww GeoServer has a Server-Side Request Forgery (SSRF) Vulnerability in its XML Entity Resolution | High | Also affects org.geoserver.web:gs-web-app |
| GHSA-7qmg-grcp-qf25 GeoServer has an arbitrary file write vulnerability in its Master Password Dump Page | High | Also affects org.geoserver.web:gs-web-app |
| GHSA-w66h-j855-qr72 GeoServer has a Reflected Cross-Site Scripting (XSS) vulnerability in its WMS GetFeatureInfo HTML format | Medium | Also affects org.geoserver.web:gs-web-app |
| GHSA-jj54-8f66-c5pc [XBOW-025-068] XML External Entity (XXE) Processing Vulnerability in GeoServer WFS Service | Critical | Also affects org.geoserver.web:gs-web-app |
| GHSA-gr67-pwcv-76gf GeoServer Infinite Loop Vulnerability in Jiffle process | High | Also affects org.geoserver.web:gs-web-app |
MergeHarbor checks every repository's dependencies against this database, ranks what matters by exploitability and reachability, routes it to the owning team and opens the fix pull request.
Check your repos with MergeHarbor