🇰🇷 한글 설명
리눅스 커널의 arm_scmi 드라이버에서 scmi_debugfs_common_setup() 함수 호출 중 메모리 이중 해제(Double Free) 취약점이 발견되었습니다. devm_add_action_or_reset() 함수가 실패할 경우, 정리 함수가 중복 실행되어 이미 해제된 메모리를 다시 해제하려고 시도하는 문제입니다.
💡 쉬운 설명
컴퓨터가 사용하던 메모리를 정리하는 과정에서 실수로 이미 버린 메모리를 또 버리려고 시도하는 오류입니다. 이로 인해 시스템이 불안정해지거나 예상치 못한 오류가 발생할 수 있습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
firmware: arm_scmi: Fix the double free in scmi_debugfs_common_setup()
Clang static checker(scan-build) throws below warning:
| drivers/firmware/arm_scmi/driver.c:line 2915, column 2
| Attempt to free released memory.
When devm_add_action_or_reset() fails, scmi_debugfs_common_cleanup()
will run twice which causes double free of 'dbg->name'.
Remove the redundant scmi_debugfs_common_cleanup() to fix this problem.
📍 영향받는 시스템
arm_scmi 드라이버를 사용하는 리눅스 커널 버전
⚔️ 공격 벡터
로컬 공격자가 특정 조건(드라이버 설정 실패 유도)을 만들어 메모리 오류를 유발할 수 있음
🛡️ 대응 방법
커널 패치를 적용하여 중복된 scmi_debugfs_common_cleanup() 호출을 제거해야 함
🔧 검증 코드
현재 실행 중인 커널 버전을 확인하여 해당 취약점이 수정된 최신 패치 버전인지 확인합니다.