🇰🇷 한글 설명
리눅스 커널의 netem 구성 요소에서 qdisc_tree_reduce_backlog() 호출 전 sch->q.qlen을 업데이트하지 않아 발생하는 취약점입니다. 이로 인해 DRR 알고리즘 사용 시 qlen_notify()가 호출되지 않아 Use-After-Free(UAF) 메모리 오류가 발생할 수 있습니다.
💡 쉬운 설명
네트워크 데이터 처리 방식 중 하나에서 데이터 개수를 제대로 관리하지 못해 발생하는 오류입니다. 이 오류를 이용하면 컴퓨터의 메모리 관리 체계에 혼란을 주어 시스템을 중단시키거나 보안 문제를 일으킬 수 있습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
netem: Update sch->q.qlen before qdisc_tree_reduce_backlog()
qdisc_tree_reduce_backlog() notifies parent qdisc only if child
qdisc becomes empty, therefore we need to reduce the backlog of the
child qdisc before calling it. Otherwise it would miss the opportunity
to call cops->qlen_notify(), in the case of DRR, it resulted in UAF
since DRR uses ->qlen_notify() to maintain its active list.
📍 영향받는 시스템
Linux Kernel (netem 및 DRR qdisc를 사용하는 버전)
⚔️ 공격 벡터
특수하게 조작된 네트워크 트래픽을 통해 qdisc의 백로그 상태를 조작하여 메모리 오류 유도
🛡️ 대응 방법
리눅스 커널을 최신 보안 패치가 적용된 버전으로 업데이트
🔧 검증 코드
출력된 커널 버전이 해당 취약점이 해결된 패치 버전 이후인지 확인