🇰🇷 한글 설명
Linux 커널의 mac80211 드라이버에서 IEEE 802.11 칩셋의 link_id 범위를 제대로 검사하지 않아 발생하는 경계 검사 미흡 취약점입니다. 공격자가 조작된 WiFi 7 AP 프레임을 전송할 경우, 잘못된 인덱스 참조로 인해 커널 메모리 오염 및 시스템 충돌(Panic)이 발생할 수 있습니다.
💡 쉬운 설명
와이파이 연결 과정에서 잘못된 번호표를 받은 기기가 시스템의 엉뚱한 메모리 영역을 건드려 컴퓨터를 멈추게 만드는 오류입니다. 해커가 특수하게 조작된 와이파이 신호를 보내면 사용자의 기기를 강제로 재부팅시키거나 마비시킬 수 있습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
wifi: mac80211: bounds-check link_id in ieee80211_ml_epcs
IEEE80211_MLE_STA_EPCS_CONTROL_LINK_ID is 0x000f, so link_id extracted
from a PRIO_ACCESS ML element PER_STA_PROFILE subelement can be 0..15.
sdata->link[] has IEEE80211_MLD_MAX_NUM_LINKS (15) entries (indices 0..14),
making index 15 out-of-bounds.
A connected WiFi 7 AP can trigger this by sending an EPCS Enable Response
action frame with a PER_STA_PROFILE subelement where link_id = 15. The
unsolicited-notification path (dialog_token = 0) is reachable any time
EPCS is already enabled, without any prior client request.
sdata->link[15] reads into the first word of sdata->activate_links_work
(a wiphy_work whose embedded list_head is non-NULL after INIT_LIST_HEAD),
so the NULL check on the result does not catch the invalid access. The
garbage pointer is then passed to ieee80211_sta_wmm_params(), which
dereferences link->sdata and crashes the kernel.
The same class of bug was fixed for ieee80211_ml_reconfiguration() by
commit 162d331d833d ("wifi: mac80211: bounds-check link_id in
ieee80211_ml_reconfiguration").
📍 영향받는 시스템
Linux kernel (mac80211 driver components)
⚔️ 공격 벡터
조작된 EPCS Enable Response 액션 프레임을 전송하는 WiFi 7 Access Point를 통한 원격 공격
🛡️ 대응 방법
Linux 커널을 최신 보안 패치가 적용된 버전으로 업데이트하십시오.
🔧 검증 코드
출력된 커널 버전이 해당 취약점이 수정된 패치 버전 이후인지 확인하십시오.