🔍 CVE-2017-1000371

7.8
CVSS Score
HIGH
2017-06-19
2026-05-13 00:24
✅ 완료

🇰🇷 한글 설명

Linux Kernel 4.11.5의 offset2lib 패치에서 발견된 취약점으로, RLIMIT_STACK이 무제한으로 설정되고 1GB 메모리가 할당되면 스택이 0x80000000까지 확장되어 PIE 바이너리와의 거리가 좁혀진다. 스택 가드 페이지를 우회하여 메모리 보호 메커니즘을 무력화할 수 있다.

💡 쉬운 설명

Linux 시스템에서 메모리 관리 설정이 잘못되면 스택 공간이 비정상적으로 커진다. 이를 이용하면 공격자가 보안 보호기능을 무시하고 시스템에 무단 접근할 수 있다.

🇺🇸 원문 (English)

The offset2lib patch as used by the Linux Kernel contains a vulnerability, if RLIMIT_STACK is set to RLIM_INFINITY and 1 Gigabyte of memory is allocated (the maximum under the 1/4 restriction) then the stack will be grown down to 0x80000000, and as the PIE binary is mapped above 0x80000000 the minimum distance between the end of the PIE binary's read-write segment and the start of the stack becomes small enough that the stack guard page can be jumped over by an attacker. This affects Linux Kernel version 4.11.5. This is a different issue than CVE-2017-1000370 and CVE-2017-1000365. This issue appears to be limited to i386 based systems.

📍 영향받는 시스템

Linux Kernel 4.11.5, i386(32비트) 아키텍처 기반 시스템

⚔️ 공격 벡터

RLIMIT_STACK 무제한 상태에서 1GB 메모리 할당으로 스택 확장, 스택 가드 페이지 우회를 통한 메모리 오버플로우 트리거

🛡️ 대응 방법

Linux Kernel을 4.11.5 이후 패치 버전으로 즉시 업그레이드하거나 RLIMIT_STACK을 제한된 값으로 설정

🔧 검증 코드

커널 버전 4.11.5 확인, ulimit -s 값이 unlimited인 경우 위험, stack_guard_gap이 0이면 취약

Shell / Script
uname -r && ulimit -s && cat /proc/sys/kernel/stack_guard_gap 2>/dev/null

📊 CVSS Vector String

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

💻 영향받는 소프트웨어

Linux Kernel