🔍 CVE-2024-35900

5.5
CVSS Score
MEDIUM
2024-05-19
2026-10-15 01:17
✅ 완료

🇰🇷 한글 설명

Linux 커널의 netfilter nf_tables에서 dormant 플래그 토글 시 새로운 basechain이 부정확하게 처리되어 이미 등록 해제된 네트워크 훅을 재등록 해제하려는 시도로 인한 일관성 문제. 이는 테이블 플래그 업데이트 후 새 체인 추가 시 훅 등록 상태 불일치를 유발합니다.

💡 쉬운 설명

Linux 시스템의 네트워크 필터링 규칙(netfilter)에서 설정을 변경할 때 규칙이 중복으로 제거되려는 오류가 발생합니다. 이는 시스템 안정성을 저하시킬 수 있는 로컬 버그입니다.

🇺🇸 원문 (English)

In the Linux kernel, the following vulnerability has been resolved: netfilter: nf_tables: reject new basechain after table flag update When dormant flag is toggled, hooks are disabled in the commit phase by iterating over current chains in table (existing and new). The following configuration allows for an inconsistent state: add table x add chain x y { type filter hook input priority 0; } add table x { flags dormant; } add chain x w { type filter hook input priority 1; } which triggers the following warning when trying to unregister chain w which is already unregistered. [ 127.322252] WARNING: CPU: 7 PID: 1211 at net/netfilter/core.c:50 1 __nf_unregister_net_hook+0x21a/0x260 [...] [ 127.322519] Call Trace: [ 127.322521] <TASK> [ 127.322524] ? __warn+0x9f/0x1a0 [ 127.322531] ? __nf_unregister_net_hook+0x21a/0x260 [ 127.322537] ? report_bug+0x1b1/0x1e0 [ 127.322545] ? handle_bug+0x3c/0x70 [ 127.322552] ? exc_invalid_op+0x17/0x40 [ 127.322556] ? asm_exc_invalid_op+0x1a/0x20 [ 127.322563] ? kasan_save_free_info+0x3b/0x60 [ 127.322570] ? __nf_unregister_net_hook+0x6a/0x260 [ 127.322577] ? __nf_unregister_net_hook+0x21a/0x260 [ 127.322583] ? __nf_unregister_net_hook+0x6a/0x260 [ 127.322590] ? __nf_tables_unregister_hook+0x8a/0xe0 [nf_tables] [ 127.322655] nft_table_disable+0x75/0xf0 [nf_tables] [ 127.322717] nf_tables_commit+0x2571/0x2620 [nf_tables]

📍 영향받는 시스템

Linux kernel 5.10 이상, netfilter nf_tables 모듈 사용 시스템

⚔️ 공격 벡터

로컬 공격자가 netfilter 규칙 설정 권한으로 dormant 플래그와 체인을 특정 순서로 조작

🛡️ 대응 방법

Linux 커널 업데이트 (nf_tables 패치 적용된 버전으로 업그레이드)

🔧 검증 코드

출력에서 'CONFIG_NF_TABLES=y' 또는 'CONFIG_NF_TABLES=m'이 나타나면 시스템이 영향받음을 의미. CONFIG_NF_TABLES 미설정이면 영향 없음

Shell / Script
grep -i 'nf_tables' /boot/config-$(uname -r) 2>/dev/null || echo 'Not configured'

📊 CVSS Vector String

CVSS Vector
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H

💻 영향받는 소프트웨어

Linux Kernel