8.8

CVE-2024-35955: kprobes: Fix possible use-after-free issue on kprobe registration

Modified
AliasesUBUNTU-CVE-2024-35955DEBIAN-CVE-2024-35955
Published 20-05-2024Last modified 15-10-2026

Vulnerability summary

CVE-2024-35955 is a high (CVSS 8.8) Use After Free vulnerability in debian debian_linux. EPSS estimates a 1.18% chance of exploitation in the next 30 days, higher than 67.6% of scored vulnerabilities.

Priority
Routine

Not severe (CVSS 8.8, network access); no exploitation reported by the 5 checked sources

Source freshness unavailable

How is this decided?
CVSS score
8.8/10
010
High · v3.1 (CVE.org)
EPSS score
1.18%
0%100%
Low · 0.00 pp in 30 days
KEVNot listedNot listed by any tracked catalog.
RansomwareNot flaggedNo ransomware use recorded.
Public exploits0No public exploits recorded

Advisory lineage

Upstream 0 · Downstream 36 · Related 34

Timeline

  1. 20-05-2024
    PublishedVulnerability first disclosed.
  2. 15-10-2026
    Last modifiedVulnerability information updated.

Description

In the Linux kernel, the following vulnerability has been resolved: kprobes: Fix possible use-after-free issue on kprobe registration When unloading a module, its state is changing MODULE_STATE_LIVE -> MODULE_STATE_GOING -> MODULE_STATE_UNFORMED. Each change will take a time. `is_module_text_address()` and `__module_text_address()` works with MODULE_STATE_LIVE and MODULE_STATE_GOING. If we use `is_module_text_address()` and `__module_text_address()` separately, there is a chance that the first one is succeeded but the next one is failed because module->state becomes MODULE_STATE_UNFORMED between those operations. In `check_kprobe_address_safe()`, if the second `__module_text_address()` is failed, that is ignored because it expected a kernel_text address. But it may have failed simply because module->state has been changed to MODULE_STATE_UNFORMED. In this case, arm_kprobe() will try to modify non-exist module text address (use-after-free). To fix this problem, we should not use separated `is_module_text_address()` and `__module_text_address()`, but use only `__module_text_address()` once and do `try_module_get(module)` which is only available with MODULE_STATE_LIVE.

CVSS metrics

4 scores · 4 sources · 1 version

EPSS trend

Probability

1.18%

Chance of exploitation in the next 30 days

Percentile

68%

Versus all other CVEs

30-day change

No change 0.00 pp

From 1.18% on 04-10-2026

04-10-202603-11-2026

Known exploited

Compare KEV catalogs
CISA KEV

Not in the CISA KEV catalog.

ENISA CNW

Not in the ENISA CNW catalog.

CIRCL

Not in the CIRCL catalog.

Public exploits

0 found

No public exploits indexed.

Weaknesses

CWE · root cause

Affected systems

Version check

Known conditions: network-reachable, low-privilege account, no user interaction (CVSS vector). Other conditions: not stated in public data.

Ubuntu121 products
  • linux< 4.15.0-228.240 | < 5.4.0-189.209 | < 5.15.0-116.126 | < 6.8.0-38.38
  • linux-allwinner-5.19All versions (No fix recorded)
  • linux-aws< 4.15.0-1172.185 | < 5.4.0-1128.138 | < 5.15.0-1065.71 | < 6.8.0-1011.12
  • linux-aws-5.0All versions (No fix recorded)
  • linux-aws-5.11All versions (No fix recorded)
Debian2 products
Linux2 products
  • linux≥ 1c836bad43f3e2ff71cc397a6e6ccb4e7bd116f8, < b5808d40093403334d939e2c3c417144d12a6f33 | ≥ 6a119c1a584aa7a2c6216458f1f272bf1bc93a93, < 93eb31e7c3399e326259f2caa17be1e821f5a412 | ≥ 2a49b025c36ae749cee7ccc4b7e456e02539cdc3, < 5062d1f4f07facbdade0f402d9a04a788f52e26d | ≥ a1edb85e60fdab1e14db63ae8af8db3f0d798fb6, < 2df2dd27066cdba8041e46a64362325626bdfb2e | ≥ 28f6c37a2910f565b4f5960df52b2eccae28c891, < 62029bc9ff2c17a4e3a2478d83418ec575413808 | ≥ 28f6c37a2910f565b4f5960df52b2eccae28c891, < d15023fb407337028a654237d8968fefdcf87c2f | ≥ 28f6c37a2910f565b4f5960df52b2eccae28c891, < 36b57c7d2f8b7de224980f1a284432846ad71ca0 | ≥ 28f6c37a2910f565b4f5960df52b2eccae28c891, < 325f3fb551f8cd672dbbfc4cf58b14f9ee3fc9e8 | 4262b6eb057d86c7829168c541654fe0d48fdac8 | 97e813e6a143edf4208e15c72199c495ed80cea5 | 16a544f1e013ba0660612f3fe35393b143b19a84 | ≥ 4.19.256, < 4.19.313 | ≥ 5.4.211, < 5.4.275 | ≥ 5.10.137, < 5.10.216 | ≥ 5.15.61, < 5.15.157 | ≥ 4.14.291, < 4.15 | ≥ 5.18.18, < 5.19 | ≥ 5.19.2, < 5.20 | 6.0
  • linux_kernel≥ 4.14.291, < 4.15 | ≥ 4.19.256, < 4.19.313 | ≥ 5.4.211, < 5.4.275 | ≥ 5.10.137, < 5.10.216 | ≥ 5.15.61, < 5.15.157 | ≥ 5.18.18, < 5.19 | ≥ 5.19.2, < 6.1.87 | ≥ 6.2, < 6.6.28 | ≥ 6.7, < 6.8.7 | 6.9:rc1 | 6.9:rc2 | 6.9:rc3

3 vendors · 125 products

References

38 links
Show all 38 references