🇰🇷 한글 설명
Linux 커널의 ngbe 네트워크 드라이버에서 MSI-X가 아닌 인터럽트 모드(legacy INTx 또는 single MSI) 사용 시 NULL 포인터 역참조가 발생하여 시스템이 충돌할 수 있는 취약점입니다. MSI-X가 활성화되지 않은 상태에서 특정 매크로를 호출할 때 초기화되지 않은 메모리 주소에 접근하는 것이 원인입니다.
💡 쉬운 설명
네트워크 카드가 특정 방식으로 작동할 때, 컴퓨터가 존재하지 않는 메모리 주소를 참조하여 시스템이 갑자기 멈추거나 꺼질 수 있는 오류입니다. 이는 네트워크 설정 방식에 따라 발생할 수 있는 소프트웨어 결함입니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
net: ngbe: fix NULL pointer dereference in non-MSI-X interrupt enabling
In non-MSI-X mode (such as legacy INTx or single MSI), wx->msix_entry is
not allocated or initialized. Calling NGBE_INTR_MISC(wx) dereferences
wx->msix_entry->entry, leading to a NULL pointer dereference crash.
This issue was introduced by fixing the IRQ vector when the number of
VFs is 7. Fix the issue by explicitly checking `pdev->msix_enabled` to
determine the correct vector index.
Additionally, as a side fix, set the interrupt mask to BIT(0) for the
non-MSI-X fallback. In MSI/INTx mode, the MISC and queue interrupts
share vector 0, and the WX_PX_MISC_IVAR register is only valid in the
MSI-X case. Thus, BIT(0) is the correct mask for the miscellaneous cause
when MSI-X is disabled.
📍 영향받는 시스템
Linux kernel (ngbe driver 사용 시스템)
⚔️ 공격 벡터
로컬 공격자가 특정 네트워크 인터럽트 설정을 유도하여 커널 패닉(Crash)을 발생시킴
🛡️ 대응 방법
Linux 커널을 최신 보안 패치가 적용된 버전으로 업데이트
🔧 검증 코드
출력된 커널 버전이 해당 취약점이 수정된 패치 버전 이후인지 확인