CVSS 3.1
Вероятност да бъде експлоатирана в следващите 30 дни (EPSS)
Атакува се
Време до експлоатация
Атакува се локално, без особени условия, с обикновен потребителски вход и без действие от потребителя.
- Експлоатация: няма данни за експлоатация
- Атаката не може да се автоматизира
Описание
Оригинално описание
In the Linux kernel, the following vulnerability has been resolved: RDMA/rxe: Fix a use-after-free problem in rxe_mmap rxe_mmap() removes a rxe_mmap_info struct from the pending_mmaps list and releases pending_lock while the struct's kref is still at 1: list_del_init(&ip->pending_mmaps); spin_unlock_bh(&rxe->pending_lock); /* ref == 1, no lock held */ ret = remap_vmalloc_range(vma, ip->obj, 0); /* walks PTEs */ [...] rxe_vma_open(vma); /* kref_get, ref → 2 */ remap_vmalloc_range_partial() walks PTEs without any lock. A concurrent DESTROY_CQ ioctl on another CPU calls: kref_put(&q->ip->ref, rxe_mmap_release) /* ref 1→0 */ vfree(ip->obj) /* clears vmalloc PTEs mid-walk */ kfree(ip) /* frees rxe_mmap_info */ This yields: 1. Kernel crash, vmalloc_to_page() returns NULL when vfree wins the per-PTE race -> vm_insert_page(NULL) → GPF in validate_page_before_insert 2. Page UAF, vmalloc_to_page() reads a stale PTE before vfree clears it. User VMA holds a PTE to a free'd page which might eventually get reallocated later by vmalloc which allows the attacker to get a clean page-level UAF. It is worth noting that even though a page-level UAF is possible given the strong primitive, it is statistically very difficult to achieve given the very short time window (after the last insert_page and before the kref_get). The call trace are as below: Oops: general protection fault, probably for non-canonical address 0xdffffc0000000001: 0000 [#1] SMP KASAN NOPTI KASAN: null-ptr-deref in range [0x0000000000000008-0x000000000000000f] CPU: 0 UID: 1000 PID: 413 Comm: poc Not tainted 7.0.0-rc5-dirty #28 PREEMPT(lazy) Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.15.0-1 04/01/2014 RIP: 0010:validate_page_before_insert+0x32/0x300 Code: e5 41 57 41 56 49 89 fe 41 55 41 54 53 48 89 f3 e8 93 b5 a3 ff 48 8d 7b 08 48 b8 00 00 00 00 00 fc ff df 48 89 fa 48 c1 ea 03 <80> 3c
Засегнати продукти
- Linux Linux: 8700e3e7c4857d28ebaa824509934556da0b3e76 преди b810352d0916796dabe633cdb9adee9863ab4911; 8700e3e7c4857d28ebaa824509934556da0b3e76 преди aef5ea8578f97f2701039600846a8bcf5f21e863; 8700e3e7c4857d28ebaa824509934556da0b3e76 преди 3371f2036e0f970166bbb624e25bba46d32fa18e; 8700e3e7c4857d28ebaa824509934556da0b3e76 преди 665fb7d22a700c66a78db0cf88c6e6a649aba9d0; 8700e3e7c4857d28ebaa824509934556da0b3e76 преди e038d42cc09ca1da9d3568ce8ae062b2bfb3bc0e; 8700e3e7c4857d28ebaa824509934556da0b3e76 преди e59a6aa89e0fcd1d0707832eb4654fd9ae7d31e6; 8700e3e7c4857d28ebaa824509934556da0b3e76 преди 3525987a392536f31a484833af258971af63b24c; 8700e3e7c4857d28ebaa824509934556da0b3e76 преди 35744ab3d03c5fca8c1752f53fc8fc674e14c561
- Linux Linux: 4.8; преди 4.8; 5.10.265 до 5.10.*; 5.15.216 до 5.15.*; 6.1.183 до 6.1.*; 6.6.145 до 6.6.*; 6.12.97 до 6.12.*; 6.18.40 до 6.18.*; 7.1.5 до 7.1.*; от 7.2 нататък
Вид слабост
История
- 5 август 2026 Публикувано
Други уязвимости в Linux Linux
Първоизточници
- https://www.cve.org/CVERecord?id=CVE-2026-64582
- https://nvd.nist.gov/vuln/detail/CVE-2026-64582
- https://git.kernel.org/stable/c/b810352d0916796dabe633cdb9adee9863ab4911
- https://git.kernel.org/stable/c/aef5ea8578f97f2701039600846a8bcf5f21e863
- https://git.kernel.org/stable/c/3371f2036e0f970166bbb624e25bba46d32fa18e
- https://git.kernel.org/stable/c/665fb7d22a700c66a78db0cf88c6e6a649aba9d0
- https://git.kernel.org/stable/c/e038d42cc09ca1da9d3568ce8ae062b2bfb3bc0e
- https://git.kernel.org/stable/c/e59a6aa89e0fcd1d0707832eb4654fd9ae7d31e6
- https://git.kernel.org/stable/c/3525987a392536f31a484833af258971af63b24c
- https://git.kernel.org/stable/c/35744ab3d03c5fca8c1752f53fc8fc674e14c561