CVE-2022-48912 Information
Description
In the Linux kernel the following vulnerability has been resolved:
netfilter: fix use-after-free in __nf_register_net_hook()
We must not dereference @new_hooks after nf_hook_mutex has been released because other threads might have freed our allocated hooks already.
BUG: KASAN: use-after-free in nf_hook_entries_get_hook_ops include/linux/netfilter.h:130 [inline] BUG: KASAN: use-after-free in hooks_validate net/netfilter/core.c:171 [inline] BUG: KASAN: use-after-free in __nf_register_net_hook+0x77a/0x820 net/netfilter/core.c:438 Read of size 2 at addr ffff88801c1a8000 by task syz-executor237/4430
CPU: 1 PID: 4430 Comm: syz-executor237 Not tainted 5.17.0-rc5-syzkaller-00306-g2293be58d6a1 0
Hardware name: Google Google Compute Engine/Google Compute Engine BIOS Google 01/01/2011
Call Trace:
The buggy address belongs to the page: page:ffffea0000706a00 refcount:0 mapcount:0 mapping:0000000000000000 index:0x0 pfn:0x1c1a8 flags: 0xfff00000000000(node=0|zone=1|lastcpupid=0x7ff) raw: 00fff00000000000 ffffea0001c1b108 ffffea000046dd08 0000000000000000 raw: 0000000000000000 0000000000000000 00000000ffffffff 0000000000000000 page dumped because: kasan: bad access detected page_owner tracks the page as freed page last allocated via order 2 migratetype Unmovable gfp_mask 0x52dc0(GFP_KERNEL|__GFP_NOWARN|__GFP_NORETRY|__GFP_COMP|__GFP_ZERO) pid 4430 ts 1061781545818 free_ts 1061791488993 prep_new_page mm/page_alloc.c:2434 [inline] get_page_from_freelist+0xa72/0x2f50 mm/page_alloc.c:4165 __alloc_pages+0x1b2/0x500 mm/page_alloc.c:5389 __alloc_pages_node include/linux/gfp.h:572 [inline] alloc_pages_node include/linux/gfp.h:595 [inline] kmalloc_large_node+0x62/0x130 mm/slub.c:4438 __kmalloc_node+0x35a/0x4a0 mm/slub.
truncated—
Reference
https://git.kernel.org/stable/c/05f7927b25d2635e87267ff6c79db79fb46cf313 https://git.kernel.org/stable/c/bdd8fc1b826e6f23963f5bef3f7431c6188ec954 https://git.kernel.org/stable/c/49c24579cec41e32f13d57b337fd28fb208d4a5b https://git.kernel.org/stable/c/8b0142c4143c1ca297dcf2c0cdd045d65dae2344 https://git.kernel.org/stable/c/bd61f192a339b1095dfd6d56073a5265934c2979 https://git.kernel.org/stable/c/5a8076e98dde17224dd47283b894a8b1dbe1bc72 https://git.kernel.org/stable/c/56763f12b0f02706576a088e85ef856deacc98a0
Share on: