CVE-2026-37532: Automotive Grade Linux agl-service-can-low-level heap over-read in isotp-c

CVE-2026-37532 · Severity: high · CVSS 7.1 · Published 2026-05-01

A vulnerability exists in the Automotive Grade Linux (AGL) CAN service, which manages communication between a vehicle's internal computer systems and its physical hardware sensors. An attacker with access to the vehicle's internal network could trigger a system crash or potentially read sensitive memory data by sending specially crafted messages. This could lead to a loss of availability for critical vehicle monitoring services or the exposure of internal system information.

Technologies: Linuxfoundation Automotive Grade Linux. Vendors: Automotive Grade Linux, Linuxfoundation.

Quick answers

Is CVE-2026-37532 exploited in the wild?
No. Junglewise Threat Intelligence has no report of CVE-2026-37532 being exploited in the wild.
How severe is CVE-2026-37532?
High severity, with a CVSS score of 7.1, published 1 May 2026.
Which products and versions are affected?
Automotive Grade Linux (AGL) agl-service-can-low-level up to and including 17.1.12.
Is there a fix for CVE-2026-37532?
No fixed version is recorded yet. Check the vendor's advisory in the references below. If you run it, Junglewise drafts a mitigation that fits your setup and applies it once you approve, with senior security engineers behind it.
How is CVE-2026-37532 attacked?
It is attacked from the adjacent network, in a software library.
Am I affected by CVE-2026-37532?
Check whether you run Automotive Grade Linux AGL Service CAN Low Level or Linuxfoundation Automotive Grade Linux. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.

Technical details

A heap buffer over-read exists in the isotp-c library bundled with AGL's agl-service-can-low-level service (versions up to 17.1.12). In the isotp_continue_receive function within receive.c, the payload_length for a Single Frame is extracted from a 4-bit nibble in the CAN frame data, which can represent values up to 15. Because standard CAN frames are only 8 bytes and the payload starts at the second byte, only 7 bytes are actually available. When the nibble specifies a length greater than 7, a subsequent memcpy operation reads up to 8 bytes past the end of the source buffer. This can be triggered by an attacker on the adjacent CAN bus or through the AGL CAN service API, potentially leading to information disclosure or a denial-of-service condition.

Affected products

  • Automotive Grade Linux (AGL) agl-service-can-low-level up to and including 17.1.12

Timeline

  • 2026-04-30: disclosed: Initial disclosure by Innora Security Research
  • 2026-05-01: advisory: CVE published to NVD

References

This page as Markdown. Free to reuse under CC BY 4.0 with a link back.