🔍 CVE-2025-38001

7.8
CVSS Score
HIGH
2025-06-06
2026-10-15 22:18
✅ 완료

🇰🇷 한글 설명

Linux 커널의 HFSC 스케줄러에서 특정 조건(HFSC_RSC 플래그 사용 및 NETEM 결합) 시 클래스가 eltree에 중복 삽입되는 취약점입니다. 이로 인해 무한 루프가 발생하거나 Use-After-Free(UAF) 취약점이 발생하여 시스템 안정성을 해칠 수 있습니다.

💡 쉬운 설명

네트워크 데이터 처리 순서를 정하는 규칙에 오류가 있어, 데이터가 처리되는 과정에서 컴퓨터가 무한 루프에 빠지거나 메모리 오류를 일으킬 수 있습니다. 공격자가 이를 악용하면 시스템을 멈추게 하거나 보안을 무너뜨릴 수 있습니다.

🇺🇸 원문 (English)

In the Linux kernel, the following vulnerability has been resolved: net_sched: hfsc: Address reentrant enqueue adding class to eltree twice Savino says: "We are writing to report that this recent patch (141d34391abbb315d68556b7c67ad97885407547) [1] can be bypassed, and a UAF can still occur when HFSC is utilized with NETEM. The patch only checks the cl->cl_nactive field to determine whether it is the first insertion or not [2], but this field is only incremented by init_vf [3]. By using HFSC_RSC (which uses init_ed) [4], it is possible to bypass the check and insert the class twice in the eltree. Under normal conditions, this would lead to an infinite loop in hfsc_dequeue for the reasons we already explained in this report [5]. However, if TBF is added as root qdisc and it is configured with a very low rate, it can be utilized to prevent packets from being dequeued. This behavior can be exploited to perform subsequent insertions in the HFSC eltree and cause a UAF." To fix both the UAF and the infinite loop, with netem as an hfsc child, check explicitly in hfsc_enqueue whether the class is already in the eltree whenever the HFSC_RSC flag is set. [1] https://web.git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=141d34391abbb315d68556b7c67ad97885407547 [2] https://elixir.bootlin.com/linux/v6.15-rc5/source/net/sched/sch_hfsc.c#L1572 [3] https://elixir.bootlin.com/linux/v6.15-rc5/source/net/sched/sch_hfsc.c#L677 [4] https://elixir.bootlin.com/linux/v6.15-rc5/source/net/sched/sch_hfsc.c#L1574 [5] https://lore.kernel.org/netdev/8DuRWwfqjoRDLDmBMlIfbrsZg9Gx50DHJc1ilxsEBNe2D6NMoigR_eIRIG0LOjMc3r10nUUZtArXx4oZBIdUfZQrwjcQhdinnMis_0G7VEk=@willsroot.io/T/#u

📍 영향받는 시스템

Linux Kernel (HFSC 및 NETEM 스케줄러를 사용하는 환경)

⚔️ 공격 벡터

HFSC_RSC 플래그를 사용하는 HFSC와 NETEM/TBF를 조합하여 eltree에 클래스를 중복 삽입함으로써 UAF 유도

🛡️ 대응 방법

HFSC_RSC 플래그가 설정된 경우 hfsc_enqueue 과정에서 클래스가 이미 eltree에 존재하는지 명시적으로 확인하도록 커널 패치 적용

🔧 검증 코드

현재 실행 중인 커널 버전을 확인하여 해당 취약점이 해결된 최신 보안 패치가 적용되었는지 확인합니다.

Shell / Script
uname -r

📊 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