🇰🇷 한글 설명
Linux 커널 DPAA2 네트워크 드라이버의 스택 오버플로우 취약점. CONFIG_CPUMASK_OFFSTACK 설정 시 cpumask 변수를 스택에 직접 할당하면 스택 오버플로우가 발생할 수 있으며, 이를 cpumask_var API를 사용하여 안전하게 할당하도록 수정.
💡 쉬운 설명
Linux 커널이 메모리를 관리하는 방식의 결함으로, 특정 설정에서 컴퓨터 메모리가 부족하여 시스템이 멈출 수 있습니다. 커널을 업데이트하면 문제가 해결됩니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
net/dpaa2: Avoid explicit cpumask var allocation on stack
For CONFIG_CPUMASK_OFFSTACK=y kernel, explicit allocation of cpumask
variable on stack is not recommended since it can cause potential stack
overflow.
Instead, kernel code should always use *cpumask_var API(s) to allocate
cpumask var in config-neutral way, leaving allocation strategy to
CONFIG_CPUMASK_OFFSTACK.
Use *cpumask_var API(s) to address it.
📍 영향받는 시스템
Linux kernel 4.14 이상 (DPAA2 드라이버를 사용하는 시스템, 주로 NXP 기반 장비)
⚔️ 공격 벡터
CONFIG_CPUMASK_OFFSTACK=y 설정된 커널에서 네트워크 드라이버 초기화 시 스택 오버플로우 트리거
🛡️ 대응 방법
Linux 커널을 패치 적용된 최신 버전으로 업데이트하거나 CONFIG_CPUMASK_OFFSTACK=n으로 설정
🔧 검증 코드
CONFIG_CPUMASK_OFFSTACK=y로 표시되면 취약점 영향을 받을 수 있으며, CONFIG_CPUMASK_OFFSTACK=n이면 보호됨
grep -i cpumask /boot/config-$(uname -r) | grep OFFSTACK