Goal Reached Thanks to every supporter — we hit 100%!

Goal: 1000 CNY · Raised: 1359 CNY

100%

CVE-2026-19577— Out-of-bounds read in IPv6 route forwarding when the nexthop neighbor has no link-layer address

Quick assessment

Affected
zephyrproject zephyr
Exploitation
No confirmed in-the-wild exploitation; assess based on exposure
Recommended action
Check the vendor advisory and references for a fixed version. If immediate upgrade is impossible, restrict exposure and increase monitoring.

以下是该漏洞描述信息的中文翻译: 位于 中的 函数在调用 获取下一跳(nexthop)的链路层地址时,未首先检查邻居缓存条目是否确实包含已关联的链路层地址。对于未解析的邻居,其 等于 (0xff)。此时, 中的 函数除了发出 断言外,未执行任何运行时边界检查,从而返回指向 的指针——该地址距离数组末尾约 2.5 KB,而该数组的默认大小由 (值为 8)决定。由于返回的指针永远不为 值,因此后续代码中用于检查 的防护逻辑无法捕获此异常。 该函数通过 中的 被调用,用于处理每一个目的地非接收接口本地地址的单播 IPv6

CVSS 7.1 · High

Possible ATT&CK Techniques 1 AI

T1115 · Clipboard Data

Affected Version Matrix 1

VendorProduct Version RangeStatus
zephyrproject zephyr 1.8.0< 4.5.0 affected
Get alerts for future matching vulnerabilities Log in to subscribe

I. Basic Information for CVE-2026-19577

Vulnerability Information

Have questions about the vulnerability? See if Shenlong's analysis helps!
View Shenlong Deep Dive ↗

Although we use advanced large model technology, its output may still contain inaccurate or outdated information.Shenlong tries to ensure data accuracy, but please verify and judge based on the actual situation.

Vulnerability Title
Out-of-bounds read in IPv6 route forwarding when the nexthop neighbor has no link-layer address
Source: CVE Program / CVE List V5
Vulnerability Description
net_route_ipv6_packet() in subsys/net/ip/route_ipv6.c resolved the nexthop's link-layer address with net_nbr_get_lladdr(nbr->idx) without first checking whether the neighbor cache entry actually had a linked link-layer address. An unresolved neighbor carries idx == NET_NBR_LLADDR_UNKNOWN (0xff), and net_nbr_get_lladdr() in subsys/net/ip/nbr.c performs no runtime bounds check beyond a NET_ASSERT, returning &net_neighbor_lladdr[255] — roughly 2.5 KB past the end of an array whose default size is CONFIG_NET_IPV6_MAX_NEIGHBORS (8). Because the returned pointer is never NULL, the following lladdr == NULL guard does not catch it. The function is reached from ipv6_route_packet() in subsys/net/ip/ipv6.c for every received unicast IPv6 packet whose destination is not a local address on the receiving interface; CONFIG_NET_IPV6_ROUTE is enabled by default whenever the IPv6 neighbor cache is, so no router or forwarding configuration is needed. net_route_ipv6_get_info() returns the packet's destination itself as the nexthop when a neighbor cache entry for it exists, and the cache lookup does not skip INCOMPLETE entries. An unauthenticated attacker on the same link can therefore force the unresolved state — for example by eliciting traffic to a spoofed, non-existent neighbor address so that net_ipv6_send_ns() creates an INCOMPLETE entry, or by sending a Router Advertisement with no source link-layer address option, which creates a persistently unresolved router neighbor — and then send a packet addressed to that neighbor. The result is an out-of-bounds read at a fixed index past the neighbor link-layer address array. On builds with CONFIG_ASSERT enabled the assertion fires and the device panics, giving a repeatable remote denial of service. With assertions disabled, the stale out-of-bounds struct net_linkaddr drives a memcmp() over an attacker-uninfluenced length and, when its len byte passes the NET_LINK_ADDR_MAX_LENGTH check, up to 8 bytes of unrelated static RAM are copied into the outgoing frame's destination link-layer address and transmitted on the link, disclosing them to any listener. There is no out-of-bounds write and the offset is not attacker-controlled, which bounds the impact.
Source: CVE Program / CVE List V5
CVSS Information
CVSS:3.1/AV:A/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:H
Source: CVE Program / CVE List V5
Vulnerability Type
跨界内存读
Source: CVE Program / CVE List V5

Affected Products

Vendor Product Affected Versions CPE Subscribe
zephyrproject zephyr 1.8.0 ~ 4.5.0 -

II. Public POCs for CVE-2026-19577

# POC Description Source Link Shenlong Link
AI-Generated POC Premium

No public POC found.

Login to generate AI POC

III. Intelligence Information for CVE-2026-19577

请登录查看更多情报信息。

Patches & Fixes for CVE-2026-19577 (1)

Vendor Advisories for CVE-2026-19577 (1)

Same Patch Batch · zephyrproject · 2026-10-11 · 11 CVEs total

CVE-2026-19736 7.8 HIGH Out-of-bounds write in the NXP MCUX TRNG entropy driver for non-word-multiple request leng
CVE-2026-19669 7.8 HIGH Unbounded variable-length array in fuel gauge syscall verifiers allows kernel stack overfl
CVE-2026-19935 7.5 HIGH Use-after-free of an L2CAP CoC channel object in the Zephyr Bluetooth host: RX work item i
CVE-2026-19576 6.8 MEDIUM Stack out-of-bounds write in the Goodix GT911 touch controller driver from an unvalidated
CVE-2026-19740 6.5 MEDIUM Bluetooth LE Controller: retained RX node leak and reachable assertion in the PHY Update p
CVE-2026-19738 6.5 MEDIUM Retained RX node leak and reachable assertion in Bluetooth Controller CIS Create procedure
CVE-2026-19739 6.5 MEDIUM Bluetooth LE controller leaks a retained RX node when an unexpected LL Control PDU arrives
CVE-2026-19737 5.5 MEDIUM NULL pointer dereference in the ESP32 I2S driver when triggering an unsupported direction
CVE-2026-19735 4.8 MEDIUM Predictable TCP initial sequence numbers when the RFC 6528 secret key generation fails sil
CVE-2026-18418 3.4 LOW Out-of-bounds read when the zbus proxy agent IPC backend logs a rejected peer frame's chan

IV. Related Vulnerabilities

V. Comments for CVE-2026-19577

No comments yet


Leave a comment