🇰🇷 한글 설명
Linux 커널의 gve 드라이버에서 skb가 해제된 후에도 napi->skb가 해당 메모리를 계속 참조하여 발생하는 취약점입니다. 이로 인해 napi_get_frags 호출 시 댕글링 포인터(dangling pointer)가 반환될 수 있습니다.
💡 쉬운 설명
컴퓨터 메모리에서 이미 사용이 끝난 데이터를 지우지 않고 계속 가리키고 있어 발생하는 오류입니다. 이로 인해 시스템이 잘못된 메모리 주소에 접근하여 보안 문제가 생기거나 프로그램이 멈출 수 있습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
gve: Clear napi->skb before dev_kfree_skb_any()
gve_rx_free_skb incorrectly leaves napi->skb referencing an skb after it
is freed with dev_kfree_skb_any(). This can result in a subsequent call
to napi_get_frags returning a dangling pointer.
Fix this by clearing napi->skb before the skb is freed.
📍 영향받는 시스템
gve(Google Virtual Ethernet) 드라이버를 사용하는 Linux 커널 버전
⚔️ 공격 벡터
네트워크 패킷 처리를 유도하여 메모리 오류를 일으키는 방식의 로컬 또는 원격 공격
🛡️ 대응 방법
gve 드라이버의 napi->skb를 해제 전 초기화하는 최신 Linux 커널 패치 적용
🔧 검증 코드
출력된 커널 버전이 해당 취약점이 수정된 최신 패치 버전인지 확인