CVE-2026-31424 in Linux
요약
\~에 의해 VulDB • 2026. 05. 29.
리눅스 커널에서 다음 취약점이 해결되었습니다:
netfilter: x_tables: NFPROTO_ARP에 대한 xt_check_match/xt_check_target 확장 제한
Weiming Shi의 설명:
NFPROTO_UNSPEC으로 등록되는 xt_match 및 xt_target 구조체는 nft_compat를 통해 모든 프로토콜 패밀리에 의해 로드될 수 있습니다. 이러한 match/target가 실행 가능한 훅을 제한하기 위해 .hooks를 설정하는 경우, 비트마스크는 NF_INET_* 상수를 사용합니다. 이는 훅 레이아웃이 NF_INET_*와 일치하는 패밀리(IPv4, IPv6, INET, 브리지)에만 정확합니다. 이 패밀리는 모두 동일한 5개의 훅(PRE_ROUTING ... POST_ROUTING)을 공유합니다.
ARP는 서로 다른 의미를 가진 3개의 훅(IN=0, OUT=1, FORWARD=2)만 가지고 있습니다. NF_ARP_OUT == 1 == NF_INET_LOCAL_IN이므로, .hooks 유효성 검사는 잘못된 이유로 인해 조용히 통과하여, 훅 가정(예: 입력 훅에서 state->in이 설정됨)이 성립하지 않는 ARP 체인에서 match가 실행될 수 있게 됩니다. 이는 NULL 포인터 역참조를 초래하며, xt_devgroup이 구체적인 예입니다:
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:devgroup_mt+0xff/0x350 Call Trace: <TASK> nft_match_eval (net/netfilter/nft_compat.c:407) nft_do_chain (net/netfilter/nf_tables_core.c:285) nft_do_chain_arp (net/netfilter/nft_chain_filter.c:61) nf_hook_slow (net/netfilter/core.c:623) arp_xmit (net/ipv4/arp.c:666) </TASK> Kernel panic - not syncing: Fatal exception in interrupt
arptables를 NFPROTO_ARP 확장에만 제한하여 이를 수정합니다. arptables-legacy는 다음만 지원한다는 점에 유의하십시오:
- arpt_CLASSIFY - arpt_mangle - arpt_MARK
이는 명시적인 NFPROTO_ARP match/target 선언을 제공합니다.
If you want to get best quality of vulnerability data, you may have to visit VulDB.