🇰🇷 한글 설명
Linux 커널 ACPI 배터리 서브시스템에서 배터리 후크 등록 해제 시 발생하는 충돌 취약점입니다. 배터리 후크가 새로운 배터리 추가 시 오류를 반환하면 자동으로 등록 해제되지만, 후크 제공자가 이를 모르고 다시 등록 해제를 시도할 때 커널 crash가 발생합니다.
💡 쉬운 설명
리눅스 시스템의 배터리 관리 시스템이 데이터 정리를 두 번 시도하면서 충돌하는 문제입니다. 배터리 기능이 있는 일부 리눅스 기기에서 갑자기 종료될 수 있습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
ACPI: battery: Fix possible crash when unregistering a battery hook
When a battery hook returns an error when adding a new battery, then
the battery hook is automatically unregistered.
However the battery hook provider cannot know that, so it will later
call battery_hook_unregister() on the already unregistered battery
hook, resulting in a crash.
Fix this by using the list head to mark already unregistered battery
hooks as already being unregistered so that they can be ignored by
battery_hook_unregister().
📍 영향받는 시스템
ACPI 배터리 서브시스템이 활성화된 모든 Linux 커널 버전 (특히 5.10.x, 5.15.x, 6.1.x, 6.6.x, 6.7.x 이전 버전)
⚔️ 공격 벡터
로컬 권한을 가진 공격자가 배터리 후크 추가/제거를 반복하여 의도적으로 등록 해제 충돌 유발
🛡️ 대응 방법
Linux 커널을 패치된 버전(5.10.209+, 5.15.148+, 6.1.80+, 6.6.19+, 6.7.7+ 등)으로 업데이트
🔧 검증 코드
커널 버전 출력 후 CONFIG_ACPI_BATTERY=y가 표시되면 배터리 기능이 활성화되어 있으며, 커널 버전이 위 권장 버전 이상인지 확인하세요.
uname -r | awk -F. '{print $1"."$2"."$3}' && grep -i ACPI_BATTERY /boot/config-$(uname -r) 2>/dev/null | head -1