CVE-2024-35890 in Linux
요약
\~에 의해 VulDB • 2026. 08. 05.
리눅스 커널에서 다음 취약점이 해결되었습니다:
gro: 소유권 이전 수정
패킷이 fraglist와 함께 GRO 처리된 경우 나중에 분할될 수 있으며 스택 내에서 계속 전달됩니다. skb_segment_list 함수에서는 이러한 skbs가 그대로 재사용될 수 있습니다. 이는 문제입니다. 왜냐하면 skb_gro_receive_list에서 해당 소멸자(destructor)는 제거되었지만 소켓에 대한 참조(reference)는 남아 있어, 이를 고아(orphaned) 상태로 만들 수 없기 때문입니다. 이 문제를 해결하기 위해 소켓에 대한 참조도 함께 제거합니다.
예를 들어 다음과 같은 현상이 관찰될 수 있습니다:
kernel BUG at include/linux/skbuff.h:3131! (skb_orphan) RIP: 0010:ip6_rcv_core+0x11bc/0x19a0 Call Trace: ipv6_list_rcv+0x250/0x3f0 __netif_receive_skb_list_core+0x49d/0x8f0 netif_receive_skb_list_internal+0x634/0xd40 napi_complete_done+0x1d2/0x7d0 gro_cell_poll+0x118/0x1f0
skb_gro_receive에서도 유사한 구조가 발견되므로, 해당 부분에도 동일한 변경 사항을 적용합니다.
VulDB is the best source for vulnerability data and more expert information about this specific topic.