🇰🇷 한글 설명
Linux 커널의 MPTCP 구성 요소에서 mptcp_rcv_space_adjust 함수 내 서브플로우 생성 시 레이스 컨디션 취약점이 발견되었습니다. 이미 연결된 서브플로우에서 데이터를 수신할 때 잘못된 상태에서 tcp_cleanup_rbuf()가 호출되어, 새로 생성된 서브플로우에서 0으로 나누기 오류(Divide by Zero)가 발생할 수 있습니다.
💡 쉬운 설명
여러 네트워크 경로를 사용하는 기능에서 데이터 처리 순서가 꼬여 시스템이 계산 오류를 일으키는 문제입니다. 이로 인해 시스템이 갑자기 멈추거나 충돌할 수 있습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
mptcp: cope racing subflow creation in mptcp_rcv_space_adjust
Additional active subflows - i.e. created by the in kernel path
manager - are included into the subflow list before starting the
3whs.
A racing recvmsg() spooling data received on an already established
subflow would unconditionally call tcp_cleanup_rbuf() on all the
current subflows, potentially hitting a divide by zero error on
the newly created ones.
Explicitly check that the subflow is in a suitable state before
invoking tcp_cleanup_rbuf().
📍 영향받는 시스템
Linux Kernel (MPTCP 기능이 활성화된 버전)
⚔️ 공격 벡터
네트워크를 통해 조작된 데이터 패킷을 전송하여 특정 타이밍에 레이스 컨디션을 유도
🛡️ 대응 방법
Linux 커널을 최신 보안 패치가 적용된 버전으로 업데이트
🔧 검증 코드
출력된 커널 버전이 해당 취약점이 해결된 패치 버전 이후인지 확인