CVE-2026-80521

af_unix: Unlink scc_entry in unix_del_edge().

State
Published
Severity
7.8 High
Published
Aug 26, 2026
Updated
Oct 3, 2026
Reserved
Aug 26, 2026

Read the record on cve.org

Description

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

af_unix: Unlink scc_entry in unix_del_edge().

Kyle Zeng reported that GC could free a dead SCC partially.

The scenario is as follows:

1) Create two SCCs:

X -. A <-> B ^--'

2) Run the following concurrently:

2-1) send() sk-B to sk-B from sk-X 2-2) close() both A and B

At 2-1), there is a small window where unix_add_edges() publishes a new edge (B <-> B) to GC but its skb is not queued by skb_queue_tail().

If 2-2) completes before skb_queue_tail() and GC is triggered, it judges A <-> B as dead, but B is not freed because GC cannot collect the not-yet-queued skb holding the B <-> B edge.

X -. A <-> B -. This edge is visible ^--' ^..' but skb is not

This itself is not a problem since the next GC run will judge B as dead as well and free it finally.

X -. A <.> B -. ^--' ^--'

However, X's SCC forces the next GC to call unix_walk_scc_fast(), and it iterates over A through B's scc_entry.

Let's unlink scc_entry before freeing the vertex in unix_del_edge().

Scores

CVSSScoreVectorSource
3.17.8 HighCVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:HLinux

Weaknesses

The record names no weakness.

Affected Products

ProductVersions
LinuxLinux
  • 5dfd283f4651d04dbb70ceb9ae5c4a30eda3c52a to before 2b6c2842692d08e7acaf32d1eb47f95def35f3feAffected
  • de7921631ff323369aa63a4324695ab54ea4047e to before 6fda5c51b8e43a8440f76e65c89d9f95ddb2ef33Affected
  • 4090fa373f0e763c43610853d2774b5979915959 to before 1293fd69a50d188a5788b08ba3741a3e86be1608Affected
  • 4090fa373f0e763c43610853d2774b5979915959 to before fe198b077864feafd4aa4b33b1a5ce26f50195a2Affected
  • 4090fa373f0e763c43610853d2774b5979915959 to before e3702470ced94fad74d71e2232f022d2eb752a6dAffected
  • 4090fa373f0e763c43610853d2774b5979915959 to before 594d905195024b228c962627ae5ae7c17bd582a4Affected
  • 6.1.141 to before 6.1.189Affected
  • 6.6.93 to before 6.6.158Affected
LinuxLinux
  • 6.10Affected
  • before 6.10Not affected
  • 6.1.189 through 6.1.*Not affected
  • 6.6.158 through 6.6.*Not affected
  • 6.12.111 through 6.12.*Not affected
  • 6.18.53 through 6.18.*Not affected
  • 7.1.10 through 7.1.*Not affected
  • 7.2 and laterNot affected

References

Every record here comes from the CVE Program’s CVE List. © 1999–2026 The MITRE Corporation. CVE is a registered trademark of The MITRE Corporation. The records are reproduced under the CVE Program terms of use.