---
id: CVE-2026-74436
title: 'rxrpc: serialize kernel accept preallocation with socket teardown'
summary: |-
  In the Linux kernel, the following vulnerability has been resolved:

  rxrpc: serialize kernel accept preallocation with socket teardown

  rxrpc_kernel_charge_accept() reads rx->backlog without any
  socket/backlog synchronization and passes …
severity: critical
cvss: 9.8
cvssVector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H'
cvssSource: cna
vendor: Linux
product: Linux
affected:
  - >-
    Linux >= 00e907127e6f86d0f9b122d9b4347a8aa09a8b61 <
    d6207326b4ca0ae1041281b6af9df53f8080669a
  - >-
    Linux >= 00e907127e6f86d0f9b122d9b4347a8aa09a8b61 <
    11b429b84c87cb5a0152f14e7d6cb649ed363901
  - >-
    Linux >= 00e907127e6f86d0f9b122d9b4347a8aa09a8b61 <
    c20d983968f239574290cf804a58cde18ad1c559
  - >-
    Linux >= 00e907127e6f86d0f9b122d9b4347a8aa09a8b61 <
    0337cdba0c477f176c0459bed012109453184573
  - >-
    Linux >= 00e907127e6f86d0f9b122d9b4347a8aa09a8b61 <
    dfa0b2bbc5e50119f89c6b5407faa5ed86dfa7c5
  - >-
    Linux >= 00e907127e6f86d0f9b122d9b4347a8aa09a8b61 <
    35a967ff8b24db09ee429c39c5b5e6571639997d
  - >-
    Linux >= 00e907127e6f86d0f9b122d9b4347a8aa09a8b61 <
    1741378a7a83dfd8e53a9196730df709b903cd33
  - >-
    Linux >= 00e907127e6f86d0f9b122d9b4347a8aa09a8b61 <
    dc175389b18c29a5303ee83169ec653adfae3e17
  - Linux 4.9
ssvc:
  exploitation: none
  automatable: 'yes'
  technicalImpact: total
  timestamp: '2026-10-16T18:56:22.698412Z'
published: '2026-08-15'
updated: '2026-10-16'
sourceUpdated: '2026-10-16T19:05:45.032Z'
source: CVEORG
sourceUrl: 'https://www.cve.org/CVERecord?id=CVE-2026-74436'
references:
  - url: 'https://git.kernel.org/stable/c/d6207326b4ca0ae1041281b6af9df53f8080669a'
  - url: 'https://git.kernel.org/stable/c/11b429b84c87cb5a0152f14e7d6cb649ed363901'
  - url: 'https://git.kernel.org/stable/c/c20d983968f239574290cf804a58cde18ad1c559'
  - url: 'https://git.kernel.org/stable/c/0337cdba0c477f176c0459bed012109453184573'
  - url: 'https://git.kernel.org/stable/c/dfa0b2bbc5e50119f89c6b5407faa5ed86dfa7c5'
  - url: 'https://git.kernel.org/stable/c/35a967ff8b24db09ee429c39c5b5e6571639997d'
  - url: 'https://git.kernel.org/stable/c/1741378a7a83dfd8e53a9196730df709b903cd33'
  - url: 'https://git.kernel.org/stable/c/dc175389b18c29a5303ee83169ec653adfae3e17'
tags:
  - cve.org
epss: 0.00399
epssPercentile: 0.32569
ingestedAt: '2026-10-16T19:46:24.365Z'
---

## Overview

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

rxrpc: serialize kernel accept preallocation with socket teardown

rxrpc_kernel_charge_accept() reads rx->backlog without any
socket/backlog synchronization and passes that raw pointer into
rxrpc_service_prealloc_one(). A concurrent rxrpc_discard_prealloc()
sets rx->backlog = NULL and frees the backlog rings, so a kernel
preallocation worker can keep using a freed struct rxrpc_backlog
while updating *_backlog_head/tail and array slots.

Serialize the state check and backlog lookup with the socket lock,
and reject kernel preallocation once teardown has disabled
listening or discarded the service backlog.

## Affected

- `Linux >= 00e907127e6f86d0f9b122d9b4347a8aa09a8b61 < d6207326b4ca0ae1041281b6af9df53f8080669a`
- `Linux >= 00e907127e6f86d0f9b122d9b4347a8aa09a8b61 < 11b429b84c87cb5a0152f14e7d6cb649ed363901`
- `Linux >= 00e907127e6f86d0f9b122d9b4347a8aa09a8b61 < c20d983968f239574290cf804a58cde18ad1c559`
- `Linux >= 00e907127e6f86d0f9b122d9b4347a8aa09a8b61 < 0337cdba0c477f176c0459bed012109453184573`
- `Linux >= 00e907127e6f86d0f9b122d9b4347a8aa09a8b61 < dfa0b2bbc5e50119f89c6b5407faa5ed86dfa7c5`
- `Linux >= 00e907127e6f86d0f9b122d9b4347a8aa09a8b61 < 35a967ff8b24db09ee429c39c5b5e6571639997d`
- `Linux >= 00e907127e6f86d0f9b122d9b4347a8aa09a8b61 < 1741378a7a83dfd8e53a9196730df709b903cd33`
- `Linux >= 00e907127e6f86d0f9b122d9b4347a8aa09a8b61 < dc175389b18c29a5303ee83169ec653adfae3e17`
- `Linux 4.9`

## Remediation

Refer to the linked advisories for vendor-supplied fixes and affected version ranges.
