🇰🇷 한글 설명
Linux 커널의 macvlan 드라이버에서 IFLA_MACVLAN_BC_CUTOFF 속성에 대한 nla_policy 정의가 누락되어 있었습니다. 이로 인해 4바이트 정수 속성을 길이 0으로 전달할 수 있어 힙 영역의 범위 외 읽기(OOB)가 발생할 수 있습니다. 패치는 해당 속성에 대한 길이 검증 정책을 추가하여 이 문제를 해결합니다.
💡 쉬운 설명
리눅스 커널의 가상 네트워크 기능에서 숫자 설정값의 길이를 검사하지 않던 누락이 있었습니다. 악의적인 사용자가 이 값을 비워서 보내면 메모리의 허용되지 않은 영역을 읽을 수 있습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
macvlan: add forgotten nla_policy for IFLA_MACVLAN_BC_CUTOFF
The previous commit 954d1fa1ac93 ("macvlan: Add netlink attribute for
broadcast cutoff") added one additional attribute named
IFLA_MACVLAN_BC_CUTOFF to allow broadcast cutfoff.
However, it forgot to describe the nla_policy at macvlan_policy
(drivers/net/macvlan.c). Hence, this suppose NLA_S32 (4 bytes) integer
can be faked as empty (0 bytes) by a malicious user, which could leads
to OOB in heap just like CVE-2023-3773.
To fix it, this commit just completes the nla_policy description for
IFLA_MACVLAN_BC_CUTOFF. This enforces the length check and avoids the
potential OOB read.
📍 영향받는 시스템
패치 전 Linux 커널의 macvlan 드라이버를 포함한 시스템 (해당 커밋 954d1fa1ac93 이후 버전)
⚔️ 공격 벡터
로컬 사용자가 macvlan 네트워크 인터페이스 생성/설정 시 BC_CUTOFF 속성을 길이 0으로 전달하여 힙 OOB 읽기를 유발
🛡️ 대응 방법
커널을 해당 취약점이 수정된 최신 안정 버전으로 업데이트하거나 배포판 보안 패치를 적용
🔧 검증 코드
출력된 커널 버전을 배포판의 보안 공지와 대조하여 CVE-2023-53516 수정 패치가 포함되었는지 확인하며, 해당 패치가 없는 구버전이면 취약한 것으로 판단