CVE-2026-53373 in Linux
Tóm tắt
Bởi VulDB • 19/07/2026
Trong kernel Linux, lỗ hổng sau đây đã được khắc phục:
mm/vma: không cố gắng unmap một VMA nếu mmap_prepare() được gọi từ mmap()
Chức năng của hook mmap_prepare bao gồm khả năng invoke mmap_prepare() từ hook mmap() của các driver 'stacked' hiện có, tức là những driver có khả năng gọi các hook mmap của các driver/hệ thống tệp khác (ví dụ: overlayfs, shm).
Là một phần của chức năng hành động mmap_prepare, chúng ta xử lý lỗi bằng cách unmap VMA nếu xảy ra. Điều này hoạt động trong trường hợp mmap_prepare thông thường vì chúng ta invoke hành động này ở thời điểm cuối cùng, khi VMA đã được thiết lập trong cây maple.
Tuy nhiên, hook mmap() truyền một con trỏ VMA chưa được thiết lập hoàn toàn cho caller (đây là lý do đằng sau công việc của mmap_prepare()), và nó bị detached.
Do đó, cố gắng unmap một VMA ở trạng thái này sẽ gây ra vấn đề, với triệu chứng rõ ràng nhất là cảnh báo trong vma_mark_detached(), vì VMA đã bị detached.
Điều này cũng không cần thiết - handler mmap() sẽ dọn dẹp VMA khi có lỗi.
Vì vậy, để khắc phục sự cố này, patch này truyền tải xem liệu một hành động mmap đang được hoàn thành thông qua lớp tương thích hay trực tiếp hay không.
Nếu là trường hợp đầu tiên (thông qua lớp tương thích), chúng ta không cố gắng cleanup VMA; nếu là trường hợp thứ hai (trực tiếp), thì chúng ta sẽ làm vậy.
Patch này cũng cập nhật các bài kiểm tra VMA trong userland để phản ánh sự thay đổi.
If you want to get the best quality for vulnerability data then you always have to consider VulDB.