armnn — security advisory
In Arm ArmNN through 2026-03-27, an integer overflow in TensorShape::GetNumElements() in armnn/Tensor.cpp allows a crafted TFLite model file to bypass buffer size validation and trigger a heap-based buffer over-read during model optimization. The overflow occurs when multiplying tensor dimensions using 32-bit unsigned arithmetic without overflow detection, causing GetNumBytes() to return an understated allocation size. During Optimize()->InferOutputShapes(), the BatchToSpaceNdLayer reads beyond the allocated buffer.
- Products
- armnn
- Affected versions
- 20.08-12, 20.08-13, 23.08-2, 23.08-3, 23.08-4, 23.08-4.1, 23.08-4.1~exp1, 23.08-4.1~exp2, 23.08-5, 23.08-5.1, 23.08-5.2
- Fixed versions
- Not specified
- CVEs
- CVE-2026-42627
- Confirmed fixed CVEs
- Not specified
- Updated in this feed
- 30 Oct 2026, 23:48 UTC · Revision 1
Source evidence
In Arm ArmNN through 2026-03-27, an integer overflow in TensorShape::GetNumElements() in armnn/Tensor.cpp allows a crafted TFLite model file to bypass buffer size validation and trigger a heap-based buffer over-read during model optimization. The overflow occurs when multiplying tensor dimensions using 32-bit unsigned arithmetic without overflow detection, causing GetNumBytes() to return an understated allocation size. During Optimize()->InferOutputShapes(), the BatchToSpaceNdLayer reads beyond the allocated buffer.
osv:DEBIAN-CVE-2026-42627
armnn
Fixed versions: Not specified
armnn
Fixed versions: Not specified
armnn
Fixed versions: Not specified
Complete source record
{
"id": "9bf2196153504f43bb267f3d67f66118308f2e9012f63634ae311311ab65bd77",
"url": "https://osv.dev/vulnerability/DEBIAN-CVE-2026-42627",
"method": "structured",
"payload": {
"kind": "advisory",
"title": "DEBIAN-CVE-2026-42627",
"summary": "In Arm ArmNN through 2026-03-27, an integer overflow in TensorShape::GetNumElements() in armnn/Tensor.cpp allows a crafted TFLite model file to bypass buffer size validation and trigger a heap-based buffer over-read during model optimization. The overflow occurs when multiplying tensor dimensions using 32-bit unsigned arithmetic without overflow detection, causing GetNumBytes() to return an understated allocation size. During Optimize()->InferOutputShapes(), the BatchToSpaceNdLayer reads beyond the allocated buffer.",
"evidence": "osv:DEBIAN-CVE-2026-42627",
"products": [
{
"name": {
"value": "armnn",
"evidence": "/affected/0/package/name"
},
"prerequisites": [],
"fixed_versions": [],
"affected_versions": [
{
"value": "20.08-12",
"evidence": "/affected/0/versions"
},
{
"value": "20.08-13",
"evidence": "/affected/0/versions"
},
{
"value": "23.08-2",
"evidence": "/affected/0/versions"
},
{
"value": "23.08-3",
"evidence": "/affected/0/versions"
},
{
"value": "23.08-4",
"evidence": "/affected/0/versions"
},
{
"value": "23.08-4.1",
"evidence": "/affected/0/versions"
},
{
"value": "23.08-4.1~exp1",
"evidence": "/affected/0/versions"
},
{
"value": "23.08-4.1~exp2",
"evidence": "/affected/0/versions"
},
{
"value": "23.08-5",
"evidence": "/affected/0/versions"
},
{
"value": "23.08-5.1",
"evidence": "/affected/0/versions"
},
{
"value": "23.08-5.2",
"evidence": "/affected/0/versions"
}
]
},
{
"name": {
"value": "armnn",
"evidence": "/affected/1/package/name"
},
"prerequisites": [],
"fixed_versions": [],
"affected_versions": [
{
"value": "23.08-5",
"evidence": "/affected/1/versions"
},
{
"value": "23.08-5.1",
"evidence": "/affected/1/versions"
},
{
"value": "23.08-5.2",
"evidence": "/affected/1/versions"
}
]
},
{
"name": {
"value": "armnn",
"evidence": "/affected/2/package/name"
},
"prerequisites": [],
"fixed_versions": [],
"affected_versions": [
{
"value": "23.08-5",
"evidence": "/affected/2/versions"
},
{
"value": "23.08-5.1",
"evidence": "/affected/2/versions"
},
{
"value": "23.08-5.2",
"evidence": "/affected/2/versions"
}
]
}
],
"severity": "medium",
"structured": {
"id": "DEBIAN-CVE-2026-42627",
"aliases": [
"DEBIAN-CVE-2026-42627"
],
"metrics": [
{
"type": "CVSS_V3",
"score": "CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"
}
],
"affected": [
{
"ranges": [
{
"type": "ECOSYSTEM",
"events": [
{
"introduced": "0"
}
]
}
],
"package": {
"name": "armnn",
"purl": "pkg:deb/debian/armnn?arch=source&distro=bookworm",
"ecosystem": "Debian:12"
},
"versions": [
"20.08-12",
"20.08-13",
"23.08-2",
"23.08-3",
"23.08-4",
"23.08-4.1",
"23.08-4.1~exp1",
"23.08-4.1~exp2",
"23.08-5",
"23.08-5.1",
"23.08-5.2"
],
"database_specific": {
"source": "https://storage.googleapis.com/debian-osv/debian-cve-osv/DEBIAN-CVE-2026-42627.json"
},
"ecosystem_specific": {
"urgency": "unimportant"
}
},
{
"ranges": [
{
"type": "ECOSYSTEM",
"events": [
{
"introduced": "0"
}
]
}
],
"package": {
"name": "armnn",
"purl": "pkg:deb/debian/armnn?arch=source&distro=trixie",
"ecosystem": "Debian:13"
},
"versions": [
"23.08-5",
"23.08-5.1",
"23.08-5.2"
],
"database_specific": {
"source": "https://storage.googleapis.com/debian-osv/debian-cve-osv/DEBIAN-CVE-2026-42627.json"
},
"ecosystem_specific": {
"urgency": "unimportant"
}
},
{
"ranges": [
{
"type": "ECOSYSTEM",
"events": [
{
"introduced": "0"
}
]
}
],
"package": {
"name": "armnn",
"purl": "pkg:deb/debian/armnn?arch=source&distro=forky",
"ecosystem": "Debian:14"
},
"versions": [
"23.08-5",
"23.08-5.1",
"23.08-5.2"
],
"database_specific": {
"source": "https://storage.googleapis.com/debian-osv/debian-cve-osv/DEBIAN-CVE-2026-42627.json"
},
"ecosystem_specific": {
"urgency": "unimportant"
}
}
],
"modified": "2026-10-17T05:00:07.138107866Z",
"provider": "osv",
"upstream": [
"CVE-2026-42627"
],
"references": [
"https://security-tracker.debian.org/tracker/CVE-2026-42627"
]
},
"related_cves": [
{
"value": "CVE-2026-42627",
"evidence": "/upstream"
}
],
"security_relevant": true,
"severity_evidence": "/severity/0/score"
},
"source_id": "core-osv",
"document_id": 351886,
"published_at": "2026-05-22T18:16:22.593+00:00"
}