| Package | Affected versions | Patched versions |
|---|---|---|
| org.typelevel:jawn-parser_2.12 | < 1.7.0 | 1.7.0 |
| org.typelevel:jawn-parser_2.13 | < 1.7.0 | 1.7.0 |
| org.typelevel:jawn-parser_3 | < 1.7.0 | 1.7.0 |
The Jawn parser before 1.6.1 is vulnerable to a denial of service attack via untrusted input.
A remote attacker who can submit JSON to any jawn-backed parse method can exhaust JVM heap and trigger java.lang.OutOfMemoryError. This is treated by Scala as a fatal error and not typically handled by scala.util.Try or cats.effect.IO.
Version 1.6.1 introduces a configurable nesting-depth limit (Parser#maxDepth, default 4096). Inputs deeper than the limit fail with a recoverable ParseException instead of exhausting heap.
Users who require deeper nesting may override maxDepth on a Parser subclass.
EntityLimiter).Running one of these products? Scan your site to see whether it exposes a vulnerable version.
Scan my site free