Skip to content
Fencer Vulns
medium 5.9

CVE-2022-21653 json

Hash collision in typelevel jawn

published 2022-01-05 4 y ago modified 2026-06-17 4 mo ago also GHSA-vc89-hccf-rq55 , EUVD-2022-0702

cvss
5.9
version 3.1, CNA
cisa kev
Not listed
not in CISA's catalog
epss
0.8%
EPSS 0.8% chance of exploitation in 30 days, percentile 57%
public exploits
0
none known

Summary

Jawn is an open source JSON parser. Extenders of the `org.typelevel.jawn.SimpleFacade` and `org.typelevel.jawn.MutableFacade` who don't override `objectContext()` are vulnerable to a hash collision attack which may result in a denial of service. Most applications do not implement these traits directly, but inherit from a library. `jawn-parser-1.3.1` fixes this issue and users are advised to upgrade. For users unable to upgrade override `objectContext()` to use a collision-safe collection.

Patch / fix

  • maven org.typelevel:jawn-parser_2.12 1.3.2
  • maven org.typelevel:jawn-parser_2.13 1.3.2
  • maven org.typelevel:jawn-parser_3 1.3.2
  • typelevel jawn 1.3.2
  • jawn Package Hub 15 SP2 0.14.1-bp152.2.3.1
  • jawn openSUSE Leap 15.3 0.14.1-3.3.1
  • jawn Package Hub 15 SP3, openSUSE Leap 15.3 0.14.1-bp153.2.3.1

opensuse advisories openSUSE-SU-2022:0045-1openSUSE-SU-2022:0106-1openSUSE-SU-2022:0011-1

CISA SSVC

Exploitation
Proof of concept is public
Automatable
no
Technical impact
partial
Assessed
18 mo ago

Exploit prediction

0.82% chance of exploitation in the next 30 days, higher than 57% of all scored CVEs (FIRST EPSS, 2026-11-08).

Exploits and checks

  • github.com https://github.com/typelevel/jawn/pull/390 referenced PoC, tagged "exploit" by a source, unverified

CVSS scores

assigned by version score vector
CNA 3.1 5.9 CVSS:3.1/AV:N/AC:H/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
NVD 2.0 5.0 AV:N/AC:L/Au:N/C:N/I:N/A:P
GitHub 3.1 5.9 CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H

Affected packages

ecosystem package affected fixed in
maven org.typelevel:jawn-parser_0.25
all versions
no fix listed
maven org.typelevel:jawn-parserg
all versions
no fix listed
maven org.typelevel:jawn-parser_0.27
all versions
no fix listed
maven org.typelevel:jawn-parser_2.10
all versions
no fix listed
maven org.typelevel:jawn-parser_2.11
all versions
no fix listed
maven org.typelevel:jawn-parser_2.12
<1.3.2
1.3.2
maven org.typelevel:jawn-parser_2.13
<1.3.2
1.3.2
maven org.typelevel:jawn-parser_2.13.0-M5
all versions
no fix listed
maven org.typelevel:jawn-parser_2.13.0-RC1
all versions
no fix listed
maven org.typelevel:jawn-parser_2.13.0-RC2
all versions
no fix listed
maven org.typelevel:jawn-parser_2.13.0-RC3
all versions
no fix listed
maven org.typelevel:jawn-parser_3
<1.3.2
1.3.2
maven org.typelevel:jawn-parser_3.0.0-M1
all versions
no fix listed
maven org.typelevel:jawn-parser_3.0.0-M2
all versions
no fix listed
maven org.typelevel:jawn-parser_3.0.0-M3
all versions
no fix listed
maven org.typelevel:jawn-parser_3.0.0-RC1
all versions
no fix listed
maven org.typelevel:jawn-parser_3.0.0-RC2
all versions
no fix listed
maven org.typelevel:jawn-parser_3.0.0-RC3
all versions
no fix listed

Affected products

  • typelevel jawn

Classification

Weakness
  • CWE-400 Uncontrolled Resource Consumption
  • CWE-326 Inadequate Encryption Strength

References

Sources

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.