🇰🇷 한글 설명
Linux 커널의 MPTCP(MultiPath TCP) 구현에서 서브플로우 생성과 실패 과정 사이에 발생하는 레이스 컨디션 취약점입니다. 서브플로우 생성 시 상태 관리가 적절히 이루어지지 않아 발생하며, 이를 해결하기 위해 별도의 플래그와 락(lock)을 사용하여 상태를 추적하도록 수정되었습니다.
💡 쉬운 설명
여러 네트워크 경로를 동시에 사용하는 기술(MPTCP)에서 데이터 처리 순서가 꼬여 시스템 오류가 발생할 수 있는 문제입니다. 공격자가 이를 악용하면 시스템의 안정성을 해칠 수 있습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
mptcp: plug races between subflow fail and subflow creation
We have races similar to the one addressed by the previous patch between
subflow failing and additional subflow creation. They are just harder to
trigger.
The solution is similar. Use a separate flag to track the condition
'socket state prevent any additional subflow creation' protected by the
fallback lock.
The socket fallback makes such flag true, and also receiving or sending
an MP_FAIL option.
The field 'allow_infinite_fallback' is now always touched under the
relevant lock, we can drop the ONCE annotation on write.
📍 영향받는 시스템
MPTCP 기능이 활성화된 Linux 커널 버전
⚔️ 공격 벡터
네트워크 패킷 조작을 통해 서브플로우 생성과 실패를 동시에 유도하는 레이스 컨디션 공격
🛡️ 대응 방법
MPTCP 관련 레이스 컨디션 패치가 적용된 최신 Linux 커널로 업데이트
🔧 검증 코드
출력된 커널 버전이 보안 패치가 적용된 최신 버전인지 배포판 보안 공지를 통해 확인