🇰🇷 한글 설명
Linux 커널의 mac802154 서브시스템에서 인터페이스 삭제 시 RCU 리스트 삭제 방식의 오류로 인해 발생하는 취약점입니다. 기존의 list_del() 사용으로 인해 비동기 전송 완료 과정에서 오염된 리스트 노드에 접근할 수 있는 문제가 있었으며, 이를 list_del_rcu()로 수정하여 해결했습니다.
💡 쉬운 설명
네트워크 장치를 제거하는 과정에서 데이터가 안전하게 정리되지 않아 시스템이 잘못된 메모리 주소를 참조할 수 있는 문제입니다. 이로 인해 시스템이 충돌하거나 예기ص하지 않은 동작을 일으킬 수 있습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
mac802154: remove interfaces with RCU list deletion
Queue wake, stop, and disable paths walk local->interfaces under RCU.
The bulk hardware teardown path removes entries with list_del(), so an
asynchronous transmit completion can follow a poisoned list node in
ieee802154_wake_queue().
Use list_del_rcu() as in the single-interface removal path. The following
unregister_netdevice() waits for in-flight RCU readers before freeing the
netdevice, so no separate grace-period wait is needed.
📍 영향받는 시스템
mac802154 서브시스템을 사용하는 Linux 커널 버전
⚔️ 공격 벡터
네트워크 인터페이스의 빈번한 생성 및 삭제를 유도하여 레이스 컨디션(Race Condition) 유발
🛡️ 대응 방법
Linux 커널을 최신 보안 패치가 적용된 버전으로 업데이트
🔧 검증 코드
출력된 커널 버전이 해당 취약점이 수정된 패치 버전 이후인지 확인