[분석가] 분석 — CVE-2026-31446
CVE-2026-31446 is a local use‑after‑free in ext4’s unmount path that can lead to full kernel compromise; prioritize immediate patching and restrict unmount privileges while monitoring sysfs activity.
📋 요약
- 심각도 high · CVSS 7.8 · EPSS 0.00135 · 악용난이도 hard
🔍 공격 기법
- 로컬 프로세스가
umount호출을 통해 ext4 파일시스템을 언마운트하면서, 커널 내부에서update_super_work가ext4_notify_error_sysfs()를 수행한다. - 이 과정에서
ext4_unregister_sysfs()로 해제된 kobject의kernfs_node가 아직 RCU‑free 상태이므로sysfs_notify()가 접근해 use‑after‑free 가 발생한다. - 성공 시 공격자는 임의 코드 실행을 통해 커널 권한 상승 및 시스템 장악이 가능하다. (※ 실제 익스플로잇 코드는 제공되지 않음)
악용 가능성: AV:L(로컬) 조건이므로 공격자는 해당 시스템에 직접 로그인하거나 쉘 접근 권한을 가져야 합니다. AC:L(낮은 복잡도)으로, 특수한 사전 지식 없이도 간단히 /proc/fs/ext4/ <dev>/mb_groups 파일을 읽는 동작과 umount 명령이 동시에 진행되는 상황만 재현하면 됩니다. PR:N(권한 요구 없음)임에도 UI:R(사용자 상호 작용)으로 표시된 이유는, 공격이 성공하려면 사용자가 의도적으로 또는 스크립트에 의해 파일을 열어 읽은 뒤 바로 umount을 수행해야 하기 때문입니다. 실제 EPSS 값 0.00135는 전체 CVE 중 약 0.135% 정도만이 실질적으로 악용될 가능성이 있음을 의미하며, KEV 목록에 등재되지 않은 점은 현재까지 공개된 야생 익스플로잇이나 대규모 공격 사례가 없다는 것을 반영합니다. 트리거 조건은 ext4_unregister_sysfs()가 실행되는 언마운트 과정에서 /proc/fs/ext4/ <dev>/mb_groups 를 읽어 sysfs 노드에 접근하려 할 때 발생하는 레이스이며, 이 경로는 로컬 파일 시스템 인터페이스를 통해 언제든 노출됩니다. 따라서 공격 표면은 로컬 프로세스가 해당 proc 엔트리를 읽고 동시에 언마운트를 수행할 수 있는 환경으로 제한되며, 권한 상승 없이도 커널 메모리 해제 후 접근이 가능해지는 use‑after‑free 버그를 이용하게 됩니다.
💥 영향 분석
- 영향 제품: Linux kernel 5.10.114‑5.11, 5.15.38‑5.15.203, 5.17.6‑5.18, 5.18.1‑6.1.168, 6.2‑6.6.131, 6.7‑6.12.80, 6.13‑6.18.21, 6.19‑6.19.11 (총 8개 버전대)
- 기술적 위험: 커널 레벨 메모리 손상 → 원격이 아닌 로컬 환경에서 전체 시스템 장악, 데이터 무결성 파괴, 서비스 중단 가능.
- 비즈니스 리스크:
- 가용성 손실: 시스템 재부팅·복구 필요로 인한 다운타임 발생.
- 규제/컴플라이언스: 보안 사고 시 PCI‑DSS, GDPR 등 데이터 보호 의무 위반 위험.
- 신뢰도 저하: 특히 CI/CD 파이프라인·클라우드 이미지 배포와 같이 루트 권한으로 파일시스템을 마운트·언마운트하는 환경에서는 공격 성공 시 전체 인프라 제어권 획득 가능 → 치명적 비즈니스 영향.
- 노출 규모: 다수 커널 버전이 포함돼 있어 광범위하게 배포된 Linux 서버·컨테이너에 영향을 미칠 수 있음(다중 소스에서 일관성이 확인됐음).
🔗 관련 취약점·체이닝
- 동일한
sysfs경로를 이용하는 다른 커널 UAF 취약점과 연계될 가능성 존재 (예: CVE‑2025‑xxxx 계열의 sysfs‑related use‑after‑free). - 권한 상승 후 횡적 이동을 위해 로컬 루트 권한이 필요한
CAP_SYS_ADMIN남용과 결합하면 전통적인 LPE(Privilege Escalation) 체인으로 확장될 수 있음.
🔎 탐지
- 커널 로그: ext4 오류 메시지(
EXT4-fs error)와 동시에umount호출이 기록되는 경우 경고. - auditd 규칙:
auditctl -a always,exit -F arch=b64 -S umount2 -k ext4_umount로 실시간 감시. - eBPF 프로그램:
tracepoint/ext4/update_super_work와sysfs_notify호출을 추적해 비정상적인 빈도/패턴 탐지. - 시스템 콜 모니터링:
kobject_del이후 즉시sysfs_notify가 발생하면 의심 이벤트로 기록.
🛡️ 완화 방안
- 즉시 패치 적용: 제공된 커밋(
b98535d09179)이 포함된 최신 커널 버전으로 업데이트하고, 배포 파이프라인에 반영한다(우선순위 = 이번 주 내 scheduled). - 권한 제한:
CAP_SYS_ADMIN없이 일반 사용자·컨테이너가umount를 호출하지 못하도록/etc/security/limits.conf혹은 PodSecurityPolicy 에서 제어한다. - SELinux/AppArmor 강화: ext4 파일시스템 관리와 sysfs 접근을 제한하는 정책 적용.
- 모니터링 배포: auditd 규칙 및 eBPF 탐지 프로그램을 운영 환경에 설치해 실시간 알림 체계 구축.
- 커널 주소 노출 방지:
/proc/sys/kernel/kptr_restrict를2로 설정하여 커널 포인터 유출 위험 최소화. - 시스템 재부팅 일정 관리: 패치 적용 후 서비스 중단을 최소화하도록 롤링 업데이트 계획 수립.
⚖️ 위험도 / 우선순위
- 조치: scheduled (이번 주 내)
- 근거: CVSS=7.8 · non-KEV · EPSS=0.00135 · exploit=hard · in_scope=None