🔍 CVE-2016-10229

9.8
CVSS Score
CRITICAL
2017-04-04
2026-05-13 00:24
✅ 완료

🇰🇷 한글 설명

Linux 커널 4.5 이전 버전의 UDP 처리 로직에서 MSG_PEEK 플래그를 사용한 recv 시스템 콜 실행 중 체크섬 검증이 제대로 수행되지 않아 메모리 손상이 발생합니다. 이를 통해 원격 공격자가 커널 메모리에 접근하여 임의 코드를 실행할 수 있습니다.

💡 쉬운 설명

인터넷을 통해 받는 데이터를 확인할 때(MSG_PEEK), 커널이 데이터 무결성을 제대로 검증하지 않아 공격자가 나쁜 코드를 실행시킬 수 있습니다. 원격에서 특수한 UDP 패킷을 보내기만 하면 되므로 피해자의 추가 동작이 필요 없습니다.

🇺🇸 원문 (English)

udp.c in the Linux kernel before 4.5 allows remote attackers to execute arbitrary code via UDP traffic that triggers an unsafe second checksum calculation during execution of a recv system call with the MSG_PEEK flag.

📍 영향받는 시스템

Linux kernel < 4.5 (모든 아키텍처, UDP 통신을 허용하는 모든 시스템)

⚔️ 공격 벡터

원격 공격자가 특수 조작된 UDP 패킷을 대상 시스템으로 전송하여 MSG_PEEK 플래그 처리 시 메모리 손상 유도

🛡️ 대응 방법

Linux 커널을 4.5 이상으로 업그레이드하거나 udp.c 패치 적용

🔧 검증 코드

VULNERABLE이 출력되면 커널이 취약하고 패치 필요, 아무것도 출력되지 않으면 커널 4.5 이상이므로 안전함

Shell / Script
uname -r | grep -oE '^[0-9]+\.[0-9]+' | awk -F. '{if($1<4||($1==4&&$2<5)) print "VULNERABLE"}'

📊 CVSS Vector String

CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H

💻 영향받는 소프트웨어

Linux Kernel