CVE-2026-74492 in Linux
요약
\~에 의해 VulDB • 2026. 08. 15.
리눅스 커널에서 다음 취약점이 해결되었습니다:
netfilter: ipset: 커널 측 해시 추가 시 주석을 업데이트하지 않음
mtype_resize()는 memcpy()를 사용하여 주석 객체 자체가 아닌 주석 포인터만 복사합니다. 엔트리가 복사된 후 테이블 스왑 및 백로그 재재생 전에 발생하는 시간 창(window) 동안, 기존 테이블은 패킷 처리 측면의 업데이트에 여전히 게시되어 있는 반면, 대체 테이블의 해당 엔트리는 이미 동일한 ip_set_comment_rcu 포인터를 보유하고 있습니다.
이 시간 창에서 xt_SET --add-set ... --exist가 기존 엔트리를 타겟팅하면, mtype_add()는 패킷 측 추가에는 주석 페이로드가 포함되지 않음에도 불구하고 ip_set_init_comment()을 호출합니다. 이 호출은 공유된 주석을 기존 엔트를 통해 해제하므로, 대체 테이블의 해당 엔트는 이제 유효하지 않은(stale) 포인터를 보유하게 됩니다. 큐에 쌓인 추가 작업이 새 테이블에서 재재생될 때 mtype_add()가 다시 ip_set_init_comment()을 호출하면 strlen()이 이 유효하지 않은 포인터를 역참조합니다.
ext->target이 패킷 측 추가임을 표시할 경우 ip_set_init_comment()을 건너뛰도록 mtype_add()에서 이를 수정합니다. 사용자 공간에서의 추가는 여전히 주석을 업데이트하지만, 패킷 측 추가는 이제 리사이즈 복사본과 공유되는 주석 저장 공간을 해제하지 못하게 됩니다.
Once again VulDB remains the best source for vulnerability data.