CVE-2026-63126 json
Wire: Unauthenticated decoder crash via 32-bit length integer overflow in ByteArrayProtoReader32 (incomplete fix of CVE-2026-45799)
published 2026-09-16 53 d ago modified 2026-09-30 39 d ago also EUVD-2026-80937 , GHSA-9rm7-3qhh-h2mc
- cvss
- 7.5
- 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
Wire provides gRPC and protocol buffers for Android, Kotlin, Swift, and Java. Prior to 6.4.5 and 7.0.0-alpha04, Wire protobuf readers do not consistently validate attacker-controlled lengths against the current logical message boundary before advancing cursors, pointers, limits, slices, or allocations. In Kotlin, ProtoAdapter.decode(ByteArray) and ProtoAdapter.decode(ByteString) use ByteArrayProtoReader32.internalNextLengthDelimited(), where a positive oversized length can wrap pos + length to a negative limit and escape the existing negative-length check. Related ProtoReader, ReadBuffer.readVarint(), ReadBuffer.verifyAdditional(count:), packed-repeated, nested-message, and ProtoDecoder.decodeSizeDelimited(_:from:) paths can cross logical boundaries, perform pointer arithmetic, reserve capacity, or convert an unrepresentable size before proving the requested bytes exist. An attacker who supplies malformed protobuf bytes can cause unchecked exceptions, traps, out-of-bounds behavior, or excessive allocation, resulting in denial of service without known confidentiality, integrity, or code-execution impact. This issue is fixed in versions 6.4.5 and 7.0.0-alpha04.
Patch / fix
- maven com.squareup.wire:wire-runtime 6.4.5, 7.0.0-alpha04
- com.squareup.wire wire-runtime 6.4.5, 7.0.0-alpha04
- squareup wire 6.4.5, 7.0.0-alpha04
- github.com/square/wire@082d5d8 commit
- github.com/square/wire@25ebcab commit
- github.com/square/wire#3635 pull request
- github.com/square/wire/releases/tag/6.4.5 release
- github.com/square/wire/releases/tag/7.0.0-alpha04 release
CISA SSVC
- Exploitation
- Proof of concept is public
- Automatable
- yes
- Technical impact
- partial
- Assessed
- 53 d 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/square/wire/security/advisories/GHSA-9rm7-3qhh-h2mc referenced PoC, tagged "exploit" by a source, unverified
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 3.1 | 7.5 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H |
| GitHub | 3.1 | 7.5 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| maven | com.squareup.wire:wire-runtime | <6.4.5 >=7.0.0-alpha01, <7.0.0-alpha04 |
6.4.5 7.0.0-alpha04 |
Affected products
- square wire
Classification
- Weakness
-
- CWE-190 Integer Overflow or Wraparound
References
-
github.com
/square/wire/pull/3635
web
-
github.com
/square/wire/commit/082d5d83cec57ef68f1dd7d3e3d1d641c1fb670f
web
-
github.com
/square/wire/commit/25ebcabb9ab7f12d1d77af75ecbc51726fddc015
web
-
github.com
/square/wire/security/advisories/GHSA-9rm7-3qhh-h2mc
exploit, web
-
github.com
/square/wire/releases/tag/6.4.5
web
-
github.com
/square/wire/releases/tag/7.0.0-alpha04
web
-
nvd.nist.gov
/vuln/detail/CVE-2026-63126
advisory
-
github.com
/square/wire
package
Sources
- CVE List CVE-2026-63126
- GitHub Advisory GHSA-9rm7-3qhh-h2mc
- NVD CVE-2026-63126
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.
CPEs and fixed versions use Anchore's correction of NVD's data: Added CPE configurations because not yet analyzed by NVD.