🇰🇷 한글 설명
Linux 커널의 net_sched hfsc 구성 요소에서 netem 자식 qdisc를 사용하는 클래스에 Use-After-Free(UAF) 취약점이 발견되었습니다. hfsc가 클래스의 삽입 여부를 잘못 판단하여 vttree 또는 eltree에 중복 삽입함으로써 메모리 오류를 유발할 수 있습니다.
💡 쉬운 설명
네트워크 데이터 처리 순서를 정하는 기능에서 메모리 관리 오류가 발생하여 시스템이 불안정해질 수 있는 문제입니다. 공격자가 이를 악용하면 시스템 권한을 탈취하거나 강제로 종료시킬 수 있습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
net_sched: hfsc: Fix a UAF vulnerability in class with netem as child qdisc
As described in Gerrard's report [1], we have a UAF case when an hfsc class
has a netem child qdisc. The crux of the issue is that hfsc is assuming
that checking for cl->qdisc->q.qlen == 0 guarantees that it hasn't inserted
the class in the vttree or eltree (which is not true for the netem
duplicate case).
This patch checks the n_active class variable to make sure that the code
won't insert the class in the vttree or eltree twice, catering for the
reentrant case.
[1] https://lore.kernel.org/netdev/CAHcdcOm+03OD2j6R0=YHKqmy=VgJ8xEOKuP6c7mSgnp-TEJJbw@mail.gmail.com/
📍 영향받는 시스템
netem 자식 qdisc를 사용하는 hfsc 클래스가 포함된 Linux 커널 버전
⚔️ 공격 벡터
특수하게 조작된 네트워크 트래픽 또는 qdisc 설정을 통해 메모리 오류 유도
🛡️ 대응 방법
hfsc의 n_active 변수 체크 로직이 포함된 최신 Linux 커널로 업데이트
🔧 검증 코드
출력된 커널 버전이 해당 취약점이 패치된 최신 보안 업데이트 버전인지 확인합니다.