EudorIACyber Intelligence
Operational monitoring Newsletter IT EN
← Back to intelligence
Vulnerability

CVE-2026-16514: gptp_mi_qualify_announce() in subsys/net/l2/ethernet/gptp/gptp_mi.c walks the Path Trace TLV of a received IEEE 802.1AS Announce message, comparing each clock identity against the local one. The loop bound was taken sole

Official source
EudorIA operational summary

What it means

Priority 45/100

NIST National Vulnerability Database ha pubblicato CVE-2026-16514. La rilevanza va confermata rispetto alle tecnologie effettivamente in uso.

Why it matters

Il segnale diventa operativo solo se prodotto, versione o servizio sono presenti nel perimetro.

AudienceITSOCCISO
Information centre

Translation in progress

NIST National Vulnerability Database

The official content is available in the original language. The Italian version will be published once automated checks are complete.

Text acquired from the source

gptp_mi_qualify_announce() in subsys/net/l2/ethernet/gptp/gptp_mi.c walks the Path Trace TLV of a received IEEE 802.1AS Announce message, comparing each clock identity against the local one. The loop bound was taken solely from the attacker-controlled wire field announce->steps_removed (accepted up to 254), never from announce->tlv.len, which is the field that states how many identities the TLV actually carries. Because path_sequence is the flexible member of the wire TLV (struct gptp_path_trace_tlv) and GPTP_ANNOUNCE() yields a raw pointer into the received packet buffer, the memcmp() inside the loop can address memory well past the end of the received frame. The stack's only length validation, GPTP_ANNOUNCE_CHECK_LEN(), requires the received gPTP payload to be exactly 68 + tlv.len bytes — so it does not constrain the loop, it guarantees the data is absent. An unauthenticated attacker on the same Ethernet segment can send a single Announce frame declaring tlv.len = 0 with steps_removed = 254; the frame passes the length check and reception path (net_gptp_recv() → gptp_handle_msg() → gptp_mi_qualify_announce()), which performs no authentication, and the loop then reads 255 entries of 8 bytes each — about 2 KB — beyond the end of the network buffer. The impact is an out-of-bounds read. The bytes read are only used as a memcmp() operand and are never returned to the attacker, so there is no meaningful information disclosure; the practical risk is that the overread crosses a network buffer pool boundary into unmapped or MPU-protected memory and faults the networking RX thread, causing a denial of service. Exposure is limited to builds that enable the opt-in, experimental CONFIG_NET_GPTP (TSN/AVB deployments) and to attackers with layer-2 adjacency, since gPTP frames are se

Source
NIST National Vulnerability Database
Publishing entity
NIST National Vulnerability Database
Entity type
National authority
Area
North America · US
Original language
en · translation in preparation
Publication
18/09/2026 17:17
CVE
CVE-2026-16514
Classification
Medium
Stated country
US
Technical scope

Affected products and versions

Not published
No structured range published.

The official sources queried do not yet expose a list of affected versions. No automatic inference is made.

Sources for the versionsNIST National Vulnerability Database
Open the original source