Vulnerability · Published Jul 12, 2024 · Assigned by Linux
CVE-2024-40957seg6: fix parameter passing when calling NF_HOOK() in End.DX4 and End.DX6 behaviors
High 7.5
In plain English
A high-severity security flaw in Linux from Linux. There are no confirmed reports of exploitation so far. The chance it is exploited in the next 30 days is estimated at 0.7% (higher than 54% of all known vulnerabilities). Fixed versions are available - upgrade the affected package.
Official description
In the Linux kernel, the following vulnerability has been resolved: seg6: fix parameter passing when calling NF_HOOK() in End.DX4 and End.DX6 behaviors input_action_end_dx4() and input_action_end_dx6() are called NF_HOOK() for PREROUTING hook, in PREROUTING hook, we should passing a valid indev, and a NULL outdev to NF_HOOK(), otherwise may trigger a NULL pointer dereference, as below: [74830.647293] BUG: kernel NULL pointer dereference, address: 0000000000000090 [74830.655633] #PF: supervisor read access in kernel mode [74830.657888] #PF: error_code(0x0000) - not-present page [74830.659500] PGD 0 P4D 0 [74830.660450] Oops: 0000 [#1] PREEMPT SMP PTI ... [74830.664953] Hardware name: Red Hat KVM, BIOS 0.5.1 01/01/2011 [74830.666569] RIP: 0010:rpfilter_mt+0x44/0x15e [ipt_rpfilter] ... [74830.689725] Call Trace: [74830.690402] <IRQ> [74830.690953] ? show_trace_log_lvl+0x1c4/0x2df [74830.692020] ? show_trace_log_lvl+0x1c4/0x2df [74830.693095] ? ipt_do_table+0x286/0x710 [ip_tables] [74830.694275] ? __die_body.cold+0x8/0xd [74830.695205] ? page_fault_oops+0xac/0x140 [74830.696244] ? exc_page_fault+0x62/0x150 [74830.697225] ? asm_exc_page_fault+0x22/0x30 [74830.698344] ? rpfilter_mt+0x44/0x15e [ipt_rpfilter] [74830.699540] ipt_do_table+0x286/0x710 [ip_tables] [74830.700758] ? ip6_route_input+0x19d/0x240 [74830.701752] nf_hook_slow+0x3f/0xb0 [74830.702678] input_action_end_dx4+0x19b/0x1e0 [74830.703735] ? input_action_end_t+0xe0/0xe0 [74830.704734] seg6_local_input_core+0x2d/0x60 [74830.705782] lwtunnel_input+0x5b/0xb0 [74830.706690] __netif_receive_skb_one_core+0x63/0xa0 [74830.707825] process_backlog+0x99/0x140 [74830.709538] __napi_poll+0x2c/0x160 [74830.710673] net_rx_action+0x296/0x350 [74830.711860] __do_softirq+0xcb/0x2ac [74830.713049] do_softirq+0x63/0x90 input_action_end_dx4() passing a NULL indev to NF_HOOK(), and finally trigger a NULL dereference in rpfilter_mt()->rpfilter_is_loopback(): static bool rpfilter_is_loopback(const struct sk_buff *skb, const struct net_device *in) { // in is NULL return skb->pkt_type == PACKET_LOOPBACK || in->flags & IFF_LOOPBACK; }
Affected packages & fixed versions
| Ecosystem | Package | Fixed in | Advisory |
|---|---|---|---|
| AlmaLinux:9 | bpftool | 7.3.0-427.33.1.el9_4 | ALSA-2024:5928 |
| AlmaLinux:9 | kernel | 5.14.0-427.33.1.el9_4 | ALSA-2024:5928 |
| AlmaLinux:9 | kernel-64k | 5.14.0-427.33.1.el9_4 | ALSA-2024:5928 |
| AlmaLinux:9 | kernel-64k-core | 5.14.0-427.33.1.el9_4 | ALSA-2024:5928 |
| AlmaLinux:9 | kernel-64k-debug | 5.14.0-427.33.1.el9_4 | ALSA-2024:5928 |
| AlmaLinux:9 | kernel-64k-debug-core | 5.14.0-427.33.1.el9_4 | ALSA-2024:5928 |
| AlmaLinux:9 | kernel-64k-debug-devel | 5.14.0-427.33.1.el9_4 | ALSA-2024:5928 |
| AlmaLinux:9 | kernel-64k-debug-devel-matched | 5.14.0-427.33.1.el9_4 | ALSA-2024:5928 |
| AlmaLinux:9 | kernel-64k-debug-modules | 5.14.0-427.33.1.el9_4 | ALSA-2024:5928 |
| AlmaLinux:9 | kernel-64k-debug-modules-core | 5.14.0-427.33.1.el9_4 | ALSA-2024:5928 |
| AlmaLinux:9 | kernel-64k-debug-modules-extra | 5.14.0-427.33.1.el9_4 | ALSA-2024:5928 |
| AlmaLinux:9 | kernel-64k-devel | 5.14.0-427.33.1.el9_4 | ALSA-2024:5928 |
| AlmaLinux:9 | kernel-64k-devel-matched | 5.14.0-427.33.1.el9_4 | ALSA-2024:5928 |
| AlmaLinux:9 | kernel-64k-modules | 5.14.0-427.33.1.el9_4 | ALSA-2024:5928 |
| AlmaLinux:9 | kernel-64k-modules-core | 5.14.0-427.33.1.el9_4 | ALSA-2024:5928 |
| AlmaLinux:9 | kernel-64k-modules-extra | 5.14.0-427.33.1.el9_4 | ALSA-2024:5928 |
| AlmaLinux:9 | kernel-abi-stablelists | 5.14.0-427.33.1.el9_4 | ALSA-2024:5928 |
| AlmaLinux:9 | kernel-core | 5.14.0-427.33.1.el9_4 | ALSA-2024:5928 |
| AlmaLinux:9 | kernel-cross-headers | 5.14.0-427.33.1.el9_4 | ALSA-2024:5928 |
| AlmaLinux:9 | kernel-debug | 5.14.0-427.33.1.el9_4 | ALSA-2024:5928 |
| AlmaLinux:9 | kernel-debug-core | 5.14.0-427.33.1.el9_4 | ALSA-2024:5928 |
| AlmaLinux:9 | kernel-debug-devel | 5.14.0-427.33.1.el9_4 | ALSA-2024:5928 |
| AlmaLinux:9 | kernel-debug-devel-matched | 5.14.0-427.33.1.el9_4 | ALSA-2024:5928 |
| AlmaLinux:9 | kernel-debug-modules | 5.14.0-427.33.1.el9_4 | ALSA-2024:5928 |
| AlmaLinux:9 | kernel-debug-modules-core | 5.14.0-427.33.1.el9_4 | ALSA-2024:5928 |
| AlmaLinux:9 | kernel-debug-modules-extra | 5.14.0-427.33.1.el9_4 | ALSA-2024:5928 |
| AlmaLinux:9 | kernel-debug-uki-virt | 5.14.0-427.33.1.el9_4 | ALSA-2024:5928 |
| AlmaLinux:9 | kernel-devel | 5.14.0-427.33.1.el9_4 | ALSA-2024:5928 |
| AlmaLinux:9 | kernel-devel-matched | 5.14.0-427.33.1.el9_4 | ALSA-2024:5928 |
| AlmaLinux:9 | kernel-doc | 5.14.0-427.33.1.el9_4 | ALSA-2024:5928 |
| AlmaLinux:9 | kernel-headers | 5.14.0-427.33.1.el9_4 | ALSA-2024:5928 |
| AlmaLinux:9 | kernel-modules | 5.14.0-427.33.1.el9_4 | ALSA-2024:5928 |
| AlmaLinux:9 | kernel-modules-core | 5.14.0-427.33.1.el9_4 | ALSA-2024:5928 |
| AlmaLinux:9 | kernel-modules-extra | 5.14.0-427.33.1.el9_4 | ALSA-2024:5928 |
| AlmaLinux:9 | kernel-rt | 5.14.0-427.33.1.el9_4 | ALSA-2024:5928 |
| AlmaLinux:9 | kernel-rt-core | 5.14.0-427.33.1.el9_4 | ALSA-2024:5928 |
| AlmaLinux:9 | kernel-rt-debug | 5.14.0-427.33.1.el9_4 | ALSA-2024:5928 |
| AlmaLinux:9 | kernel-rt-debug-core | 5.14.0-427.33.1.el9_4 | ALSA-2024:5928 |
| AlmaLinux:9 | kernel-rt-debug-devel | 5.14.0-427.33.1.el9_4 | ALSA-2024:5928 |
| AlmaLinux:9 | kernel-rt-debug-modules | 5.14.0-427.33.1.el9_4 | ALSA-2024:5928 |
| AlmaLinux:9 | kernel-rt-debug-modules-core | 5.14.0-427.33.1.el9_4 | ALSA-2024:5928 |
| AlmaLinux:9 | kernel-rt-debug-modules-extra | 5.14.0-427.33.1.el9_4 | ALSA-2024:5928 |
| AlmaLinux:9 | kernel-rt-devel | 5.14.0-427.33.1.el9_4 | ALSA-2024:5928 |
| AlmaLinux:9 | kernel-rt-modules | 5.14.0-427.33.1.el9_4 | ALSA-2024:5928 |
| AlmaLinux:9 | kernel-rt-modules-core | 5.14.0-427.33.1.el9_4 | ALSA-2024:5928 |
| AlmaLinux:9 | kernel-rt-modules-extra | 5.14.0-427.33.1.el9_4 | ALSA-2024:5928 |
| AlmaLinux:9 | kernel-tools | 5.14.0-427.33.1.el9_4 | ALSA-2024:5928 |
| AlmaLinux:9 | kernel-tools-libs | 5.14.0-427.33.1.el9_4 | ALSA-2024:5928 |
| AlmaLinux:9 | kernel-tools-libs-devel | 5.14.0-427.33.1.el9_4 | ALSA-2024:5928 |
| AlmaLinux:9 | kernel-uki-virt | 5.14.0-427.33.1.el9_4 | ALSA-2024:5928 |
| AlmaLinux:9 | kernel-zfcpdump | 5.14.0-427.33.1.el9_4 | ALSA-2024:5928 |
| AlmaLinux:9 | kernel-zfcpdump-core | 5.14.0-427.33.1.el9_4 | ALSA-2024:5928 |
| AlmaLinux:9 | kernel-zfcpdump-devel | 5.14.0-427.33.1.el9_4 | ALSA-2024:5928 |
| AlmaLinux:9 | kernel-zfcpdump-devel-matched | 5.14.0-427.33.1.el9_4 | ALSA-2024:5928 |
| AlmaLinux:9 | kernel-zfcpdump-modules | 5.14.0-427.33.1.el9_4 | ALSA-2024:5928 |
| AlmaLinux:9 | kernel-zfcpdump-modules-core | 5.14.0-427.33.1.el9_4 | ALSA-2024:5928 |
| AlmaLinux:9 | kernel-zfcpdump-modules-extra | 5.14.0-427.33.1.el9_4 | ALSA-2024:5928 |
| AlmaLinux:9 | libperf | 5.14.0-427.33.1.el9_4 | ALSA-2024:5928 |
| AlmaLinux:9 | perf | 5.14.0-427.33.1.el9_4 | ALSA-2024:5928 |
| AlmaLinux:9 | python3-perf | 5.14.0-427.33.1.el9_4 | ALSA-2024:5928 |
| AlmaLinux:9 | rtla | 5.14.0-427.33.1.el9_4 | ALSA-2024:5928 |
| AlmaLinux:9 | rv | 5.14.0-427.33.1.el9_4 | ALSA-2024:5928 |
| Debian:12 | linux | 6.1.99-1 | DEBIAN-CVE-2024-40957 |
| Debian:13 | linux | 6.9.7-1 | DEBIAN-CVE-2024-40957 |
| Debian:14 | linux | 6.9.7-1 | DEBIAN-CVE-2024-40957 |
| Ubuntu:22.04:LTS | linux | 5.15.0-121.131 | UBUNTU-CVE-2024-40957 |
| Ubuntu:24.04:LTS | linux | 6.8.0-44.44 | UBUNTU-CVE-2024-40957 |
| Ubuntu:22.04:LTS | linux-allwinner-5.19 | no fix listed | UBUNTU-CVE-2024-40957 |
| Ubuntu:22.04:LTS | linux-aws | 5.15.0-1069.75 | UBUNTU-CVE-2024-40957 |
| Ubuntu:24.04:LTS | linux-aws | 6.8.0-1015.16 | UBUNTU-CVE-2024-40957 |
| Ubuntu:22.04:LTS | linux-aws-5.19 | no fix listed | UBUNTU-CVE-2024-40957 |
| Ubuntu:22.04:LTS | linux-aws-6.2 | no fix listed | UBUNTU-CVE-2024-40957 |
| Ubuntu:22.04:LTS | linux-aws-6.5 | no fix listed | UBUNTU-CVE-2024-40957 |
| Ubuntu:22.04:LTS | linux-aws-6.8 | 6.8.0-1015.16~22.04.1 | UBUNTU-CVE-2024-40957 |
| Ubuntu:22.04:LTS | linux-azure | 5.15.0-1072.81 | UBUNTU-CVE-2024-40957 |
| Ubuntu:24.04:LTS | linux-azure | 6.8.0-1014.16 | UBUNTU-CVE-2024-40957 |
| Ubuntu:22.04:LTS | linux-azure-5.19 | no fix listed | UBUNTU-CVE-2024-40957 |
| Ubuntu:22.04:LTS | linux-azure-6.2 | no fix listed | UBUNTU-CVE-2024-40957 |
| Ubuntu:22.04:LTS | linux-azure-6.5 | no fix listed | UBUNTU-CVE-2024-40957 |
| Ubuntu:22.04:LTS | linux-azure-6.8 | 6.8.0-1014.16~22.04.1 | UBUNTU-CVE-2024-40957 |
| Ubuntu:22.04:LTS | linux-azure-fde | 5.15.0-1072.81.1 | UBUNTU-CVE-2024-40957 |
| Ubuntu:22.04:LTS | linux-azure-fde-5.19 | no fix listed | UBUNTU-CVE-2024-40957 |
| Ubuntu:22.04:LTS | linux-azure-fde-6.2 | no fix listed | UBUNTU-CVE-2024-40957 |
| Ubuntu:22.04:LTS | linux-gcp | 5.15.0-1068.76 | UBUNTU-CVE-2024-40957 |
| Ubuntu:24.04:LTS | linux-gcp | 6.8.0-1014.16 | UBUNTU-CVE-2024-40957 |
| Ubuntu:22.04:LTS | linux-gcp-5.19 | no fix listed | UBUNTU-CVE-2024-40957 |
| Ubuntu:22.04:LTS | linux-gcp-6.2 | no fix listed | UBUNTU-CVE-2024-40957 |
| Ubuntu:22.04:LTS | linux-gcp-6.5 | no fix listed | UBUNTU-CVE-2024-40957 |
| Ubuntu:22.04:LTS | linux-gcp-6.8 | 6.8.0-1014.16~22.04.1 | UBUNTU-CVE-2024-40957 |
| Ubuntu:22.04:LTS | linux-gke | 5.15.0-1066.72 | UBUNTU-CVE-2024-40957 |
| Ubuntu:24.04:LTS | linux-gke | 6.8.0-1010.13 | UBUNTU-CVE-2024-40957 |
| Ubuntu:22.04:LTS | linux-gkeop | 5.15.0-1052.59 | UBUNTU-CVE-2024-40957 |
| Ubuntu:22.04:LTS | linux-hwe-5.19 | no fix listed | UBUNTU-CVE-2024-40957 |
| Ubuntu:22.04:LTS | linux-hwe-6.2 | no fix listed | UBUNTU-CVE-2024-40957 |
| Ubuntu:22.04:LTS | linux-hwe-6.5 | no fix listed | UBUNTU-CVE-2024-40957 |
| Ubuntu:22.04:LTS | linux-hwe-6.8 | 6.8.0-45.45~22.04.1 | UBUNTU-CVE-2024-40957 |
| Ubuntu:22.04:LTS | linux-ibm | 5.15.0-1062.65 | UBUNTU-CVE-2024-40957 |
| Ubuntu:24.04:LTS | linux-ibm | 6.8.0-1012.12 | UBUNTU-CVE-2024-40957 |
| Ubuntu:22.04:LTS | linux-ibm-6.8 | 6.8.0-1012.12~22.04.1 | UBUNTU-CVE-2024-40957 |
| Ubuntu:22.04:LTS | linux-intel-iotg | 5.15.0-1064.70 | UBUNTU-CVE-2024-40957 |
| Ubuntu:22.04:LTS | linux-kvm | 5.15.0-1066.71 | UBUNTU-CVE-2024-40957 |
| Ubuntu:22.04:LTS | linux-lowlatency | 5.15.0-121.131 | UBUNTU-CVE-2024-40957 |
| Ubuntu:24.04:LTS | linux-lowlatency | 6.8.0-44.44.1 | UBUNTU-CVE-2024-40957 |
| Ubuntu:22.04:LTS | linux-lowlatency-hwe-5.19 | no fix listed | UBUNTU-CVE-2024-40957 |
| Ubuntu:22.04:LTS | linux-lowlatency-hwe-6.2 | no fix listed | UBUNTU-CVE-2024-40957 |
| Ubuntu:22.04:LTS | linux-lowlatency-hwe-6.5 | no fix listed | UBUNTU-CVE-2024-40957 |
| Ubuntu:22.04:LTS | linux-lowlatency-hwe-6.8 | 6.8.0-44.44.1~22.04.1 | UBUNTU-CVE-2024-40957 |
| Ubuntu:22.04:LTS | linux-nvidia | 5.15.0-1064.65 | UBUNTU-CVE-2024-40957 |
| Ubuntu:24.04:LTS | linux-nvidia | 6.8.0-1013.14 | UBUNTU-CVE-2024-40957 |
| Ubuntu:22.04:LTS | linux-nvidia-6.2 | no fix listed | UBUNTU-CVE-2024-40957 |
| Ubuntu:22.04:LTS | linux-nvidia-6.5 | no fix listed | UBUNTU-CVE-2024-40957 |
| Ubuntu:22.04:LTS | linux-nvidia-6.8 | 6.8.0-1013.14~22.04.1 | UBUNTU-CVE-2024-40957 |
| Ubuntu:24.04:LTS | linux-nvidia-lowlatency | 6.8.0-1013.14.1 | UBUNTU-CVE-2024-40957 |
| Ubuntu:22.04:LTS | linux-nvidia-tegra | 5.15.0-1028.28 | UBUNTU-CVE-2024-40957 |
| Ubuntu:22.04:LTS | linux-nvidia-tegra-igx | 5.15.0-1016.16 | UBUNTU-CVE-2024-40957 |
| Ubuntu:22.04:LTS | linux-oem-5.17 | no fix listed | UBUNTU-CVE-2024-40957 |
| Ubuntu:22.04:LTS | linux-oem-6.0 | no fix listed | UBUNTU-CVE-2024-40957 |
| Ubuntu:22.04:LTS | linux-oem-6.1 | no fix listed | UBUNTU-CVE-2024-40957 |
| Ubuntu:22.04:LTS | linux-oem-6.5 | no fix listed | UBUNTU-CVE-2024-40957 |
| Ubuntu:24.04:LTS | linux-oem-6.8 | 6.8.0-1012.12 | UBUNTU-CVE-2024-40957 |
| Ubuntu:22.04:LTS | linux-oracle | 5.15.0-1067.73 | UBUNTU-CVE-2024-40957 |
| Ubuntu:24.04:LTS | linux-oracle | 6.8.0-1012.12 | UBUNTU-CVE-2024-40957 |
| Ubuntu:22.04:LTS | linux-oracle-6.5 | no fix listed | UBUNTU-CVE-2024-40957 |
| Ubuntu:22.04:LTS | linux-oracle-6.8 | 6.8.0-1012.12~22.04.1 | UBUNTU-CVE-2024-40957 |
| Ubuntu:22.04:LTS | linux-raspi | 5.15.0-1062.65 | UBUNTU-CVE-2024-40957 |
| Ubuntu:24.04:LTS | linux-raspi | 6.8.0-1011.12 | UBUNTU-CVE-2024-40957 |
| Ubuntu:22.04:LTS | linux-realtime | no fix listed | UBUNTU-CVE-2024-40957 |
| Ubuntu:22.04:LTS | linux-riscv | no fix listed | UBUNTU-CVE-2024-40957 |
| Ubuntu:24.04:LTS | linux-riscv | 6.8.0-44.44.1 | UBUNTU-CVE-2024-40957 |
| Ubuntu:22.04:LTS | linux-riscv-5.19 | no fix listed | UBUNTU-CVE-2024-40957 |
| Ubuntu:22.04:LTS | linux-riscv-6.5 | no fix listed | UBUNTU-CVE-2024-40957 |
| Ubuntu:22.04:LTS | linux-riscv-6.8 | 6.8.0-44.44.1~22.04.1 | UBUNTU-CVE-2024-40957 |
| Ubuntu:22.04:LTS | linux-starfive-5.19 | no fix listed | UBUNTU-CVE-2024-40957 |
| Ubuntu:22.04:LTS | linux-starfive-6.2 | no fix listed | UBUNTU-CVE-2024-40957 |
| Ubuntu:22.04:LTS | linux-starfive-6.5 | no fix listed | UBUNTU-CVE-2024-40957 |
| Ubuntu:22.04:LTS | linux-xilinx-zynqmp | 5.15.0-1035.39 | UBUNTU-CVE-2024-40957 |
Affected products (as reported)
| Vendor | Product | Versions |
|---|---|---|
| Linux | Linux | 7a3f5b0de3647c854e34269c3332d7a1e902901a – before af90e3d73dc45778767b2fb6e7edd57ebe34380d7a3f5b0de3647c854e34269c3332d7a1e902901a – before ec4d970b597ee5e17b0d8d73b7875197ce9a04d47a3f5b0de3647c854e34269c3332d7a1e902901a – before d62df86c172033679d744f07d89e93e367dd11f67a3f5b0de3647c854e34269c3332d7a1e902901a – before 561475d53aa7e4511ee7cdba8728ded81cf1db1c7a3f5b0de3647c854e34269c3332d7a1e902901a – before 9a3bc8d16e0aacd65c31aaf23a2bced3288a7779 |
| Linux | Linux | 5.15 |
References
- https://git.kernel.org/stable/c/af90e3d73dc45778767b2fb6e7edd57ebe34380d
- https://git.kernel.org/stable/c/ec4d970b597ee5e17b0d8d73b7875197ce9a04d4
- https://git.kernel.org/stable/c/d62df86c172033679d744f07d89e93e367dd11f6
- https://git.kernel.org/stable/c/561475d53aa7e4511ee7cdba8728ded81cf1db1c
- https://git.kernel.org/stable/c/9a3bc8d16e0aacd65c31aaf23a2bced3288a7779
- https://lists.debian.org/debian-lts-announce/2025/01/msg00001.html