🔍 CVE-2026-90379

8.8
CVSS Score
HIGH
2026-09-17
2026-10-19 09:19
✅ 완료

🇰🇷 한글 설명

Linux 커널의 mt76 드라이버에서 PCIe AER(Advanced Error Reporting) 오류 발생 시 버스가 중단되면 레지스터 읽기 값이 0xFFFFFFFF로 반환되는 취약점이 있습니다. 이로 인해 DMA 큐 상태가 손상되어 잘못된 메모리 접근이 발생하고 시스템 크래시(Kernel Panic)가 유발될 수 있습니다.

💡 쉬운 설명

Wi-Fi 장치에 하드웨어 오류가 발생했을 때, 시스템이 잘못된 데이터를 읽어 들여 컴퓨터 전체가 멈추거나 꺼질 수 있는 문제입니다. 하드웨어 오류 상황을 제대로 처리하지 못해 발생하는 메모리 오류입니다.

🇺🇸 원문 (English)

In the Linux kernel, the following vulnerability has been resolved: wifi: mt76: mt7921: Add PCIe AER handler support to prevent system crash When an AER error occurs and the bus is hung, the register reads return 0xFFFFFFFF, causing the DMA queue state to be corrupted and resulting in an invalid memory access when accessing q->desc[] or q->entry[]. Unable to handle kernel paging request at virtual address ffffffc01099eac0 pc : mt76_dma_add_buf+0x124/0x188 [mt76] lr : mt76_dma_rx_fill+0x11c/0x1d8 [mt76] sp : ffffffc016d9bbf0 x29: ffffffc016d9bc10 x28: 0000000000000000 x27: 0000000000000000 x26: ffffffb7855e50b8 x25: ffffffb80d04f000 x24: 0000000000000000 x23: 0000000000000ec0 x22: ffffffb796803648 x21: ffffffb796801f80 x20: ffffffb7968035f8 x19: 0000000000000ec0 x18: 0000000000000000 x17: 000000004ec00000 x16: 000000000ec00000 x15: ffffffc01099eac0 x14: 000000004ec00000 x13: 00000000ffc5a000 x12: ffffffc016d9bc32 x11: 00000000ffffffff x10: 0000000000000002 x9 : 0000000000000000 x8 : 000000000000b4ac x7 : 0000000000000a20 x6 : ffffffb6c1806400 x5 : 0000000000000000 x4 : ffffffb80d04f000 x3 : 0000000000000000 x2 : 0000000000000001 x1 : 000000000ec04000 x0 : ffffffb7968035f8 Call trace: mt76_dma_add_buf+0x124/0x188 [mt76 (HASH:1029 4)] mt76_dma_rx_reset+0xe8/0xfc [mt76 (HASH:1029 4)] mt7921_wpdma_reset+0x188/0x1b0 [mt7921e (HASH:ee48 5)] mt7921e_mac_reset+0x128/0x418 [mt7921e (HASH:ee48 5)] mt7921_mac_reset_work+0xac/0x1a8 [mt7921_common (HASH:f721 6)] process_one_work+0x188/0x514 worker_thread+0x12c/0x300 kthread+0x140/0x1fc ret_from_fork+0x10/0x30 Fix the invalid memory access by validating the DMA index read from the hardware before it is used as a queue index. An out-of-range value, such as the 0xFFFFFFFF returned while the bus is hung, is now clamped so it can no longer corrupt q->head or q->tail. In addition, check the bus_hung flag in mt7921_mac_reset_work() before attempting the reset sequence, reject MCU messages while the bus is hung, and install no-op bus operations when an unrecoverable AER error is detected, preventing further invalid hardware accesses. Due to hardware limitations - such as the lack of a connected hardware reset pin or the absence of host re-probe functionality - affected Wi-Fi devices may not fully recover to a normal operational state after certain errors, even with AER enabled.

📍 영향받는 시스템

Linux kernel (mt76/mt7921 driver modules)

⚔️ 공격 벡터

PCIe 버스 오류(AER)를 유발하는 하드웨어 결함 또는 물리적 간섭을 통한 시스템 크래시 유도

🛡️ 대응 방법

Linux 커널을 최신 버전으로 업데이트하여 PCIe AER 핸들러 지원 및 DMA 인덱스 유효성 검사 패치를 적용하십시오.

🔧 검증 코드

현재 커널 버전과 mt76 모듈 정보를 확인하여 해당 취약점이 해결된 최신 패치가 적용되었는지 확인합니다.

Shell / Script
uname -r && modinfo mt76 | grep version

📊 CVSS Vector String

CVSS Vector
CVSS:3.1/AV:A/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H

💻 영향받는 소프트웨어

Linux Kernel