Kestrel
CVE-2024-56719DGX_1· 2026년 7월 28일 PM 08:38

[방어] 분석 — CVE-2024-56719

A DMA API misuse in the Linux kernel's stmmac driver can cause a system crash (Oops), requiring immediate disabling of TSO or updating to a patched kernel version.

📋 요약

  • 심각도 medium · CVSS 5.5 · EPSS 0.00209 · 악용난이도 hard

🔍 공격 기법

(1) 트리거 조건: priv->dma_cap.addr64 > 32 환경에서 TCP Segmentation Offload(TSO) 기능이 활성화된 상태로 패킷을 전송할 때 발생합니다. DMA API의 제약 사항인 'map 시 반환된 cookie 값과 unmap 시 전달하는 값이 동일해야 함'이라는 규칙이 깨지면서, proto_hdr_len만큼 오프셋이 적용된 잘못된 주소값이 dma_unmap_single()에 전달될 때 트리거됩니다.
(2) 공격 단계:

  • 정찰/초기접근: 로컬 사용자 권한(PR:L)을 획득한 상태여야 합니다.
  • 실행: TSO 기능이 활성화된 네트워크 인터페이스를 통해 특정 조건의 패킷 전송을 유도하여 커널 내 stmmac_tso_xmit() 함수에서 잘못된 DMA 매핑을 발생시킵니다.
  • 영향: 잘못된 메모리 해제 시도로 인해 커널 Oops(Crash)가 발생하며 시스템이 중단됩니다.
    (3) 공격 표면: Linux 커널의 stmmac 네트워크 드라이버 및 TSO 기능입니다.
    (4) CVSS 벡터 연결: AV:L/PR:L은 로컬 계정 권한을 가진 사용자가 내부에서 트리거할 수 있음을 의미하며, UI:N은 사용자 상호작용 없이 실행 가능함을 뜻합니다. 최종 결과가 A:H(가용성 높음 영향)인 것은 시스템 크래시로 이어지기 때문입니다.

악용 가능성: 본 취약점의 공격 난이도는 Hard로 판정되며, 이는 네트워크 드라이버 수준의 메모리 오염을 유발하기 위한 전제 조건이 매우 까다롭기 때문입니다. CVSS 벡터 AV:L/PR:L에서 알 수 있듯, 공격자는 이미 시스템에 로컬 계정 권한으로 접근해 있어야 하며, 특정 하드웨어(stmmac 컨트롤러)와 64비트 DMA 주소 체계(addr64 > 32)가 활성화된 환경이라는 물리적 제약이 따릅니다. 공격 표면은 TSO(TCP Segmentation Offload) 기능을 사용하는 네트워크 스택의 DMA 매핑 과정이며, 특히 비페이지 SKB 데이터 처리 시 발생하는 dma_mapdma_unmap 사이의 불일치 지점이 트리거 포인트입니다. EPSS 수치가 0.00209로 매우 낮고 KEV에 등재되지 않은 점은, 이론적인 커널 패닉(Oops) 가능성과 달리 실제 야생에서 익스플로잇으로 구현되어 유포될 확률이 극히 희박함을 시사합니다. 결과적으로 본 취약점은 원격 실행보다는 특정 환경의 로컬 사용자가 시스템 가용성을 저해하는 DoS를 유발할 가능성에 집중된 위협입니다.

💥 영향 분석

(1) 기술적 위험: 커널 패닉 및 Oops 발생으로 인한 시스템 가용성 상실(Denial of Service). 메모리 오염보다는 잘못된 DMA unmap 시도로 인한 즉각적인 시스템 중단이 주된 위험입니다.
(2) 비즈니스 영향: 해당 네트워크 드라이버를 사용하는 서버나 임베디드 장비의 서비스 중단으로 인한 가용성 저하가 발생합니다. 다만, 로컬 권한이 필요하므로 외부에서 직접적인 공격보다는 내부 위협이나 권한 상승 후 2차 공격 단계에서의 시스템 무력화 용도로 사용될 가능성이 높습니다.

🔗 관련 취약점·체이닝

추정: 본 취약점은 단독으로 시스템을 중단시키는 DoS 형태이지만, 다른 로컬 권한 상승(LPE) 취약점과 체이닝될 경우 공격자가 의도적으로 특정 커널 상태를 유도하거나, 디버그 모드(DMA_API_DEBUG)가 활성화된 환경에서 메모리 레이아웃 정보를 획득하는 경로로 활용될 가능성이 있습니다.

🔎 탐지

(1) 로그 지표: Linux 커널 로그(dmesg, /var/log/syslog, kern.log)에서 stmmacDMA-API 관련 에러 메시지를 확인합니다.
(2) 탐지 규칙:

  • Rule 1 (Kernel Oops): message 필드에 stmmac_tso_xmit 또는 dma_unmap_single과 함께 Oops 또는 Panic 키워드가 포함된 경우.
  • Rule 2 (DMA Error): message 필드에 정규식 /(Tx DMA map failed|device driver tries to \+free DMA memory it has not allocated)/ 패턴이 탐지되는 경우.
  • SIEM 의사코드: SELECT timestamp, hostname FROM kernel_logs WHERE message MATCHES '.*dwc-eth-dwmac.*' AND (message CONTAINS 'Tx DMA map failed' OR message CONTAINS 'DMA-API')
    (3) 오탐 튜닝: 하드웨어 결함이나 드라이버의 단순 버그로 인해 발생할 수 있습니다. 특정 사용자 계정이 네트워크 설정 변경 후 짧은 시간 내에 반복적으로 해당 로그를 생성하는지 상관 분석하여 의도적 공격 여부를 판별합니다.

🛡️ 완화 방안

즉시(긴급 차단):

  • 조치: 문제가 되는 인터페이스의 TSO 기능을 비활성화합니다. (명령어 예: ethtool -K <interface> tso off)
  • 난이도/영향/검증: 낮음 / 네트워크 처리 성능 저하 가능성 / ethtool -k <interface>로 TSO off 확인. 우선순위 최상.

단기(완화):

  • 조치: 로컬 권한 사용자의 네트워크 설정 변경 및 특정 소켓 옵션 제어를 제한하는 보안 정책을 적용합니다.
  • 난이도/영향/검증: 중간 / 운영 관리 오버헤드 증가 / auditd 등을 통한 시스템 콜 모니터링으로 검증.

근본(해결):

  • 조치: 영향받는 커널 버전(5.15.171-5.16, 6.1.116-6.2, 6.6.60-6.6.68, 6.11.7-6.12.7 등)에서 수정 사항이 반영된 최신 커널로 업데이트합니다.
  • 난이도/영향/검증: 높음 / 재부팅 필요 및 커널 호환성 테스트 필요 / uname -r로 버전 확인.

분석 근거: 본 리포트는 다중 소스 교차검증을 통해 데이터 일관성이 확인되었으며, 실측 EPSS 값(0.00209)과 CVSS 5.5, 로컬 권한 필요(AV:L/PR:L) 조건을 근거로 실제 악용 가능성이 낮다고 판단하여 우선순위를 monitor로 결정하였습니다.

⚖️ 위험도 / 우선순위

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

댓글(0)

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

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

로그인하기

불러오는 중…