{"id":"CVE-2022-48974","summary":"netfilter: conntrack: fix using __this_cpu_add in preemptible","details":"In the Linux kernel, the following vulnerability has been resolved:\n\nnetfilter: conntrack: fix using __this_cpu_add in preemptible\n\nCurrently in nf_conntrack_hash_check_insert(), when it fails in\nnf_ct_ext_valid_pre/post(), NF_CT_STAT_INC() will be called in the\npreemptible context, a call trace can be triggered:\n\n   BUG: using __this_cpu_add() in preemptible [00000000] code: conntrack/1636\n   caller is nf_conntrack_hash_check_insert+0x45/0x430 [nf_conntrack]\n   Call Trace:\n    \u003cTASK\u003e\n    dump_stack_lvl+0x33/0x46\n    check_preemption_disabled+0xc3/0xf0\n    nf_conntrack_hash_check_insert+0x45/0x430 [nf_conntrack]\n    ctnetlink_create_conntrack+0x3cd/0x4e0 [nf_conntrack_netlink]\n    ctnetlink_new_conntrack+0x1c0/0x450 [nf_conntrack_netlink]\n    nfnetlink_rcv_msg+0x277/0x2f0 [nfnetlink]\n    netlink_rcv_skb+0x50/0x100\n    nfnetlink_rcv+0x65/0x144 [nfnetlink]\n    netlink_unicast+0x1ae/0x290\n    netlink_sendmsg+0x257/0x4f0\n    sock_sendmsg+0x5f/0x70\n\nThis patch is to fix it by changing to use NF_CT_STAT_INC_ATOMIC() for\nnf_ct_ext_valid_pre/post() check in nf_conntrack_hash_check_insert(),\nas well as nf_ct_ext_valid_post() in __nf_conntrack_confirm().\n\nNote that nf_ct_ext_valid_pre() check in __nf_conntrack_confirm() is\nsafe to use NF_CT_STAT_INC(), as it's under local_bh_disable().","modified":"2026-08-12T03:51:37.859046476Z","published":"2024-10-21T20:05:54.438Z","database_specific":{"cna_assigner":"Linux","osv_generated_from":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2022/48xxx/CVE-2022-48974.json"},"references":[{"type":"WEB","url":"https://git.kernel.org/stable/c/9464d0b68f11a9bc768370c3260ec02b3550447b"},{"type":"WEB","url":"https://git.kernel.org/stable/c/d9bf1138a5db419db13bd9fcd3a7178d6bb20f7c"},{"type":"ADVISORY","url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2022/48xxx/CVE-2022-48974.json"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2022-48974"},{"type":"PACKAGE","url":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git"}],"affected":[{"ranges":[{"type":"GIT","repo":"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git","events":[{"introduced":"c56716c69ce1ac320432fb1ea5654196ba24d2f8"},{"fixed":"d9bf1138a5db419db13bd9fcd3a7178d6bb20f7c"},{"fixed":"9464d0b68f11a9bc768370c3260ec02b3550447b"}]}],"database_specific":{"source":"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2022-48974.json"}},{"package":{"name":"Kernel","ecosystem":"Linux"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"5.19.0"},{"fixed":"6.0.13"}]}],"database_specific":{"source":"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2022-48974.json"}}],"schema_version":"1.9.0"}