🇰🇷 한글 설명
Linux 커널의 ath12k 무선 드라이버에서, 공유 IRQ를 사용하는 경우 오류 경로에서 IRQ 친화성 힌트(affinity hint)를 지우지 않고 ath12k_pci_free_irq()를 호출하여 커널 IRQ 코어에서 경고가 발생할 수 있는 문제입니다. 수정은 해제 호출 전에 affinity hint를 먼저 정리하는 것입니다.
💡 쉬운 설명
무선 랜 드라이버가 오류 상황에서 인터럽트 설정을 정리하는 순서가 잘못되어 커널이 경고를 출력할 수 있습니다. 주로 시스템 안정성에 영향을 주는 결함입니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
wifi: ath12k: Clear affinity hint before calling ath12k_pci_free_irq() in error path
If a shared IRQ is used by the driver due to platform limitation, then the
IRQ affinity hint is set right after the allocation of IRQ vectors in
ath12k_pci_msi_alloc(). This does no harm unless one of the functions
requesting the IRQ fails and attempt to free the IRQ.
This may end up with a warning from the IRQ core that is expecting the
affinity hint to be cleared before freeing the IRQ:
kernel/irq/manage.c:
/* make sure affinity_hint is cleaned up */
if (WARN_ON_ONCE(desc->affinity_hint))
desc->affinity_hint = NULL;
So to fix this issue, clear the IRQ affinity hint before calling
ath12k_pci_free_irq() in the error path. The affinity will be cleared once
again further down the error path due to code organization, but that does
no harm.
📍 영향받는 시스템
Linux 커널의 ath12k 무선 드라이버를 사용하는 시스템 (수정 커밋 이전의 커널 버전)
⚔️ 공격 벡터
로컬 공격자가 악용하기 어려운 오류 경로의 커널 경고(WARN) 유발 수준이며, 원격 공격 경로는 확인되지 않음
🛡️ 대응 방법
배포판이 제공하는 최신 Linux 커널 보안 업데이트를 설치하고 재부팅
🔧 검증 코드
커널 버전이 배포판의 CVE-2025-22128 수정 패치가 포함된 버전 이상인지 확인하고, ath12k 모듈이 로드되어 있지 않다면 이 드라이버에 영향을 받지 않는 것입니다.
uname -r && (dpkg -l linux-image-$(uname -r) 2>/dev/null || rpm -q kernel 2>/dev/null) && lsmod | grep -i ath12k