All SnakeYAML CVEs — Complete Vulnerability History

SnakeYAML is the most widely-used YAML parser for Java. CVE-2022-1471 (CISA KEV) allows RCE via unsafe deserialization. It affects Spring Boot 2.x transitively.

Java/Maven Millions weekly downloads 5 CVEs total 1 CRITICAL 🔴 CISA KEV

Full CVE history

🔴 1 CVE on CISA KEV — actively exploited in real attacks

CVEYearSeverityDescriptionFix
CVE-2022-258572022HIGHDoS via stack overflow via recursive YAML anchorsFixed 1.31
CVE-2022-387492022MEDIUMDoS via crafted YAML with many entriesFixed 1.31
CVE-2022-387502022MEDIUMDoS via crafted YAML with tab charactersFixed 1.31
CVE-2022-387512022MEDIUMDoS via crafted YAML with large floatFixed 1.31
CVE-2022-14712022🔴CRITICALRCE via unsafe deserialization — CISA KEVFixed 2.0

Current safe version: 2.2

# Before
"snakeyaml.version>1.33
# After
"snakeyaml.version>2.2

Then run: mvn dependency:resolve

Paste your manifest — see your exact versions against the full CVE history.

Scan with PackageFix →

Free · No signup · No CLI · Runs in your browser

Common questions

Does Spring Boot include SnakeYAML?
Yes — Spring Boot uses SnakeYAML to parse application.yaml configuration files. Spring Boot 2.x includes SnakeYAML 1.x. Spring Boot 3.x includes SnakeYAML 2.0. Upgrading to Spring Boot 3.x resolves this transitively.
Is the fix just to call safe_load instead of load?
In SnakeYAML 2.0, the default constructor no longer allows arbitrary class instantiation. You also need to replace new Yaml().load() with new Yaml(new SafeConstructor(new LoaderOptions())).load() if you can't upgrade immediately.

Related