7.5

CVE-2024-40957: seg6: fix parameter passing when calling NF_HOOK() in End.DX4 and End.DX6 behaviors

Modified
AliasesUBUNTU-CVE-2024-40957DEBIAN-CVE-2024-40957
Published 12-07-2024Last modified 05-08-2026

Vulnerability summary

CVE-2024-40957 is a high (CVSS 7.5) NULL Pointer Dereference vulnerability in linux. EPSS estimates a 0.73% chance of exploitation in the next 30 days, higher than 54.1% of scored vulnerabilities.

Priority
Prioritisesevere

Severe, CVSS 7.5 (CVE.org); no exploitation reported by the 5 checked sources; EPSS 1% (FIRST, 03-11-2026)

Source freshness unavailable

How is this decided?
CVSS score
7.5/10
010
High · v3.1 (CVE.org)
EPSS score
0.73%
0%100%
Low · -0.01 pp in 30 days
KEVNot listedNot listed by any tracked catalog.
RansomwareNot flaggedNo ransomware use recorded.
Public exploits0No public exploits recorded

Advisory lineage

Upstream 0 · Downstream 21 · Related 18

Timeline

  1. 12-07-2024
    PublishedVulnerability first disclosed.
  2. 05-08-2026
    Last modifiedVulnerability information updated.

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; }

CVSS metrics

5 scores · 4 sources · 2 versions

EPSS trend

Probability

0.73%

Chance of exploitation in the next 30 days

Percentile

54%

Versus all other CVEs

30-day change

Decrease -0.01 pp

From 0.73% on 04-10-2026

04-10-202603-11-2026

Known exploited

Compare KEV catalogs
CISA KEV

Not in the CISA KEV catalog.

ENISA CNW

Not in the ENISA CNW catalog.

CIRCL

Not in the CIRCL catalog.

Public exploits

0 found

No public exploits indexed.

Weaknesses

CWE · root cause

Affected systems

Version check

Known conditions: network-reachable, no authentication, no user interaction (CVSS vector). Other conditions: not stated in public data.

Ubuntu116 products
  • linux< 5.15.0-121.131 | < 6.8.0-44.44
  • linux-allwinner-5.19All versions (No fix recorded)
  • linux-aws< 5.15.0-1069.75 | < 6.8.0-1015.16
  • linux-aws-5.0All versions (No fix recorded)
  • linux-aws-5.11All versions (No fix recorded)
Linux2 products
  • linux≥ 7a3f5b0de3647c854e34269c3332d7a1e902901a, < af90e3d73dc45778767b2fb6e7edd57ebe34380d | ≥ 7a3f5b0de3647c854e34269c3332d7a1e902901a, < ec4d970b597ee5e17b0d8d73b7875197ce9a04d4 | ≥ 7a3f5b0de3647c854e34269c3332d7a1e902901a, < d62df86c172033679d744f07d89e93e367dd11f6 | ≥ 7a3f5b0de3647c854e34269c3332d7a1e902901a, < 561475d53aa7e4511ee7cdba8728ded81cf1db1c | ≥ 7a3f5b0de3647c854e34269c3332d7a1e902901a, < 9a3bc8d16e0aacd65c31aaf23a2bced3288a7779 | 5.15
  • linux_kernel≥ 5.15, < 5.15.162 | ≥ 5.16, < 6.1.96 | ≥ 6.2, < 6.6.36 | ≥ 6.7, < 6.9.7 | 6.10:rc1 | 6.10:rc2 | 6.10:rc3 | 6.10:rc4
Debian1 product
  • linux< 6.1.99-1 | < 6.9.7-1

3 vendors · 119 products

References

23 links
Show all 23 references