🇰🇷 한글 설명
리눅스 커널의 IPv6 멀티캐스트 처리 과정 중 mld_newpack() 함수에서 RCU 보호 조치가 누락된 취약점입니다. 이로 인해 RTNL 또는 RCU 잠금을 획득하지 않은 상태에서 함수가 호출될 수 있어 데이터 무결성 문제가 발생할 수 있습니다.
💡 쉬운 설명
네트워크 데이터를 처리하는 과정에서 데이터가 엉키지 않도록 보호하는 장치가 빠져 있는 상태입니다. 이로 인해 시스템이 불안정해지거나 예상치 못한 오류가 발생할 수 있습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
ipv6: mcast: add RCU protection to mld_newpack()
mld_newpack() can be called without RTNL or RCU being held.
Note that we no longer can use sock_alloc_send_skb() because
ipv6.igmp_sk uses GFP_KERNEL allocations which can sleep.
Instead use alloc_skb() and charge the net->ipv6.igmp_sk
socket under RCU protection.
📍 영향받는 시스템
RCU 보호가 누락된 버전의 Linux Kernel (IPv6 mcast 관련 모듈 포함)
⚔️ 공격 벡터
네트워크 패킷을 조작하여 특정 타이밍에 mld_newpack() 함수를 호출함으로써 레이스 컨디션 유도
🛡️ 대응 방법
RCU 보호 및 alloc_skb()가 적용된 최신 리눅스 커널 버전으로 업데이트
🔧 검증 코드
출력된 커널 버전이 해당 취약점이 패치된 최신 보안 업데이트 버전인지 확인