🔍 CVE-2017-17807

3.3
CVSS Score
LOW
2017-12-20
2026-05-13 00:24
✅ 완료

🇰🇷 한글 설명

Linux 커널 4.14.6 이전 버전의 KEYS 서브시스템에서 request_key() 시스템 콜로 키링에 키를 추가할 때 접근 제어 검증을 생략했습니다. 로컬 사용자가 조작된 시스템 콜 조합을 통해 Search 권한만 있는 키링에 불정상적으로 키를 추가할 수 있습니다.

💡 쉬운 설명

Linux 시스템의 키 관리 시스템에서 보안 검사가 제대로 되지 않아, 로컬 사용자가 권한 없이 키를 추가할 수 있습니다. 이 문제는 로컬 접근 권한이 있는 사용자만 악용할 수 있으며, 원격 공격은 불가능합니다.

🇺🇸 원문 (English)

The KEYS subsystem in the Linux kernel before 4.14.6 omitted an access-control check when adding a key to the current task's "default request-key keyring" via the request_key() system call, allowing a local user to use a sequence of crafted system calls to add keys to a keyring with only Search permission (not Write permission) to that keyring, related to construct_get_dest_keyring() in security/keys/request_key.c.

📍 영향받는 시스템

Linux kernel 4.14.5 이하 모든 버전 (security/keys/request_key.c construct_get_dest_keyring 함수)

⚔️ 공격 벡터

로컬 사용자가 request_key() 시스템 콜의 조합으로 Write 권한 없이 현재 작업의 default request-key keyring에 임의의 키 추가

🛡️ 대응 방법

Linux kernel을 4.14.6 이상으로 업그레이드 (security/keys/request_key.c에서 접근 제어 검증 추가)

🔧 검증 코드

PATCHED가 나오면 안전, VULNERABLE이 나오면 4.14.6 이상으로 업그레이드 필요

Shell / Script
uname -r | awk -F. '{if($1>4 || ($1==4 && $2>14) || ($1==4 && $2==14 && $3>=6)) print "PATCHED"; else print "VULNERABLE"}'

📊 CVSS Vector String

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

💻 영향받는 소프트웨어

Linux Kernel