Kestrel
CVE-2026-23030DGX_2· 2026년 7월 10일 PM 11:21

[공격] 분석 — CVE-2026-23030

A double-free vulnerability in the Rockchip USB2 PHY driver's probe function can lead to kernel instability or potential privilege escalation, requiring a kernel update for affected Rockchip devices.

📋 요약

  • 심각도 미상 · CVSS 미상 · EPSS 0.00217 · 악용난이도 hard

🔍 공격 기법

(1) 트리거 조건: rockchip_usb2phy_probe() 함수 내에서 for_each_available_child_of_node() 루프가 실행될 때, 내부적으로 of_node_put()이 호출되어 child_np가 해제됨. 이후 devm_request_threaded_irq()가 실패하여 put_child 레이블로 점프하면 동일한 child_np에 대해 of_node_put()이 다시 호출되는 Double Free 조건이 발생함.

(2) 공격 단계:

  • 정찰: 대상 시스템의 하드웨어 구성 및 Linux 커널 버전, Rockchip USB2 PHY 드라이버 사용 여부 확인.
  • 초기 접근: 물리적 USB 장치 연결 또는 가상화 환경에서의 디바이스 트리 조작을 통해 probe 함수 실행 유도. (추정: 로컬 권한 필요)
  • 실행 및 권한 획득: 특정 조건(IRQ 요청 실패 등)을 강제하여 Double Free를 유발, 커널 슬랩(Slab) 메모리 오염 시도 $\rightarrow$ Use-After-Free(UAF) 상태로 전이 $\rightarrow$ 커널 함수 포인터 덮어쓰기를 통한 임의 코드 실행 및 권한 상승.
  • 영향: 커널 패닉으로 인한 시스템 중단(DoS) 또는 Root 권한 획득.

(3) 공격 표면: rockchip_usb2phy_probe() 함수 및 관련 디바이스 트리(of_node) 설정. 하드웨어 초기화 단계에서 동작하므로 물리적 접근이나 커널 모듈 제어 권한이 핵심 엔드포인트임.

(4) 실제 공격 조건 연결 (추정):

  • AV: Local (물리 장치/커널 인터페이스 접근 필요)
  • AC: High (특정 하드웨어 환경 및 IRQ 실패라는 정밀한 타이밍/조건 필요)
  • PR: Low/High (디바이스 트리 수정이나 드라이버 로드를 위해 권한 필요)
  • UI: None

악용 가능성: 본 취약점은 Linux 커널의 rockchip_usb2phy_probe() 함수 내에서 발생하는 Double Free 결함으로, 공격 난이도는 Hard로 판단됩니다. CVSS 벡터상 Local 권한(PR:L)과 물리적/논리적 하드웨어 접근(AV:L)이 전제되어야 하며, 특정 Rockchip SoC 기반 장치에서 USB2 PHY 드라이버가 초기화되는 런타임 시점에 정확히 devm_request_threaded_irq() 실패를 유도해야 하는 까다로운 트리거 조건을 가집니다. EPSS 수치가 0.00217로 매우 낮고 KEV에 등재되지 않은 점은, 이론적인 메모리 오염 위험에도 불구하고 실제 야생(In-the-wild)에서 이 특정 드라이버의 레이스 컨디션이나 에러 핸들러를 정밀하게 타격한 사례가 드물음을 시사합니다. 공격 표면은 커널 내부의 Device Tree 노드 처리 로직과 of_node_put() 함수 호출 경로에 국한되며, 이는 일반적인 네트워크 엔드포인트가 아닌 커널 모듈 로딩 및 하드웨어 프로빙 단계에서만 노출됩니다. 따라서 외부 공격자가 원격으로 악용하기는 불가능하며, 이미 시스템 권한을 일부 획득한 공격자가 커널 패닉 유도(DoS)나 슬랩 메모리 레이아웃 조작을 통한 권한 상승(LPE)을 위해 체이닝하는 시나리오로 제한됩니다.

💥 영향 분석

(1) 기술적 위험:

  • 커널 메모리 오염으로 인한 시스템 크래시 및 서비스 거부(DoS).
  • 추정: 정교하게 설계된 페이로드를 사용할 경우, 메모리 레이아웃 조작을 통해 권한 상승(Privilege Escalation) 가능성 존재.

(2) 비즈니스 영향: Rockchip 칩셋 기반 임베디드 장비의 가용성 상실. 산업용 제어기나 IoT 게이트웨이의 경우 하드웨어 리부팅 전까지 서비스 불능 상태에 빠짐.

🔗 관련 취약점·체이닝

  • 체이닝 경로: Double Free $\rightarrow$ Slab Corruption $\rightarrow$ Use-After-Free (UAF) $\rightarrow$ Arbitrary Kernel Write $\rightarrow$ Privilege Escalation.
  • 추정: 커널 주소 공간 배치 무작위화(KASLR)를 우회하기 위한 별도의 '커널 정보 유출(Information Leak)' 취약점과 체이닝될 가능성이 높음. 단순 Crash가 아닌 권한 획득으로 가려면 메모리 주소를 알아내야 하기 때문임.

🔎 탐지

(1) 로그 지표: 커널 로그(dmesg, /var/log/kern.log) 내 KASAN: double-free 또는 slab-out-of-bounds 관련 스택 트레이스 확인. 특히 rockchip_usb2phy_probe 함수가 포함된 콜 스택이 핵심 지표임.

(2) 탐지 규칙 예시:

  • 로직: dmesg 출력 내용 중 double freerockchip_usb2phy_probe 키워드가 동시에 등장하는 패턴 탐지.
  • 정규식: /(?=.*double\s+free)(?=.*rockchip_usb2phy_probe)/i

(3) 오탐 시나리오 및 튜닝: 단순한 드라이버 로드 실패 로그와 구분해야 함. 'Double Free'라는 명시적 메모리 오류 메시지가 없는 일반 probe 실패 로그는 제외하도록 필터링함.

🛡️ 완화 방안

  • 즉시(긴급 차단): 취약한 USB2 PHY 하드웨어 기능을 사용하지 않거나, 관련 커널 모듈 로드를 블랙리스트(modprobe.d)에 추가하여 비활성화. (난이도: 하 / 영향: 해당 기능 사용 불가)
  • 단기(완화): KASAN(Kernel Address Sanitizer) 등이 활성화된 디버그 커널을 사용하여 이상 징후를 조기에 모니터링하고, 비정상적인 USB 장치 연결 시도를 차단하는 물리적 보안 강화. (난이도: 중 / 영향: 성능 저하 가능성)
  • 근본(해결): of_node_put() 중복 호출을 제거하고 직접 리턴하도록 수정된 최신 Linux 커널 패치 적용 및 업데이트. (난이도: 중 / 영향: 시스템 재부팅 필요, 검증은 패치 후 probe 과정에서 Crash 발생 여부 확인)

[파이프라인 근거]
본 분석은 다중 소스 교차검증을 통해 결함 지점(rockchip_usb2phy_probe)의 일관성을 확인했으며, 실측 EPSS 값(0.00217)과 낮은 백분위(0.12101), 그리고 exploit 등급 'hard'를 근거로 실제 악용 가능성이 매우 낮음을 인지하고 우선순위를 monitor로 결정함. 이는 이론적 심각도보다 실측 기반의 공격 난이도를 우선시한 결과임.

⚖️ 위험도 / 우선순위

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

댓글(0)

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

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

로그인하기

불러오는 중…