🔍 CVE-2026-97573

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

🇰🇷 한글 설명

Linux 커널의 bnxt_en 드라이버에서 bnxt_rx_ring_reset() 함수가 버퍼 할당 실패를 적절히 처리하지 못하는 취약점이 발견되었습니다. 할당 실패 시 오류를 전파하지 않고 TPA를 재활성화함으로써, 초기화되지 않은 슬롯에 0인 DMA 주소가 할당될 수 있습니다.

💡 쉬운 설명

네트워크 장치가 데이터를 저장할 메모리 공간을 빌리는 데 실패했을 때, 이를 무시하고 작업을 계속 진행하여 문제가 발생합니다. 이로 인해 장치가 잘못된 메모리 주소를 참조하게 되어 시스템 오류나 보안 문제가 생길 수 있습니다.

🇺🇸 원문 (English)

In the Linux kernel, the following vulnerability has been resolved: bnxt_en: Handle buffer allocation failure in bnxt_rx_ring_reset() bnxt_rx_ring_reset() frees the ring buffers and then reallocates them, ignoring the result. bnxt_alloc_one_rx_ring() can fail in bnxt_alloc_one_tpa_info_data(), which returns -ENOMEM on the first failed allocation and leaves the remaining rxr->rx_tpa[] entries zeroed. The error isn't propagated up, so the loop in bnxt_rx_ring_reset continues and at the end the code re-enables TPA with partially unallocated rx_tpa array. This means that when the agg_id from hardware is mapped to a SW index in rxr->rx_tpa[], an uninitialized slot can be chosen which would hand a zero DMA address to the device. Fix this by falling back to a global reset, which is what the existing code already does when other functions fail, but unlike the other failure cases this particular failure has to return because TPA can't be re-enabled since the allocation failed.

📍 영향받는 시스템

Linux kernel (bnxt_en 드라이버를 사용하는 시스템)

⚔️ 공격 벡터

메모리 부족 상황을 유도하여 잘못된 DMA 주소 할당을 유발하는 방식

🛡️ 대응 방법

Linux 커널을 최신 보안 패치가 적용된 버전으로 업데이트하십시오.

🔧 검증 코드

출력된 커널 버전이 해당 취약점이 해결된 패치 버전 이후인지 확인하십시오.

Shell / Script
uname -r

📊 CVSS Vector String

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

💻 영향받는 소프트웨어

Linux Kernel