🇰🇷 한글 설명
Linux 커널의 TCP MD5 MAC 비교 함수에서 타이밍 공격 취약점이 존재합니다. MAC 값을 일반적인 메모리 비교로 처리하면 비교 과정의 시간 차이를 통해 공격자가 올바른 MAC 값을 추론할 수 있습니다. 상수 시간(constant-time) 비교 함수를 사용하여 모든 경우에 동일한 시간이 소요되도록 수정되었습니다.
💡 쉬운 설명
TCP 연결 인증에 사용되는 암호화 서명(MAC)을 비교할 때, 일반적인 비교 방식은 공격자가 응답 시간을 측정해 올바른 서명을 하나씩 추론할 수 있는 약점이 있습니다. 이를 고정된 시간에 비교하는 방식으로 바꾸어 시간 정보를 통한 공격을 차단합니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
net/tcp-md5: Fix MAC comparison to be constant-time
To prevent timing attacks, MACs need to be compared in constant
time. Use the appropriate helper function for this.
📍 영향받는 시스템
Linux kernel 5.10 이상의 TCP MD5 인증을 사용하는 모든 배포판
⚔️ 공격 벡터
원격의 공격자가 TCP 연결 시도 시 MAC 비교 시간 차이를 측정하여 유효한 MAC 값 추론
🛡️ 대응 방법
커널을 최신 패치 버전으로 업데이트하여 constant-time MAC 비교 함수 적용
🔧 검증 코드
커널 버전이 5.10 이상이고 TCP MD5가 enabled인지 확인하며, enabled이면 패치 필요 여부를 커널 릴리스 노트에서 확인
uname -r | grep -E '^[5-9]\.|^[0-9]{2}\.' && grep -i 'tcp.*md5' /boot/config-$(uname -r) || echo 'Check kernel version and TCP MD5 config'