🇰🇷 한글 설명
Linux 커널의 mt76 드라이버 내 mt7925 칩셋의 testmode 쿼리 처리 과정에서 발생한 취약점입니다. mt7925_tm_query 함수가 skb 데이터의 길이를 검증하지 않고 memcpy를 수행하여, 펌웨어 응답이 예상보다 짧을 경우 버퍼 범위를 벗어난 데이터를 읽어 사용자 공간으로 노출할 수 있습니다.
💡 쉬운 설명
무선 랜카드 드라이버가 펌웨어로부터 받은 데이터의 길이를 제대로 확인하지 않아 발생하는 문제입니다. 이로 인해 메모리의 잘못된 영역을 읽어 중요한 정보가 유출될 위험이 있습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
wifi: mt76: mt7925: validate skb length in testmode query
In mt7925_tm_query(), the response skb from mt76_mcu_send_and_get_msg()
is used in a memcpy without validating its length:
memcpy(evt_resp, skb->data + 8, MT7925_EVT_RSP_LEN);
where MT7925_EVT_RSP_LEN is 512. If the firmware returns a response
shorter than 520 bytes (8 + 512), this reads beyond the skb data
buffer. The over-read data is then returned to userspace via nla_put()
in mt7925_testmode_dump().
Add a length check before the memcpy to ensure the skb contains
sufficient data.
📍 영향받는 시스템
Linux kernel (mt76/mt7925 driver)
⚔️ 공격 벡터
조작된 펌웨어 응답을 통한 메모리 정보 유출 (Information Disclosure)
🛡️ 대응 방법
Linux 커널을 최신 보안 패치가 적용된 버전으로 업데이트하십시오.
🔧 검증 코드
현재 실행 중인 커널 버전을 확인하여 취약점이 해결된 패치 버전인지 확인합니다.