Security fix · CVE-2026-91776
jackson-databind retains every unknown raw type ID
Published Sep 22, 2026 · catalog updated Sep 23, 2026 · jackson-databind retains every unknown
Last checked Nov 2, 2026. A connected source was read within the last 7 days.
Check if you run it
No confirmed exploitation is on record for CVE-2026-91776. EPSS is 0.49%. Act only if a listed version of jackson-databind retains every unknown is installed.
Gaps on this record
- The stored product name is a package slug. The name on this page is taken from the title (jackson-databind retains every unknown).
- No vendor fix or required action is stored. Compare the linked advisory before you change production.
- Severity
- High7.5
- Known exploitation
- Not in CISA/VulnCheck KEV
- EPSS
- 0.49%
- Remediation
- Version ranges on file
- Affected products
- maven com.fasterxml.jackson.core:jackson-databind · maven tools.jackson.core:jackson-databind
### Summary With , every distinct unknown raw type ID selects the same fallback deserializer but is retained as a separate key in . An attacker who can repeatedly supply new unknown type IDs can grow this process-lifetime cache without a configured bound. ### Details The affected path is . After an unknown name-based type ID resolves to the configured fallback/default implementation, jackson-databind caches the result under the attacker-provided raw . Although all such IDs select the same fallback deserializer, each new string remains a distinct cache key. The behavior is runtime-confirmed in jackson-databind 2.22.1 and 3.2.1. Current 2.22 and 3.2 source branches retained the unbounded map and per-raw-ID cache write when rechecked. The earlier affected floor has not been established, patched versions are: 2.18.11, 2.21.7, 2.22.3, 3.1.7 and 3.2.3. The vulnerable application must enable name-based polymorphism with a or equivalent fallback, accept attacker-influenced type IDs, and reuse a long-lived mapper/type deserializer across requests. Suggested correction: avoid caching each unknown raw ID when every such ID resolves to the same fallback, use a fallback sentinel, or use an explicitly bounded concurrency-safe cache. A regression should contrast many distinct unknown IDs with repetitions of one unknown ID across requests. ### PoC Configure a polymorphic base type with and deserialize inputs containing unknown type names through the same mapper. Inspect after the run. On affected 2.x and 3.x versions, 10,000 distinct unknown raw type IDs produce 10,000 retained cache entries even though every input selects the same fallback deserializer. A matched control that repeats one unknown ID 10,000 times produces one retained entry. This isolates attacker-controlled key cardinality from ordinary request count. No attachment is included initially. I can provide the compact 2.x and 3.x harnesses, artifact hashes, exact commands, and full controls through this private advisory
Are you affected?
Enter the version you run. The result uses only the ranges stored on this record.
The check returns affected, not affected, or incomplete. It does not guess a version that is missing from the record.
- maven com.fasterxml.jackson.core:jackson-databind>= 2.0.0, <= 2.18.10
- maven com.fasterxml.jackson.core:jackson-databind>= 2.19.0, <= 2.21.6
- maven com.fasterxml.jackson.core:jackson-databind>= 2.22.0, <= 2.22.2
- maven tools.jackson.core:jackson-databind>= 3.0.0, <= 3.1.6
- maven tools.jackson.core:jackson-databind>= 3.2.0, <= 3.2.2
How to fix CVE-2026-91776
Upgrade
CVE-2026-91776 lists a fix boundary at 2.18.10. Compare the installed build with that boundary before you change production.
Version check
Affected <= 2.18.10
Advisory
Open the inventory_github record and follow its fix.
Official advisories
What to do
Three questions, each answered from this record only. Confirm the vendor advisory before you patch.
Should you patch?
No confirmed exploitation is on record for CVE-2026-91776. EPSS is 0.49%. Act only if a listed version of jackson-databind retains every unknown is installed.
Which versions are affected?
Compare what you have installed with >= 2.0.0, <= 2.18.10, >= 2.19.0, <= 2.21.6, >= 2.22.0, <= 2.22.2, >= 3.0.0, <= 3.1.6, >= 3.2.0, <= 3.2.2. Compare the installed version with the linked vendor advisory before you change production.
What should an analyst verify?
CWE-400: Uncontrolled Resource Consumption. EPSS 0.49%. There is no CISA KEV listing. No Exploit-DB or Metasploit reference is linked. Use the source links for the original advisory.
Technology hubs
Code
The project this record applies to. Exploit listings stay in References.
Timeline
Detection, updates, and resolution for this record.
Sep 22, 2026 · Maintainer security tabs
Detected
### Summary With , every distinct unknown raw type ID selects the same fallback deserializer but is retained as a separate key in . An attacker who can repeatedly supply new unknown type IDs can grow this process-lifetime cache without a configured bound. ### Details The affected path is . After an unknown name-based type ID resolves to the configured fallback/default implementation, jackson-datab
Sep 23, 2026 · Maintainer security tabs
Updated
### Summary With , every distinct unknown raw type ID selects the same fallback deserializer but is retained as a separate key in . An attacker who can repeatedly supply new unknown type IDs can grow this process-lifetime cache without a configured bound. ### Details The affected path is . After an unknown name-based type ID resolves to the configured fallback/default implementation, jackson-datab
Sources
- Maintainer security tabsVendor advisoryGHSA-wv8q-qhhj-9h54
### Summary With , every distinct unknown raw type ID selects the same fallback deserializer but is retained as a separate key in . An attacker who can repeatedly supply new unknown type IDs can grow this process-lifetime cache without a configured bound. ### Details The affected path is . After an unknown name-based type ID resolves to the configured fallback/default implementation, jackson-datab
github.com
Freshness
Last verified in this catalog Nov 2, 2026. Significant claims (KEV, EPSS, CVSS, affected ranges) come from the source rows above — open the original publisher for the authoritative advisory.
- Maintainer security tabsNov 2, 2026