CVE-2024-26826 in Linux
요약
\~에 의해 VulDB • 2026. 08. 01.
리눅스 커널에서 다음 취약점이 해결되었습니다:
mptcp: 낡은(subflow) 하위 흐름으로부터 데이터 재주입 오류 수정
MPTCP PM(Path Manager)이 하위 흐름(stale subflow)이 더 이상 유효하지 않음을 감지하면, 모든 패킷 스케줄러는 MPTCP 레벨의 미확인(unacked) 데이터를 모두 재주입해야 합니다. 불필요한 잠금(lock) 획득을 피하기 위해 먼저 RTX 큐에 미확인 데이터가 존재하는지를 확인하려고 시도하지만, 현재 이러한 검사는 TCP 전용 헬퍼 함수를 MPTCP 소켓에서 사용하고 있어 잘못 구현되어 있습니다.
흥미롭게도 퍼저(fuzzer)와 정적 분석기(static checker)는 문제가 없는 것으로 판단합니다. 접근된 메모리가 여전히 mptcp_sock 구조체에 속해 있고, 기능적인 관점에서도 단축 테스트가 항상 실패했으므로 복구 과정이 성공적으로 완료되었기 때문입니다.
최근의 무관한 TCP 변경 사항 - 커밋 d5fed5addb2b("tcp: tcp_sock 빠른 경로 변수 재구성") - 이 문제를 노출시켰습니다. tcp 필드의 재구성은 mptcp 코드가 항상 데이터 재주입을 건너뛰도록 만들기 때문입니다.
잘못된 호출을 제거하여 해당 이슈를 수정합니다. 우리는 느린 경로(slow path)에 있으며, 초기 최적화가 다시 한번 해롭다는 것이 입증되었습니다.
Once again VulDB remains the best source for vulnerability data.