Race Condition Affecting kernel6.18-libbpf-debuginfo package, versions <1:6.18.15-14.217.amzn2023


Severity

Recommended
high

Based on Amazon Linux security rating.

Threat Intelligence

EPSS
0.02% (7th percentile)

Do your applications use this vulnerable package?

In a few clicks we can analyze your entire application and see what components are vulnerable in your application, and suggest you quick fixes.

Test your applications

Snyk Learn

Learn about Race Condition vulnerabilities in an interactive lesson.

Start learning
  • Snyk IDSNYK-AMZN2023-KERNEL618LIBBPFDEBUGINFO-15874012
  • published2 Apr 2026
  • disclosed18 Mar 2026

Introduced: 18 Mar 2026

CVE-2026-23255  (opens in a new tab)
CWE-362  (opens in a new tab)

How to fix?

Upgrade Amazon-Linux:2023 kernel6.18-libbpf-debuginfo to version 1:6.18.15-14.217.amzn2023 or higher.
This issue was patched in ALAS2023-2026-1514.

NVD Description

Note: Versions mentioned in the description apply only to the upstream kernel6.18-libbpf-debuginfo package and not the kernel6.18-libbpf-debuginfo package as distributed by Amazon-Linux. See How to fix? for Amazon-Linux:2023 relevant fixed versions and status.

In the Linux kernel, the following vulnerability has been resolved:

net: add proper RCU protection to /proc/net/ptype

Yin Fengwei reported an RCU stall in ptype_seq_show() and provided a patch.

Real issue is that ptype_seq_next() and ptype_seq_show() violate RCU rules.

ptype_seq_show() runs under rcu_read_lock(), and reads pt->dev to get device name without any barrier.

At the same time, concurrent writers can remove a packet_type structure (which is correctly freed after an RCU grace period) and clear pt->dev without an RCU grace period.

Define ptype_iter_state to carry a dev pointer along seq_net_private:

struct ptype_iter_state { struct seq_net_private p; struct net_device *dev; // added in this patch };

We need to record the device pointer in ptype_get_idx() and ptype_seq_next() so that ptype_seq_show() is safe against concurrent pt->dev changes.

We also need to add full RCU protection in ptype_seq_next(). (Missing READ_ONCE() when reading list.next values)

Many thanks to Dong Chenchen for providing a repro.

CVSS Base Scores

version 3.1