🔍 CVE-2024-50058

5.5
CVSS Score
MEDIUM
2024-10-21
2026-10-15 01:19
✅ 완료

🇰🇷 한글 설명

Linux 커널의 uart_shutdown() 함수에서 NULL 포인터 체크 없이 uart_port_dtr_rts()를 호출하는 메모리 안전성 취약점입니다. HUPCL 플래그가 설정된 경우만 영향을 받아 실제 악용은 제한적입니다.

💡 쉬운 설명

리눅스 직렬 포트 제어 코드에서 안전성 검사가 누락되어 특정 조건에서 시스템 오류가 발생할 수 있습니다. 이 버그는 Coverity 정적 분석으로 발견되었으며 NULL 포인터 참조 가능성이 있습니다.

🇺🇸 원문 (English)

In the Linux kernel, the following vulnerability has been resolved: serial: protect uart_port_dtr_rts() in uart_shutdown() too Commit af224ca2df29 (serial: core: Prevent unsafe uart port access, part 3) added few uport == NULL checks. It added one to uart_shutdown(), so the commit assumes, uport can be NULL in there. But right after that protection, there is an unprotected "uart_port_dtr_rts(uport, false);" call. That is invoked only if HUPCL is set, so I assume that is the reason why we do not see lots of these reports. Or it cannot be NULL at this point at all for some reason :P. Until the above is investigated, stay on the safe side and move this dereference to the if too. I got this inconsistency from Coverity under CID 1585130. Thanks.

📍 영향받는 시스템

Linux kernel (직렬 포트 드라이버 활성화된 모든 시스템)

⚔️ 공격 벡터

HUPCL 플래그 활성화 상태에서 uart_shutdown() 함수 호출 (권한 필요)

🛡️ 대응 방법

Linux 커널을 최신 버전으로 업데이트하여 uart_port_dtr_rts() 호출을 NULL 체크 범위 내로 이동

🔧 검증 코드

직렬 포트 드라이버가 활성화되어 있는지 확인하고, 커널 버전을 통해 패치 상태 검증. 최신 커널로 업데이트되었으면 해당 취약점이 수정되었음을 의미합니다.

Shell / Script
grep -i uart_port_dtr_rts /boot/config-$(uname -r) 2>/dev/null || echo 'Serial driver not enabled'

📊 CVSS Vector String

CVSS Vector
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H

💻 영향받는 소프트웨어

Linux Kernel