Hash collision in typelevel jawn
Impact
Extenders of the org.typelevel.jawn.SimpleFacade and org.typelevel.jawn.MutableFacade who don't override objectContext() are vulnerable to a hash collision attack. Most applications do not implement these traits directly, but inherit from a library:
Affected implementations include:
org.http4s::http4s-play-jsonorg.typelevel :: jawn-ast(< 0.8.0)org.typelevel :: jawn-play(discontinued)org.typelevel :: jawn-rojoma(discontinued)org.typelevel :: jawn-spray(discontinued)
Unaffected implementations include:
io.argonaut :: argonaut-jawnio.circe :: circe-parserorg.typelevel :: jawn-ast(>= 0.8.0)org.typelevel :: jawn-json4s(discontinued)org.typelevel :: jawn-argonaut(discontinued)
Patches
jawn-parser-1.3.2 fixes the issue.
Workarounds
Override objectContext() to use a collision-safe collection. See the patch for an example in both SimpleFacade and MutableFacade.
References
Credits
- @kag0, for the report and the patch
For more information
If you have any questions or comments about this advisory:
- Open an issue in typelevel/jawn
- E-mail a maintainer:
Betroffene Software
Klicken Sie auf eine Technologie, um alle zugehörigen Schwachstellen anzuzeigen.
| Plattform | Paket | Anfällige Versionen | Behoben in |
|---|---|---|---|
| Java / Kotlin (Maven) | org.typelevel:jawn-parser_0.25 | alle Versionen | keine Korrektur |
| Java / Kotlin (Maven) | org.typelevel:jawn-parser_0.27 | alle Versionen | keine Korrektur |
| Java / Kotlin (Maven) | org.typelevel:jawn-parser_2.10 | alle Versionen | keine Korrektur |
| Java / Kotlin (Maven) | org.typelevel:jawn-parser_2.11 | alle Versionen | keine Korrektur |
| Java / Kotlin (Maven) | org.typelevel:jawn-parser_2.12 | < 1.3.2 | 1.3.2 |
| Java / Kotlin (Maven) | org.typelevel:jawn-parser_2.13 | < 1.3.2 | 1.3.2 |
| Java / Kotlin (Maven) | org.typelevel:jawn-parser_2.13.0-M5 | alle Versionen | keine Korrektur |
| Java / Kotlin (Maven) | org.typelevel:jawn-parser_2.13.0-RC1 | alle Versionen | keine Korrektur |
| Java / Kotlin (Maven) | org.typelevel:jawn-parser_2.13.0-RC2 | alle Versionen | keine Korrektur |
| Java / Kotlin (Maven) | org.typelevel:jawn-parser_2.13.0-RC3 | alle Versionen | keine Korrektur |
| Java / Kotlin (Maven) | org.typelevel:jawn-parser_3 | < 1.3.2 | 1.3.2 |
| Java / Kotlin (Maven) | org.typelevel:jawn-parser_3.0.0-M1 | alle Versionen | keine Korrektur |
| Java / Kotlin (Maven) | org.typelevel:jawn-parser_3.0.0-M2 | alle Versionen | keine Korrektur |
| Java / Kotlin (Maven) | org.typelevel:jawn-parser_3.0.0-M3 | alle Versionen | keine Korrektur |
| Java / Kotlin (Maven) | org.typelevel:jawn-parser_3.0.0-RC1 | alle Versionen | keine Korrektur |
| Java / Kotlin (Maven) | org.typelevel:jawn-parser_3.0.0-RC2 | alle Versionen | keine Korrektur |
| Java / Kotlin (Maven) | org.typelevel:jawn-parser_3.0.0-RC3 | alle Versionen | keine Korrektur |
| Java / Kotlin (Maven) | org.typelevel:jawn-parserg | alle Versionen | keine Korrektur |
Verweise
- CVSS-Vektor
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H- Schwäche (CWE)
CWE-326, CWE-400- Plattform
- Java / Kotlin (Maven)
- Paket
org.typelevel:jawn-parser_0.25, org.typelevel:jawn-parser_0.27, org.typelevel:jawn-parser_2.10- Veröffentlicht
- 06.01.2022
- Aktualisiert
- 11.10.2026 12:22
Quellen und Lizenzen
OSV / GitHub Advisory Database - GHSA-vc89-hccf-rq55 - CC BY 4.0
Schwachstellenhistorie: org.typelevel:jawn-parser_2.13.0-RC1
Alle veröffentlichten Schwachstellen dieses Pakets (Java / Kotlin (Maven)), neueste zuerst. Zeigt, ob es ein einmaliger Ausrutscher ist oder ein Paket, das man im Auge behalten muss.
Dies ist die einzige bekannte Schwachstelle dieses Pakets.
Erkennen Sie Schwachstellen in Ihrer Anwendung
Mit der DockRay-Integration und aktivierter Softwareinventarisierung prüft DockRay gemeldete Komponentenversionen auf bekannte Schwachstellen und benachrichtigt Sie über bestätigte Treffer. Die Abdeckung hängt von der unterstützten Technologie und den verfügbaren Meldungen ab.