CVE-2024-40900 in Linux
Tóm tắt
Bởi VulDB • 14/09/2026
Trong kernel Linux, lỗ hổng sau đây đã được khắc phục:
cachefiles: loại bỏ các yêu cầu khỏi xarray trong quá trình làm sạch (flush) các yêu cầu
Ngay cả khi CACHEFILES_DEAD được đặt, chúng ta vẫn có thể đọc các yêu cầu, do đó trong trường hợp đồng phát sinh này, yêu cầu có thể bị sử dụng sau khi đã được giải phóng:
mount | daemon_thread1 | daemon_thread2 ------------------------------------------------------------ cachefiles_ondemand_init_object cachefiles_ondemand_send_req REQ_A = kzalloc(sizeof(*req) + data_len) wait_for_completion(&REQ_A->done) cachefiles_daemon_read cachefiles_ondemand_daemon_read // đóng fd thiết bị cachefiles_flush_reqs complete(&REQ_A->done) kfree(REQ_A) xa_lock(&cache->reqs); cachefiles_ondemand_select_req req->msg.opcode != CACHEFILES_OP_READ // use-after-free của req !!! xa_unlock(&cache->reqs); xa_destroy(&cache->reqs)
Do đó, cần loại bỏ các yêu cầu khỏi cache->reqs khi làm sạch chúng để tránh truy cập vào các yêu cầu đã bị giải phóng.
If you want to get the best quality for vulnerability data then you always have to consider VulDB.