🇰🇷 한글 설명
Linux 커널의 mt7996 Wi-Fi 드라이버에서 리셋 과정 중 메모리 해제 순서 오류로 인해 발생하는 Use-After-Free 취약점입니다. 장치 리셋 시 wcid 엔트리가 해제된 메모리를 가리키고 있는 상태에서 해당 메모리에 접근하여 시스템 불안정이나 보안 문제를 유발할 수 있습니다.
💡 쉬운 설명
Wi-Fi 장치를 초기화하는 과정에서 이미 삭제된 메모리 주소를 다시 사용하려고 시도하는 오류가 있습니다. 이로 인해 컴퓨터 시스템이 갑자기 멈추거나 해킹에 취약해질 수 있습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
wifi: mt76: mt7996: free vif links after clearing wcid entries on full reset
mt7996_mac_reset_vif_iter() queues non-default vif links for kfree_rcu
while dev->wcid[] still holds pointers to the wcid embedded in each
freed link; mt76_reset_device() then dereferences those entries and
runs mt76_wcid_cleanup() on them. If a grace period elapses in between,
the cleanup operates on freed memory.
Run mt76_reset_device() first, so the wcid entries are cleaned up and
cleared while the links are still valid.
📍 영향받는 시스템
Linux kernel (mt76/mt7996 driver 포함 버전)
⚔️ 공격 벡터
로컬 공격자가 특정 네트워크 조건이나 드라이버 리셋을 유도하여 메모리 오염을 일으킴
🛡️ 대응 방법
mt76 드라이버의 리셋 로직이 수정된 최신 Linux 커널로 업데이트
🔧 검증 코드
출력된 커널 버전이 취약점이 패치된 최신 버전인지 확인