🇰🇷 한글 설명
Linux 커널의 mac80211 드라이버에서 ieee80211_invoke_fast_rx 함수 내의 rx_result 변수가 static으로 선언되어 발생하는 취약점입니다. 이로 인해 병렬로 실행되는 여러 수신 요청이 동일한 변수를 공유하게 되어 데이터가 덮어씌워지거나 잘못된 처리 경로로 유입될 수 있습니다.
💡 쉬운 설명
여러 개의 무선 데이터가 동시에 들어올 때, 데이터 처리 결과값을 저장하는 공간을 공유하면서 발생하는 문제입니다. 이로 인해 데이터가 엉뚱한 곳으로 전달되거나 처리가 누락되는 오류가 발생할 수 있습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
wifi: mac80211: drop stray 'static' from fast-RX rx_result
ieee80211_invoke_fast_rx() is documented as safe for parallel RX, but
its per-invocation rx_result is declared static. Concurrent callers then
share one instance and can overwrite each other's result between
ieee80211_rx_mesh_data() and the switch on res.
That can make a packet that was queued or consumed by
ieee80211_rx_mesh_data() fall through into ieee80211_rx_8023(), or make
a packet that should continue return as queued.
Make res an automatic variable so each invocation keeps its own result.
📍 영향받는 시스템
Linux kernel (mac80211 subsystem)
⚔️ 공격 벡터
병렬 무선 데이터 수신(Parallel RX)을 유도하여 데이터 처리 로직의 혼선 유발
🛡️ 대응 방법
Linux 커널을 최신 보안 패치가 적용된 버전으로 업데이트하여 rx_result를 자동 변수(automatic variable)로 수정
🔧 검증 코드
출력된 커널 버전이 해당 취약점이 해결된 패치 버전 이후인지 확인