CVE-2023-28118 json
kaml has potential denial of service while parsing input with anchors and aliases
published 2023-03-20 3 y ago modified 2026-06-17 4 mo ago also GHSA-c24f-2j3g-rg48 , EUVD-2023-0975
- cvss
- 7.5
- version 3.1, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 1.0%
- EPSS 1.0% chance of exploitation in 30 days, percentile 62%
- public exploits
- 0
- none known
Summary
kaml provides YAML support for kotlinx.serialization. Prior to version 0.53.0, applications that use kaml to parse untrusted input containing anchors and aliases may consume excessive memory and crash. Version 0.53.0 and later default to refusing to parse YAML documents containing anchors and aliases. There are no known workarounds.
Patch / fix
- maven com.charleskorn.kaml:kaml 0.53.0
- kaml_project kaml 0.53.0
CISA SSVC
- Exploitation
- none
- Automatable
- yes
- Technical impact
- partial
- Assessed
- 20 mo ago
Exploit prediction
0.97% chance of exploitation in the next 30 days, higher than 62% of all scored CVEs (FIRST EPSS, 2026-11-08).
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 3.1 | 7.5 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H |
| NVD | 3.1 | 7.5 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H |
| GitHub | 3.1 | 7.5 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| maven | com.charleskorn.kaml:kaml | <0.53.0 |
0.53.0 |
Affected products
- charleskorn kaml
Classification
- Weakness
-
- CWE-776 Improper Restriction of Recursive Entity References in DTDs
References
-
github.com
/charleskorn/kaml/commit/5f82a2d7e00bfc307afca05d1dc4d7c50593531a
web, patch
-
github.com
/charleskorn/kaml/security/advisories/GHSA-c24f-2j3g-rg48
web, vendor-advisory
-
github.com
/charleskorn/kaml/releases/tag/0.53.0
web, release-notes
-
nvd.nist.gov
/vuln/detail/CVE-2023-28118
advisory
-
github.com
/charleskorn/kaml
package
Sources
- CVE List CVE-2023-28118
- GitHub Advisory GHSA-c24f-2j3g-rg48
- NVD CVE-2023-28118
Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.