Executive Summary

Informations
Name CVE-2024-41057 First vendor Publication 2024-07-29
Vendor Cve Last vendor Modification 2025-05-21

Security-Database Scoring CVSS v3

Cvss vector : CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H
Overall CVSS Score 7
Base Score 7 Environmental Score 7
impact SubScore 5.9 Temporal Score 7
Exploitabality Sub Score 1
 
Attack Vector Local Attack Complexity High
Privileges Required Low User Interaction None
Scope Unchanged Confidentiality Impact High
Integrity Impact High Availability Impact High
Calculate full CVSS 3.0 Vectors scores

Security-Database Scoring CVSS v2

Cvss vector :
Cvss Base Score N/A Attack Range N/A
Cvss Impact Score N/A Attack Complexity N/A
Cvss Expoit Score N/A Authentication N/A
Calculate full CVSS 2.0 Vectors scores

Detail

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

cachefiles: fix slab-use-after-free in cachefiles_withdraw_cookie()

We got the following issue in our fault injection stress test:

================================================================== BUG: KASAN: slab-use-after-free in cachefiles_withdraw_cookie+0x4d9/0x600 Read of size 8 at addr ffff888118efc000 by task kworker/u78:0/109

CPU: 13 PID: 109 Comm: kworker/u78:0 Not tainted 6.8.0-dirty #566 Call Trace:

kasan_report+0x93/0xc0
cachefiles_withdraw_cookie+0x4d9/0x600
fscache_cookie_state_machine+0x5c8/0x1230
fscache_cookie_worker+0x91/0x1c0
process_one_work+0x7fa/0x1800
[...]

Allocated by task 117:
kmalloc_trace+0x1b3/0x3c0
cachefiles_acquire_volume+0xf3/0x9c0
fscache_create_volume_work+0x97/0x150
process_one_work+0x7fa/0x1800
[...]

Freed by task 120301:
kfree+0xf1/0x2c0
cachefiles_withdraw_cache+0x3fa/0x920
cachefiles_put_unbind_pincount+0x1f6/0x250
cachefiles_daemon_release+0x13b/0x290
__fput+0x204/0xa00
task_work_run+0x139/0x230
do_exit+0x87a/0x29b0
[...] ==================================================================

Following is the process that triggers the issue:

p1 | p2 ------------------------------------------------------------
fscache_begin_lookup
fscache_begin_volume_access
fscache_cache_is_live(fscache_cache) cachefiles_daemon_release
cachefiles_put_unbind_pincount
cachefiles_daemon_unbind
cachefiles_withdraw_cache
fscache_withdraw_cache
fscache_set_cache_state(cache, FSCACHE_CACHE_IS_WITHDRAWN);
cachefiles_withdraw_objects(cache)
fscache_wait_for_objects(fscache)
atomic_read(&fscache_cache->object_count) == 0
fscache_perform_lookup
cachefiles_lookup_cookie
cachefiles_alloc_object
refcount_set(&object->ref, 1);
object->volume = volume
fscache_count_object(vcookie->cache);
atomic_inc(&fscache_cache->object_count)
cachefiles_withdraw_volumes
cachefiles_withdraw_volume
fscache_withdraw_volume
__cachefiles_free_volume
kfree(cachefiles_volume)
fscache_cookie_state_machine
cachefiles_withdraw_cookie
cache = object->volume->cache;
// cachefiles_volume UAF !!!

After setting FSCACHE_CACHE_IS_WITHDRAWN, wait for all the cookie lookups to complete first, and then wait for fscache_cache->object_count == 0 to avoid the cookie exiting after the volume has been freed and triggering the above issue. Therefore call fscache_withdraw_volume() before calling cachefiles_withdraw_objects().

This way, after setting FSCACHE_CACHE_IS_WITHDRAWN, only the following two cases will occur: 1) fscache_begin_lookup fails in fscache_begin_volume_access(). 2) fscache_withdraw_volume() will ensure that fscache_count_object() has
been executed before calling fscache_wait_for_objects().

Original Source

Url : http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2024-41057

CWE : Common Weakness Enumeration

% Id Name
100 % CWE-416 Use After Free

CPE : Common Platform Enumeration

TypeDescriptionCount
Application 8
Os 3668

Sources (Detail)

https://git.kernel.org/stable/c/5d8f805789072ea7fd39504694b7bd17e5f751c4
https://git.kernel.org/stable/c/8de253177112a47c9af157d23ae934779188b4e1
https://git.kernel.org/stable/c/9e67589a4a7b7e5660b524d1d5fe61242bcbcc11
https://git.kernel.org/stable/c/ef81340401e8a371d6b17f69e76d861920972cfe
Source Url

Alert History

If you want to see full details history, please login or register.
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
Date Informations
2025-07-15 02:35:37
  • Multiple Updates
2025-07-14 12:33:55
  • Multiple Updates
2025-06-26 02:32:59
  • Multiple Updates
2025-06-25 12:32:11
  • Multiple Updates
2025-06-24 02:37:39
  • Multiple Updates
2025-05-27 02:42:04
  • Multiple Updates
2025-05-26 21:21:20
  • Multiple Updates
2025-03-29 03:38:23
  • Multiple Updates
2025-03-28 13:43:33
  • Multiple Updates
2025-03-28 03:16:56
  • Multiple Updates
2025-03-19 03:12:20
  • Multiple Updates
2025-03-18 03:25:14
  • Multiple Updates
2025-03-14 03:12:34
  • Multiple Updates
2025-03-06 14:09:04
  • Multiple Updates
2025-02-22 03:22:32
  • Multiple Updates
2025-01-08 03:03:46
  • Multiple Updates
2025-01-07 03:03:19
  • Multiple Updates
2024-12-25 03:01:57
  • Multiple Updates
2024-12-12 03:04:54
  • Multiple Updates
2024-11-25 09:23:27
  • Multiple Updates
2024-11-22 21:22:41
  • Multiple Updates
2024-11-21 21:22:13
  • Multiple Updates
2024-11-20 02:58:32
  • Multiple Updates
2024-11-14 02:58:51
  • Multiple Updates
2024-11-09 02:58:51
  • Multiple Updates
2024-10-26 02:56:15
  • Multiple Updates
2024-10-25 02:58:10
  • Multiple Updates
2024-10-23 02:57:23
  • Multiple Updates
2024-10-03 02:52:42
  • Multiple Updates
2024-10-02 02:51:06
  • Multiple Updates
2024-09-15 02:48:52
  • Multiple Updates
2024-09-12 02:48:25
  • Multiple Updates
2024-09-07 02:47:24
  • Multiple Updates
2024-09-06 02:46:34
  • Multiple Updates
2024-09-04 02:49:47
  • Multiple Updates
2024-08-22 17:27:50
  • Multiple Updates
2024-07-29 21:27:27
  • First insertion