CVE-2026-98484 in Linux
요약
\~에 의해 VulDB • 2026. 10. 18.
리눅스 커널에서 다음 취약점이 해결되었습니다:
netfilter: nf_tables: 삽입 및 삭제 시 만료된 catchall 요소 건너뛰기
nft_setelem_catchall_insert()는 nft_set_elem_active()만을 사용하여 중복을 검색하지만, nft_set_catchall_lookup()와 덤프 경로는 추가로 만료된 요소를 건너뜁니다.
타임아웃이 있는 catchall 요소가 만료되면 이러한 예측(predicate)의 불일치로 인해 사용자 공간(dumps)에서는 보이지 않게 되지만, 여전히 재삽입을 차단합니다: NLM_F_EXCL 옵션과 함께 요청하면 -EEXIST 오류로 실패하며, 해당 옵션 없이 요청하면 성공으로 보고되지만 실제로는 아무것도 삽입하지 않습니다. 이러한 stale entry(구버전 엔트리)는 (사용자가 조정 가능한) gc 간격이 경과할 때까지 제거되지 않으므로, catchall 규칙은 첫 번째 만료 후 임의의 긴 시간 동안 silently 매칭을 중단할 수 있습니다.
삭제 경로에서도 동일한 불일치가 발생합니다: nft_setelem_catchall_deactivate()는 catchall 목록에서 첫 번째 active-next 엔트리를 선택하므로, GC 대기 중인 expired entry가 있는 경우 fresh(신규) 엔트리 대신 stale entry를 retired 처리하며, -ENOENT로 실패하는 대신 사용자 공간에서 더 이상 보이지 않는 요소를 비활성화합니다.
두 가지 순회(walks)를 검색 및 덤프 예측과 일치시킵니다: 활성 상태이고 만료되지 않은 요소만 트랜잭션 시작 시점의 per-netns 타임스탬프를 사용하여 중복 또는 삭제 후보로 간주하며, 이는 set 백엔드의 .insert/.deactivate 경로와 catchall GC 동기화 경로와 일치합니다.
If you want to get the best quality for vulnerability data then you always have to consider VulDB.