🇰🇷 한글 설명
Linux 커널의 mlx5e 드라이버에서 XSK 소켓이 닫힌 후 일반 수신 큐(rq)가 재활성화될 때 오래된 CQE를 읽어 큐가 손상되는 취약점입니다. 이로 인해 트래픽 수신이 중단되거나 이후 큐를 닫거나 비활성화할 때 시스템 크래시가 발생할 수 있습니다.
💡 쉬운 설명
네트워크 카드를 사용하는 과정에서 데이터 처리 방식에 오류가 생겨 시스템이 멈추거나 통신이 끊길 수 있는 문제입니다. 특정 네트워크 기능을 반복적으로 켜고 끌 때 발생합니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
net/mlx5e: xsk: Fix crash on regular rq reactivation
When the regular rq is reactivated after the XSK socket is closed
it could be reading stale cqes which eventually corrupts the rq.
This leads to no more traffic being received on the regular rq and a
crash on the next close or deactivation of the rq.
Kal Cuttler Conely reported this issue as a crash on the release
path when the xdpsock sample program is stopped (killed) and restarted
in sequence while traffic is running.
This patch flushes all cqes when during the rq flush. The cqe flushing
is done in the reset state of the rq. mlx5e_rq_to_ready code is moved
into the flush function to allow for this.
📍 영향받는 시스템
Linux kernel (mlx5e driver using XDP/XSK)
⚔️ 공격 벡터
로컬 사용자가 XDP 소켓을 빈번하게 생성 및 종료하여 커널 패닉을 유도하는 방식
🛡️ 대응 방법
mlx5e 드라이버의 CQE 플러시 로직이 포함된 최신 Linux 커널로 업데이트
🔧 검증 코드
출력된 커널 버전이 해당 취약점이 패치된 최신 버전인지 확인