CVE-2026-31424: netfilter: x_tables: restrict xt_check_match/xt_check_target extensions for NFPROTO_ARP

Published Apr 13, 2026
·
Updated

In the Linux kernel, the following vulnerability has been resolved:

netfilter: xtables: restrict xtcheckmatch/xtchecktarget extensions for NFPROTOARP

Weiming Shi says:

xtmatch and xttarget structs registered with NFPROTOUNSPEC can be loaded by any protocol family through nftcompat. When such a match/target sets .hooks to restrict which hooks it may run on, the bitmask uses NFINET constants. This is only correct for families whose hook layout matches NFINET: IPv4, IPv6, INET, and bridge all share the same five hooks (PREROUTING ... POSTROUTING).

ARP only has three hooks (IN=0, OUT=1, FORWARD=2) with different semantics. Because NFARPOUT == 1 == NFINETLOCALIN, the .hooks validation silently passes for the wrong reasons, allowing matches to run on ARP chains where the hook assumptions (e.g. state->in being set on input hooks) do not hold. This leads to NULL pointer dereferences; xtdevgroup is one concrete example:

Oops: general protection fault, probably for non-canonical address 0xdffffc0000000044: 0000 [#1] SMP KASAN NOPTI KASAN: null-ptr-deref in range [0x0000000000000220-0x0000000000000227] RIP: 0010:devgroupmt+0xff/0x350 Call Trace: <TASK> nftmatcheval (net/netfilter/nftcompat.c:407) nftdochain (net/netfilter/nftablescore.c:285) nftdochainarp (net/netfilter/nftchainfilter.c:61) nfhookslow (net/netfilter/core.c:623) arpxmit (net/ipv4/arp.c:666) </TASK> Kernel panic - not syncing: Fatal exception in interrupt

Fix it by restricting arptables to NFPROTOARP extensions only. Note that arptables-legacy only supports:

- arptCLASSIFY - arptmangle - arptMARK

that provide explicit NFPROTOARP match/target declarations.

Affected Software

15 affected componentsFixes available
Linux Linux kernel (netfilter x_tables)
Microsoft azl3 kernel 6.6.130.1-3
Linux Linux kernel>=2.6.39<5.10.253
Linux Linux kernel>=5.11<5.15.203
Linux Linux kernel>=5.16<6.1.168
Linux Linux kernel>=6.2<6.6.134
Linux Linux kernel>=6.7<6.12.81
Linux Linux kernel>=6.13<6.18.22
Linux Linux kernel>=6.19<6.19.12
Linux Linux kernel=7.0-rc1
Linux Linux kernel=7.0-rc2
Linux Linux kernel=7.0-rc3
Linux Linux kernel=7.0-rc4
Linux Linux kernel=7.0-rc5
Linux Linux kernel=7.0-rc6

Remediation

Recommended actions to resolve this vulnerability, in priority order.

  1. Compensating control

    Restrict arptables to NFPROTO_ARP extensions only (so ARP chains only use match/target extensions explicitly declared for NFPROTO_ARP).

  2. Compensating control

    Use nft/xtables ARP-specific match/target declarations (explicit NFPROTO_ARP match/target declarations) so xt_check_match/xt_check_target does not accept extensions intended for other NFPROTO families.

Event History

Apr 13, 2026
CVE Published
via MITRE·01:40 PM
Data Sourced
via MITRE·01:40 PM
Description
Data Sourced
via NVD·02:16 PM
RemedyDescriptionSeverityWeaknessAffected Software
Apr 14, 2026
Data Sourced
via Microsoft·08:01 AM
DescriptionSeverityWeaknessAffected Software
Updated
via Microsoft·08:01 AM
DescriptionSeverity

Frequently Asked Questions

1

What is the severity of CVE-2026-31424?

The severity of CVE-2026-31424 is medium with a base score of 5.5.

2

How do I fix CVE-2026-31424?

To fix CVE-2026-31424, update your Linux kernel to the patched version that addresses the vulnerability.

3

What impact does CVE-2026-31424 have on systems?

CVE-2026-31424 may allow a denial of service due to a null pointer dereference vulnerability in the netfilter x_tables subsystem.

4

Which software versions are affected by CVE-2026-31424?

CVE-2026-31424 affects the Linux kernel and specifically the netfilter x_tables functionality.

5

Who reported the vulnerability CVE-2026-31424?

CVE-2026-31424 was reported by researcher Weiming Shi.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203