Automotive Grade Linux: Buffer Over-read
CVE-2026-37532 is a high-severity buffer over-read vulnerability in Automotive Grade Linux from Linux Foundation, with a CVSS 3.1 base score of 7.1 out of 10. It can be exploited from the same local network by an unauthenticated attacker, without any action from a user. Affected Automotive Grade Linux versions: 17.1.12 and earlier. The record does not name a fixed version, so check the vendor advisory. There is no confirmed exploitation so far. EPSS estimates a 0.23% chance of exploitation within 30 days, which is low compared with other CVEs.
High severity with no evidence of exploitation so far.
What to do
- Check which version of Automotive Grade Linux you run against the affected versions below, and install the vendor's latest release.
Affected products and versions
| Vendor | Product | Affected versions | Fixed in |
|---|---|---|---|
| Linux Foundation | Automotive Grade Linux | 17.1.12 and earlier | Not stated |
Version data comes from NVD's product matching. Confirm against the vendor advisory before deciding you are unaffected.
How the severity score breaks down
- Attack vector
- AdjacentThe attacker must be on the same local network segment.
- Attack complexity
- LowNo special conditions are needed; the attack works reliably.
- Privileges required
- NoneNo account or login is needed.
- User interaction
- NoneNo action by a victim is required.
- Scope
- UnchangedImpact stays within the vulnerable component.
- Confidentiality
- LowSome restricted data can be read.
- Integrity
- NoneNothing can be modified.
- Availability
- HighThe component can be taken down completely.
Vector: CVSS:3.1/AV:A/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:H. Scored by CNA (mitre.org).
Official description
AGL agl-service-can-low-level thru 17.1.12 contains a heap buffer over-read in the isotp-c library. In isotp_continue_receive (receive.c:87-89), the payload_length for a Single Frame is extracted from a 4-bit nibble in the CAN frame data, yielding values 0-15. However, a standard CAN frame is only 8 bytes, with payload starting at data[1] (7 bytes available). When payload_length exceeds the available data (e.g., nibble=15 but only 7 payload bytes exist), memcpy(message.payload, &data[1], payload_length) reads up to 8 bytes past the end of the data buffer.
Source: the CVE record as published by its numbering authority, via NVD and CVE.org.
The underlying weakness: Buffer Over-read
The product reads from a buffer using buffer access mechanisms such as indexes or pointers that reference memory locations after the targeted buffer.
Timeline
- CVE record published.
- CISA published its SSVC assessment (exploitation: none, automatable: no, technical impact: partial).
- Record last changed materially (score, affected products, status or references).
References
Third-party and government advisories
- gist.github.com/sgInnora/8526eedcfd826d05ef1fc45d8f405643Third Party Advisory
Other vulnerabilities in Automotive Grade Linux
- 9.8 Critical severity
- 7.5 High severity
- 7.8 High severity
- 7.8 High severity
Recent Buffer Over-read vulnerabilities
- 7.5 High severity
- 8.2 High severity
- 8.2 High severity
- 7.8 High severity
- 7.5 High severity
- 7.5 High severity
Spotted an error? Tell us.