🇰🇷 한글 설명
Linux 커널의 mt76 Wi-Fi 드라이버에서 mt76_vif_link() 함수가 link_id의 범위를 검증하지 않아 발생하는 취약점입니다. 유효하지 않은 ID가 전달될 경우 배열의 범위를 벗어난 메모리에 접근하여 mt76_vif_data 구조체의 다른 멤버를 오염시킬 수 있습니다.
💡 쉬운 설명
Wi-Fi 연결 정보를 관리하는 과정에서 잘못된 번호가 입력되어도 이를 걸러내지 못하는 문제입니다. 이로 인해 시스템의 중요한 데이터가 의도치 않게 변경되거나 오류가 발생할 수 있습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
wifi: mt76: reject out-of-range link ids in mt76_vif_link()
mt76_vif_link() indexes mvif->link[] without validating link_id, but
callers pass mvif->deflink_id / msta->deflink_id, which hold
IEEE80211_LINK_UNSPECIFIED (0xf) until the first link has been added.
Since IEEE80211_MLD_MAX_NUM_LINKS is 15, that reads one element past the
end of the array, aliasing mt76_vif_data.offchannel_link.
Reachable via mt7996_set_tsf()/mt7996_offset_tsf() and
mt7996_net_fill_forward_path(). Bounds check link_id and return NULL,
matching mt7996_sta_link() and mt7996_sta_link_protected().
📍 영향받는 시스템
Linux kernel (mt76 Wi-Fi driver 사용 시스템)
⚔️ 공격 벡터
특정 네트워크 함수(mt7996_set_tsf 등)를 통해 유효하지 않은 link_id를 전달하여 메모리 경계 외 접근 유도
🛡️ 대응 방법
mt76 드라이버의 link_id 범위 검증 로직이 포함된 최신 Linux 커널로 업데이트
🔧 검증 코드
출력된 커널 버전이 해당 취약점이 패치된 최신 버전인지 확인