Skip to main content

Boteraser | Website and Server Security Solutions

🛡️ CVE-2024-53095 — kernel

🔴 CVSS 9.8 — Critical ✅ No Known Exploit NVD
9.8
CVSS Score
0 Low4 Medium7 High9 Critical10

Description

smb: client: Fix use-after-free of network namespace.

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

smb: client: Fix use-after-free of network namespace.

Recently, we got a customer report that CIFS triggers oops while

reconnecting to a server. [0]

The workload runs on Kubernetes, and some pods mount CIFS servers

in non-root network namespaces. The problem rarely happened, but

it was always while the pod was dying.

The root cause is wrong reference counting for network namespace.

CIFS uses kernel sockets, which do not hold refcnt of the netns that

the socket belongs to. That means CIFS must ensure the socket is

always freed before its netns; otherwise, use-after-free happens.

The repro steps are roughly:

1. mount CIFS in a non-root netns

2. drop packets from the netns

3. destroy the netns

4. unmount CIFS

We can reproduce the issue quickly with the script [1] below and see

the splat [2] if CONFIG_NET_NS_REFCNT_TRACKER is enabled.

When the socket is TCP, it is hard to guarantee the netns lifetime

without holding refcnt due to async timers.

Let's hold netns refcnt for each socket as done for SMC in commit

9744d2bf1976 ("smc: Fix use-after-free in tcp_write_timer_handler().").

Note that we need to move put_net() from cifs_put_tcp_session() to

clean_demultiplex_info(); otherwise, __sock_create() still could touch a

freed netns while cifsd tries to reconnect from cifs_demultiplex_thread().

Also, maybe_get_net() cannot be put just before __sock_create() because

the code is not under RCU and there is a small chance that the same

address happened to be reallocated to another netns.

[0]:

CIFS: VFS: \\XXXXXXXXXXX has not responded in 15 seconds. Reconnecting...

CIFS: Serverclose failed 4 times, giving up

Unable to handle kernel paging request at virtual address 14de99e461f84a07

Mem abort info:

ESR = 0x0000000096000004

EC = 0x25: DABT (current EL), IL = 32 bits

SET = 0, FnV = 0

EA = 0, S1PTW = 0

FSC = 0x04: level 0 translation fault

Data abort info:

ISV = 0, ISS = 0x00000004

CM = 0, WnR = 0

[14de99e461f84a07] address between user and kernel address ranges

Internal error: Oops: 0000000096000004 [#1] SMP

Modules linked in: cls_bpf sch_ingress nls_utf8 cifs cifs_arc4 cifs_md4 dns_resolver tcp_diag inet_diag veth xt_state xt_connmark nf_conntrack_netlink xt_nat xt_statistic xt_MASQUERADE xt_mark xt_addrtype ipt_REJECT nf_reject_ipv4 nft_chain_nat nf_nat xt_conntrack nf_conntrack nf_defrag_ipv6 nf_defrag_ipv4 xt_comment nft_compat nf_tables nfnetlink overlay nls_ascii nls_cp437 sunrpc vfat fat aes_ce_blk aes_ce_cipher ghash_ce sm4_ce_cipher sm4 sm3_ce sm3 sha3_ce sha512_ce sha512_arm64 sha1_ce ena button sch_fq_codel loop fuse configfs dmi_sysfs sha2_ce sha256_arm64 dm_mirror dm_region_hash dm_log dm_mod dax efivarfs

CPU: 5 PID: 2690970 Comm: cifsd Not tainted 6.1.103-109.184.amzn2023.aarch64 #1

Hardware name: Amazon EC2 r7g.4xlarge/, BIOS 1.0 11/1/2018

pstate: 00400005 (nzcv daif +PAN -UAO -TCO -DIT -SSBS BTYPE=--)

pc : fib_rules_lookup+0x44/0x238

lr : __fib_lookup+0x64/0xbc

sp : ffff8000265db790

x29: ffff8000265db790 x28: 0000000000000000 x27: 000000000000bd01

x26: 0000000000000000 x25: ffff000b4baf8000 x24: ffff00047b5e4580

x23: ffff8000265db7e0 x22: 0000000000000000 x21: ffff00047b5e4500

x20: ffff0010e3f694f8 x19: 14de99e461f849f7 x18: 0000000000000000

x17: 0000000000000000 x16: 0000000000000000 x15: 0000000000000000

x14: 0000000000000000 x13: 0000000000000000 x12: 3f92800abd010002

x11: 0000000000000001 x10: ffff0010e3f69420 x9 : ffff800008a6f294

x8 : 0000000000000000 x7 : 0000000000000006 x6 : 0000000000000000

x5 : 0000000000000001 x4 : ffff001924354280 x3 : ffff8000265db7e0

x2 : 0000000000000000 x1 : ffff0010e3f694f8 x0 : ffff00047b5e4500

Call trace:

fib_rules_lookup+0x44/0x238

__fib_lookup+0x64/0xbc

ip_route_output_key_hash_rcu+0x2c4/0x398

ip_route_output_key_hash+0x60/0x8c

tcp_v4_connect+0x290/0x488

__inet_stream_connect+0x108/0x3d0

inet_stream_connect+0x50/0x78

kernel_connect+0x6c/0xac

generic_ip_conne

---truncated---

How this vulnerability can be exploited

This issue can be reached over the network, attack complexity is low, an attacker needs no privileges on the target. No user interaction is required. The scope is unchanged, so the impact stays within the vulnerable component. Rated impact: confidentiality high, integrity high, availability high.

Affected software

CVE-2024-53095 is recorded against 2 packages.

  • kernel (from 6.7.0 up to 6.11.9)
  • linux-kernel

Timeline and source

Published on 21 November 2024 and last revised on 12 August 2026. No public exploit is currently recorded for this entry. A vendor advisory or fix has been published. Record sourced from NVD.

References

git.kernel.org (Web)
git.kernel.org (Web)
git.kernel.org (Web)
github.com (Advisory)
nvd.nist.gov (Advisory)
git.kernel.org (Package)

CVE-2024-53095 on other distributions

Each distribution ships its own build and its own fixed version. Pick the one you run:

Details

Severity Critical
CVSS Score 9.8
CVSS Vector CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
CWE N/A
Public Exploit ✅ No
Source NVD
Published 2024-11-21
Updated 2026-08-20
Modified 2026-08-12

Affected Packages

Software From version Fixed in
kernel 6.7.0 6.11.9
linux-kernel

Similar Threats

Exploit Protection

Are you running kernel?

CVE-2024-53095 carries CVSS 9.8 Critical rating. BotEraser checks your installation against this and other known CVE records, and blocks IPs associated with exploit activity.

Check My Site For CVE-2024-53095 →

No credit card required  ·  Results in minutes

ⓘ Data Notice: The information presented above has been compiled from publicly available internet sources. Boteraser aggregates this data solely for informational purposes and does not independently classify, evaluate, or endorse any findings about the vulnerabilities listed. The accuracy and completeness of this information is the sole responsibility of the original publishers. Boteraser and its operators accept no liability for any decisions made based on this data.