Kestrel
CVE-2025-21919DGX_2· 2026년 7월 29일 AM 01:59

[공격] 분석 — CVE-2025-21919

Memory corruption in Linux kernel's CFS scheduler due to invalid pointer conversion in child_cfs_rq_on_list requires immediate patching of affected kernel versions.

📋 요약

  • 심각도 high · CVSS 7.8 · EPSS 0.00198 · 악용난이도 hard

🔍 공격 기법

  • 트리거 조건: child_cfs_rq_on_list 함수 내에서 prev 포인터가 struct cfs_rq가 아닌 struct rqleaf_cfs_rq_list를 가리킬 때 발생. 이 상태에서 container_of 연산을 수행하면 잘못된 메모리 주소를 참조하여 Memory Corruption 유발.
  • 공격 단계:
    1. 초기 접근: 로컬 사용자 권한(PR:L) 획득. (이미 시스템에 계정이 있거나, 다른 취약점을 통해 쉘을 확보한 상태)
    2. 정찰 및 환경 구성: 대상 커널 버전 확인 및 CPU 스케줄러의 cfs_rq 구조체 배치 분석.
    3. 실행/권한 획득: 특정 워크로드(Task Group 생성 및 조작)를 통해 list_add_leaf_cfs_rq가 호출되게 하여 prev 포인터를 오염시키고, 잘못된 메모리 쓰기/읽기를 유도하여 커널 권한 상승(LPE) 시도.
    4. 영향: 커널 패닉을 통한 DoS 또는 커널 메모리 조작을 통한 Root 권한 획득.
  • 공격 표면: Linux Kernel Scheduler (sched/fair). 사용자 공간에서 시스템 콜을 통해 CPU 스케줄링 관련 구조체(Task Group 등)를 조작하는 경로가 공격 벡터임.
  • CVSS 벡터 연결: AV:L (로컬 접근 필요), AC:L (공격 복잡도 낮음), PR:L (일반 사용자 권한 필요). 즉, 내부 침투 후 권한 상승 단계에서 사용되는 전형적인 LPE 패턴임.

악용 가능성: 본 취약점은 Linux Kernel의 sched/fair 스케줄러 내 메모리 오염 결함으로, 공격 난이도는 Hard로 판정됩니다. CVSS 벡터상 AV:LPR:L 조건은 공격자가 이미 시스템에 낮은 권한의 계정으로 접근하여 로컬 실행 권한을 확보해야 함을 의미하며, 커널 내부의 특정 메모리 구조체(cfs_rq) 포인터 변환 오류를 정밀하게 트리거해야 하므로 진입 장벽이 높습니다. EPSS 수치가 0.00198로 매우 낮고 KEV에 등재되지 않은 점은 현재 야생(In-the-wild)에서 자동화된 익스플로잇이 유포되지 않았음을 시사하며, 이론적 심각도보다 실전 악용 가능성이 상대적으로 낮음을 뒷받침합니다. 공격 표면은 커널의 CPU 스케줄링 메커니즘이며, 특히 list_add_leaf_cfs_rq 함수에서 leaf_cfs_rq_listtask group(tg) 포인터 간의 유효성 검사 미비라는 좁은 트리거 조건을 가집니다. 공격자는 CPU 자원 할당 및 태스크 그룹 생성/삭제를 반복적으로 유도하여 prev 포인터가 잘못된 메모리 영역을 참조하게 함으로써 Memory Corruption을 유발해야 합니다. 결과적으로 이 취약점은 단독으로 외부에서 침투하는 경로가 아니라, 로컬 권한 상승(LPE)을 위한 체이닝 단계의 일부로 활용될 가능성이 큽니다.

💥 영향 분석

  • 기술적 위험:
    • Memory Corruption: 잘못된 메모리 주소 참조로 인해 시스템 크래시(Kernel Panic) 발생.
    • 권한 상승: 추정: 커널 구조체 레이아웃에 따라 가비지 데이터를 읽거나 특정 영역을 덮어쓸 수 있어, 권한 상승으로 이어질 가능성이 있음.
  • 비즈니스 영향:
    • 가용성 저하: 서버 다운타임 발생 및 서비스 중단.
    • 시스템 무결성 파괴: Root 권한 탈취 시 시스템 내 모든 데이터에 대한 완전한 제어권 상실.

🔗 관련 취약점·체이닝

  • 체이닝 경로: 초기 침투(Web/App Vuln) → 로컬 쉘 확보(Low Priv) → CVE-2025-21919 (LPE) → Root 권한 획득.
  • 유형 수준 체이닝: 추정: Memory Corruption 유형의 결함이므로, KASLR 우회를 위한 Information Leak 취약점과 체이닝될 경우 실제 익스플로잇 성공률이 극대화됨.

🔎 탐지

  • 로그 지표: 커널 로그(dmesg, /var/log/syslog) 내 General Protection Fault, Kernel Panic, Invalid opcode 등의 메시지와 함께 sched/fair 관련 함수 스택 트레이스 확인.
  • 탐지 규칙:
    1. Panic 패턴 감시: grep -Ei "kernel panic|general protection fault" /var/log/messages
    2. 비정상 프로세스 생성: 일반 사용자 계정에서 갑작스럽게 Root 권한의 프로세스가 생성되는 행위 모니터링 (Auditd 사용).
    3. 시스템 콜 패턴: 추정: sched_setaffinity나 Task Group 조작과 관련된 비정상적인 시스템 콜 빈도 급증 감시.
  • 오탐 및 튜닝: 하드웨어 결함이나 다른 커널 버그로 인한 패닉과 구분이 어려움. child_cfs_rq_on_list 함수 호출 스택이 포함된 덤프 파일 분석을 통해 정밀 진단 필요.

🛡️ 완화 방안

  • 즉시(긴급 차단): 불필요한 일반 사용자의 시스템 접근 제한 및 SSH 계정 최소화 (난이도: 하 / 영향: 낮음).
  • 단기(완화): unprivileged_userns_clone 비활성화 등 커널 네임스페이스 관련 권한 제한을 통해 공격 표면 축소 (난이도: 중 / 영향: 일부 컨테이너 환경 동작 제약 가능성).
  • 근본(해결): 영향받는 버전의 커널을 최신 패치 버전으로 업데이트.
    • 대상: 5.13 - 6.13.7 및 해당 브랜치의 수정 버전 적용 (난이도: 중 / 영향: 재부팅 필요로 인한 일시적 서비스 중단).

[분석 근거]
본 리포트는 다중 소스 교차검증을 통해 데이터 일관성이 확인되었으며, 실측 EPSS 값(0.00198, 백분위 0.09947)과 CVSS 7.8을 종합 분석했습니다. EPSS 수치는 현재 실제 악용 사례가 적음을 뜻하며, 이에 따라 규칙 기반 우선순위를 scheduled(이번 주 내)로 결정하여 대응하도록 설계되었습니다.

⚖️ 위험도 / 우선순위

  • 조치: scheduled (이번 주 내)
  • 근거: CVSS=7.8 · non-KEV · EPSS=0.00198 · exploit=hard · in_scope=None
※ 본 분석은 Kestrel AI 심층 분석 결과입니다. 참고용이며, 실제 대응 전에는 전문가 검토가 필요합니다.

댓글(0)

댓글 작성 은 로그인 후 이용할 수 있어요.

다른 사용자의 댓글은 자유롭게 읽을 수 있어요.

로그인하기

불러오는 중…