Impact
A missing safety gate item normalizers of API Platform Core allows the componentsCache arrays to be keyed on a value that is not guaranteed to be safe. As a result, the attribute, relationship, and link structure produced for one request can be reused for a subsequent request belonging to a different user. The security predicates defined with #[ApiProperty(security: ...)] are a field should be exposed; because the cache is across users, a user with lower privileges may see the structure of properties that the security check would otherwise hide. This leads to accidental disclosure of information and matches CWE-524 (Information Leakage) and CWE-639 (Controlled Key).
Affected Systems
API Platform Core, API Platform HAL, and API Platform JSON:API packages are affected. All versions from 2.6.0 up to 4.1.28 inclusive, from 4.2.0 up to 4.2.25 inclusive, and from 4.3.0 up to 4.3.11 inclusive are vulnerable. The vulnerability is fixed in releases 4.1.29, 4.2.26, and 4.3.12.
Risk and Exploitability
The CVSS score of 5.9 indicates moderate risk. The EPSS score is < 1%, indicating a very low but non‑zero likelihood of exploitation. The likely attack vector involves making API requests that trigger the normalizers, with an attacker controlling requests on behalf of two distinct users; based on the description, it is inferred that reusing the componentsCache across users can expose sensitive structure. The vulnerability is not listed in the CISA KEV catalog.
OpenCVE Enrichment
Github GHSA