Read the docs
TI-2026-69888 Aliases CVE-2026-104635

Uncontrolled recursion in elixir-protobuf JSON decoding

Priority HIGH 69CWE-674Published · Updated

Key facts

Attack vector
Network
Privileges required
None
User interaction
None
Attack complexity
Low
Attack requirements
Present
Impact type
Denial of service
Confidentiality · integrity · availability
None · None · High
Fix status
Partial Red Hat: 13 without a fix

Attack profile from CVSS 4.0 · CNA. Fix status from CNA and Red Hat. Impact type from CWE-674.

Summary

elixir-protobuf protobuf from 0.8.0 before 0.17.1 has uncontrolled recursion in Protobuf.JSON.Decode when it decodes self-referential or cyclic message types. Embedded messages are decoded recursively without a depth check, so a deeply nested JSON document exhausts the decoding process's memory. An unauthenticated remote attacker can crash the decoder, and the recursion_limit option has no effect on user-defined message types.

Written with Claude Haiku 5.5 from the sources below · 2026-11-06

Description from the CNA

Uncontrolled Recursion vulnerability in Protobuf.JSON.Decode in elixir-protobuf protobuf allows an unauthenticated remote attacker to crash the decoding process via a deeply nested JSON document. Any application that decodes attacker-supplied JSON with Protobuf.JSON.decode/3, Protobuf.JSON.decode!/3, or Protobuf.JSON.from_decoded/3 into a schema that contains a self-referential or cyclic message type is affected. In lib/protobuf/json/decode.ex, the embedded-message clause of decode_singular/3 recurses into internal_from_json_data/3 once per nesting level without incrementing or checking the decoder's depth counter. The depth guard increase_depth_and_maybe_throw/1 covers only the Google.Protobuf.ListValue and Google.Protobuf.Struct clauses, so the recursion_limit option has no effect on user-defined message types. Each nesting level allocates a stack frame and heap objects, and a sufficiently deep document exhausts the memory of the decoding process. Confidentiality and integrity are not affected. This issue affects protobuf: from 0.8.0 before 0.17.1.

Why it matters now

Exploitation Proof of concept CISA SSVC · not in CISA KEV
EPSS 0.00501 43rd percentileScored 2026-11-07
Fix Partial protobuf (elixir-protobuf): 0.17.1Red Hat: 13 without a fix

SSVC decision points

CISA ADP · SSVC 2.0.3

Exploitation
Poc
Automatable
No
Technical impact
Partial

The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.

Affected products

VendorProductAffected versionsFixed inStatusSource
elixir-protobufprotobuf0.8.0 to before 0.17.10.17.1Patch availableCNA
  • protobuf Vendorelixir-protobuf Affected 0.8.0 to before 0.17.1 Fixed in 0.17.1 Patch available CNA

CPE names CNA · 1

CPEVersionsRoleVendor
cpe:2.3:a:elixir-protobuf:protobuf:*:*:*:*:*:*:*:*———
  • cpe:2.3:a:elixir-protobuf:protobuf:*:*:*:*:*:*:*:* Versions — — ·—

Remediation

Upgrade elixir-protobuf protobuf to 0.17.1, which fixes this flaw. Red Hat rates it Moderate and lists no fix for OpenShift Service Mesh 3, Red Hat AMQ Clients, Red Hat Ansible Automation Platform 2 (no fix planned), Red Hat Ceph Storage 9, Red Hat Enterprise Linux 10 and other products.

Written with Claude Haiku 5.5 from the sources below · 2026-11-06

  • Fix · CNA protobuf (elixir-protobuf) Fixed in 0.17.1

Vendor assessments

Red Hat

Red Hat rating: Moderate. Red Hat's page for this CVE →

ProductStatusPlan or fix
OpenShift Service Mesh 3AffectedNo fix yet: Fix deferred
Red Hat AMQ ClientsAffectedNo fix yet: Fix deferred
Red Hat Ansible Automation Platform 2AffectedNo fix planned: Out of support scope
Red Hat Ceph Storage 9AffectedNo fix yet: Fix deferred
Red Hat Enterprise Linux 10AffectedNo fix yet: Fix deferred
Red Hat Enterprise Linux 7AffectedNo fix yet: Fix deferred
Red Hat Enterprise Linux 8AffectedNo fix yet: Fix deferred
Red Hat Enterprise Linux 9AffectedNo fix yet: Fix deferred
Red Hat OpenShift Container Platform 4AffectedNo fix yet: Fix deferred
Red Hat OpenShift Container Platform 5AffectedNo fix yet: Fix deferred
Red Hat OpenStack Platform 16.2AffectedNo fix planned: Out of support scope
Red Hat Satellite 6AffectedNo fix yet: Fix deferred
Red Hat Update Infrastructure 4 for Cloud ProvidersAffectedNo fix planned: Out of support scope
Not affected: 1 product
  • Red Hat Hardened Images

Timeline

  1. 2026-10-09 Threatist record created from CVE-2026-104635
  2. 2026-10-10 Affected versions changed · Red Hat
  3. 2026-10-10 Priority changed: MEDIUM → LOW
  4. 2026-10-16 CISA SSVC decision points changed
  5. 2026-10-16 Priority changed: LOW → HIGH
  6. 2026-11-05 Affected versions changed · Red Hat

References

  • TI-2026-39314 Elixir protobuf: Unbounded recursion depth in embedded-message decoding CVSS 4.0HIGH 8.2

Sources