CVE-2026-61695
📛 CVE Title
Wire Swift runtime: negative LENGTH_DELIMITED length in skipGroup() crashes any protobuf-decoding service
Description
Wire provides gRPC and protocol buffers for Android, Kotlin, Swift, and Java. Prior to 6.4.1 and 7.0.0-alpha04, Wire's Swift runtime ProtoReader.skipGroup(expectedEndTag:unknownFieldsWriter:) accepts a negative length for a LENGTH_DELIMITED field inside an unknown START_GROUP field. ProtoReader.readData() forwards the negative count to ReadBuffer.readData(count:), whose upper-bound-only check permits the value to reach Foundation Data(bytes:count:) and trigger an unrecoverable process trap instead of a catchable ProtoDecoder.Error. Any Swift process decoding untrusted protobuf bytes can be crashed without authentication, user interaction, or knowledge of the target schema. This issue is fixed in versions 6.4.1 and 7.0.0-alpha04.
Overview
- State
- PUBLISHED
- Assigner (CNA)
- GitHub_M
- CVSS severity
- HIGH
- CVSS score
- 7.5 / 10
- CVSS vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H- Effective score
- 7.5 / 10 HIGH source: CNA overview
- CWE(s)
-
CWE-129 - Reserved
- 2026-07-10
- Published
- 2026-09-23 18:44 UTC
- Last updated
- 2026-09-23 18:44 UTC
- Source
- https://raw.githubusercontent.com/CVEProject/cvelistV5/main/cves/2026/61xxx/CVE-2026-61695.json
- Linked Threat
- CVE-2026-61695 — Wire Swift runtime: negative LENGTH_DELIMITED length in skipGroup() crashes any protobuf-decoding service
NVD triage scoring NVD CVE 2.0
Layer NVD adds on top of the CNA's CVE record — published / last-modified timestamps, exploitability / impact subscores, and the FIRST.org EPSS probability that this CVE will be exploited in the wild in the next 30 days.
- NVD published
- 2026-09-23 19:17:32 UTC
- NVD last modified
- 2026-09-23 19:17:32 UTC
- NVD CVSS v3.1
- 7.5 / 10 HIGH source: security-advisories@github.com
- NVD CVSS vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H- Exploitability subscore
- 3.9 / 10
- Impact subscore
- 3.6 / 10
NVD / KEV / EPSS data refreshed 2026-09-24 04:38 UTC. Re-run the 🛰 Backfill from NVD button above to refresh.
European Union Vulnerability Database ENISA EUVD
ENISA's official EU repository for curated vulnerability intelligence. Carries a separate identifier (EUVD-YYYY-NNNN) and frequently exposes an earlier-published description + CVSS than NVD does.
- EUVD ID
-
EUVD-2026-85559
EUVD enrichment is queued; refresh the page in a few seconds.
Affected products (1)
| Vendor | Product | Versions | Platforms |
|---|---|---|---|
| square | wire |
< 6.4.1 (affected),
>= 7.0.0-alpha01, < 7.0.0-alpha04 (affected)
|
— |
Vendor references (6)
References embedded in the original CVE record by the assigning CNA.
- https://github.com/square/wire/security/advisories/GHSA-86wm-r4c5-2rc9 x_refsource_CONFIRM
- https://github.com/square/wire/pull/3616 x_refsource_MISC
- https://github.com/square/wire/commit/24043b6b3a5e5974a978f2745b76d50b31407c1c x_refsource_MISC
- https://github.com/square/wire/commit/81ff7f24a6795d9a8be2e03f272b2d979a5d2c7e x_refsource_MISC
- https://github.com/square/wire/releases/tag/6.4.1 x_refsource_MISC
- https://github.com/square/wire/releases/tag/7.0.0-alpha04 x_refsource_MISC
Web references (0)
DuckDuckGo results ranked by threat-intel / vendor advisory domains. Generated by the 🔎 Find references (web) button above — same flow as the Remediations search.
No web references attached yet.
NVD-tagged references (6)
Reference list NVD curates from the CNA record, vendor advisories, and third-party reports. The tag chips below are NVD's analyst-assigned categories.
- https://github.com/square/wire/commit/24043b6b3a5e5974a978f2745b76d50b31407c1c security-advisories@github.com
- https://github.com/square/wire/commit/81ff7f24a6795d9a8be2e03f272b2d979a5d2c7e security-advisories@github.com
- https://github.com/square/wire/pull/3616 security-advisories@github.com
- https://github.com/square/wire/releases/tag/6.4.1 security-advisories@github.com
- https://github.com/square/wire/releases/tag/7.0.0-alpha04 security-advisories@github.com
- https://github.com/square/wire/security/advisories/GHSA-86wm-r4c5-2rc9 security-advisories@github.com
AI Forensic Analysis
Only Available for Registered Users. Sign in to view.
Raw JSON
The full cvelistV5 record. Download as CVE-2026-61695.json.
{
"containers": {
"cna": {
"affected": [
{
"product": "wire",
"vendor": "square",
"versions": [
{
"status": "affected",
"version": "< 6.4.1"
},
{
"status": "affected",
"version": ">= 7.0.0-alpha01, < 7.0.0-alpha04"
}
]
}
],
"descriptions": [
{
"lang": "en",
"value": "Wire provides gRPC and protocol buffers for Android, Kotlin, Swift, and Java. Prior to 6.4.1 and 7.0.0-alpha04, Wire's Swift runtime ProtoReader.skipGroup(expectedEndTag:unknownFieldsWriter:) accepts a negative length for a LENGTH_DELIMITED field inside an unknown START_GROUP field. ProtoReader.readData() forwards the negative count to ReadBuffer.readData(count:), whose upper-bound-only check permits the value to reach Foundation Data(bytes:count:) and trigger an unrecoverable process trap instead of a catchable ProtoDecoder.Error. Any Swift process decoding untrusted protobuf bytes can be crashed without authentication, user interaction, or knowledge of the target schema. This issue is fixed in versions 6.4.1 and 7.0.0-alpha04."
}
],
"metrics": [
{
"cvssV3_1": {
"attackComplexity": "LOW",
"attackVector": "NETWORK",
"availabilityImpact": "HIGH",
"baseScore": 7.5,
"baseSeverity": "HIGH",
"confidentialityImpact": "NONE",
"integrityImpact": "NONE",
"privilegesRequired": "NONE",
"scope": "UNCHANGED",
"userInteraction": "NONE",
"vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H",
"version": "3.1"
}
}
],
"problemTypes": [
{
"descriptions": [
{
"cweId": "CWE-129",
"description": "CWE-129: Improper Validation of Array Index",
"lang": "en",
"type": "CWE"
}
]
}
],
"providerMetadata": {
"dateUpdated": "2026-09-23T18:44:11.336Z",
"orgId": "a0819718-46f1-4df5-94e2-005712e83aaa",
"shortName": "GitHub_M"
},
"references": [
{
"name": "https://github.com/square/wire/security/advisories/GHSA-86wm-r4c5-2rc9",
"tags": [
"x_refsource_CONFIRM"
],
"url": "https://github.com/square/wire/security/advisories/GHSA-86wm-r4c5-2rc9"
},
{
"name": "https://github.com/square/wire/pull/3616",
"tags": [
"x_refsource_MISC"
],
"url": "https://github.com/square/wire/pull/3616"
},
{
"name": "https://github.com/square/wire/commit/24043b6b3a5e5974a978f2745b76d50b31407c1c",
"tags": [
"x_refsource_MISC"
],
"url": "https://github.com/square/wire/commit/24043b6b3a5e5974a978f2745b76d50b31407c1c"
},
{
"name": "https://github.com/square/wire/commit/81ff7f24a6795d9a8be2e03f272b2d979a5d2c7e",
"tags": [
"x_refsource_MISC"
],
"url": "https://github.com/square/wire/commit/81ff7f24a6795d9a8be2e03f272b2d979a5d2c7e"
},
{
"name": "https://github.com/square/wire/releases/tag/6.4.1",
"tags": [
"x_refsource_MISC"
],
"url": "https://github.com/square/wire/releases/tag/6.4.1"
},
{
"name": "https://github.com/square/wire/releases/tag/7.0.0-alpha04",
"tags": [
"x_refsource_MISC"
],
"url": "https://github.com/square/wire/releases/tag/7.0.0-alpha04"
}
],
"source": {
"advisory": "GHSA-86wm-r4c5-2rc9",
"discovery": "UNKNOWN"
},
"title": "Wire Swift runtime: negative LENGTH_DELIMITED length in skipGroup() crashes any protobuf-decoding service"
}
},
"cveMetadata": {
"assignerOrgId": "a0819718-46f1-4df5-94e2-005712e83aaa",
"assignerShortName": "GitHub_M",
"cveId": "CVE-2026-61695",
"datePublished": "2026-09-23T18:44:11.336Z",
"dateReserved": "2026-07-10T18:36:58.850Z",
"dateUpdated": "2026-09-23T18:44:11.336Z",
"state": "PUBLISHED"
},
"dataType": "CVE_RECORD",
"dataVersion": "5.2"
}