Spring Data: Unbounded property-path cache keyed by externally-supplied path string
CVE-2026-41695GHSA-88fw-v6x4-3f58
What to do
Partial vendor fix. Follow the primary source's mitigation guidance and check back for a fix.
This page has no inventory attached, so it cannot say whether you are affected. A vendor fix is not proof that your deployment is fixed.
Affected packages
Maven org.springframework.data:spring-data-commons
- Affected
- >= 4.0.0, <= 4.0.5>= 3.5.0, <= 3.5.11>= 3.4.0, <= 3.4.13
- Fixed in
- 4.0.6, 3.5.12
Sources
- Open Source Vulnerabilities (OSV.dev), including the GitHub Advisory Database
OSV record GHSA-88fw-v6x4-3f58 lists affected ranges: Maven org.springframework.data:spring-data-commons >=4.0.0 =3.5.0 =3.4.0 <=3.4.13
VerifiedObserved Structured OSV record; GitHub-reviewed advisory.
- GitHub Advisory Database and maintainer security advisories on GitHub
GitHub-reviewed advisory GHSA-88fw-v6x4-3f58 lists affected ranges: Maven org.springframework.data:spring-data-commons >=4.0.0 =3.5.0 =3.4.0 <=3.4.13
VerifiedObserved Structured GitHub Advisory Database record (type=reviewed) from the GitHub REST API.
Severity and exploitation
- Exploitation
- No confirmed exploitation recorded. Patch Next marks exploitation only from CISA KEV.
- CVSS
- 7.5 · CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
- EPSS
- CVE-2026-41695: 0.36% estimated exploitation activity in the next 30 days; percentile 30.28 (FIRST EPSS, 2026-11-03). This is a model estimate, not proof of exploitation or customer exposure.
Source description
As published by the source; long descriptions are shortened.
src/main/java/org/springframework/data/mapping/context/PersistentPropertyPathFactory.java:175 · Unbounded Resource Allocation (Algorithmic DoS) Impact When a consuming module routes user-supplied dot-paths (sort parameters, projection paths, PATCH paths) through MappingContext.getPersistentPropertyPath(String, Class), each distinct string — including invalid ones — is cached forever. A remote attacker can send millions of requests with unique ?sort=aaaa<n values and grow the heap until the service OOMs. Description PersistentPropertyPathFactory.propertyPaths (line 53) is a ConcurrentHashMap<TypeAndPath, PathResolution populated by getPotentiallyCachedPath() (line 174-177) via computeIfAbsent. The key is (TypeInformation, rawPathString). Crucially, unresolvable paths are also cached (as PathResolution.unresolved, line 204) so that the same InvalidPersistentPropertyPath can be re-thrown — meaning every distinct garbage string an attacker sends creates a permanent entry. There is no…
Dates and revisions
- Published by the source
- Last modified by the source
- Source last checked
- Revision 2 · amended ·
Amended from ghsa record GHSA-88fw-v6x4-3f58
- Revision 1 · created ·
Published from osv record GHSA-88fw-v6x4-3f58
Agent brief
Preview the exact text before you copy it. Commands are read-only suggestions; review them before running anything.
# Patch Next advisory brief: CVE-2026-41695 Advisory: Spring Data: Unbounded property-path cache keyed by externally-supplied path string IDs: CVE-2026-41695, GHSA-88fw-v6x4-3f58 Record: https://patchnext.com/advisories/cve-2026-41695 (revision 2, source checked 26 Oct 2026, 16:54 UTC) Inventory: none attached. This brief comes from a public page and does not say whether any deployment is affected. Severity: High (CVSS 7.5) Exploitation: no confirmed exploitation recorded. Patch Next confirms exploitation only from CISA KEV. Vendor response: Partial vendor fix; fixed versions by package: org.springframework.data:spring-data-commons 4.0.6, 3.5.12. A vendor fix does not mean a deployment is fixed. ## Affected components - Maven org.springframework.data:spring-data-commons: affected >= 4.0.0, <= 4.0.5; >= 3.5.0, <= 3.5.11; >= 3.4.0, <= 3.4.13; fixed in 4.0.6, 3.5.12 ## Suggested inspection (read-only) - Maven org.springframework.data:spring-data-commons: check the installed version with your package manager. ## Supported action No complete vendor fix is recorded. Follow the primary source's mitigation guidance and check this record again before closing anything. ## Required regression checks - Run the test suite and a production build. - Exercise the features that depend on org.springframework.data:spring-data-commons. - Repeat the inspection and confirm that only fixed versions remain installed. ## Rollback considerations - Keep the previous lockfile and deployment artifact. Rolling back reinstates the vulnerable version, so apply any documented mitigation while you fix forward. ## Unresolved questions - Which deployments run an affected version? - Exploitation status can change. Check again before lowering the priority. - Mark the work resolved only after the fixed version is verified in production. ## Sources - Verified: https://osv.dev/vulnerability/GHSA-88fw-v6x4-3f58 (OSV record GHSA-88fw-v6x4-3f58 lists affected ranges: Maven org.springframework.data:spring-data-commons >=4.0.0 =3.5.0 =3.4.0 <=3.4.13) - Verified: https://github.com/advisories/GHSA-88fw-v6x4-3f58 (GitHub-reviewed advisory GHSA-88fw-v6x4-3f58 lists affected ranges: Maven org.springframework.data:spring-data-commons >=4.0.0 =3.5.0 =3.4.0 <=3.4.13) Commands are suggestions: review each one before running it.
Loading voting…