🔍 CVE-2024-50010

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

🇰🇷 한글 설명

Linux 커널의 exec() 함수에서 path_noexec 플래그 확인 시 발생하는 경합 조건(race condition)으로 인한 거짓 경고 문제. 커널이 불필요한 WARN_ON 메시지를 출력하도록 하는 중복 검사를 제거하는 패치.

💡 쉬운 설명

Linux에서 프로그램 실행 권한을 확인할 때 발생하는 타이밍 오류로 인해 가짜 경고 메시지가 나타나는 문제입니다. 실제 보안 위험보다는 로그 노이즈입니다.

🇺🇸 원문 (English)

In the Linux kernel, the following vulnerability has been resolved: exec: don't WARN for racy path_noexec check Both i_mode and noexec checks wrapped in WARN_ON stem from an artifact of the previous implementation. They used to legitimately check for the condition, but that got moved up in two commits: 633fb6ac3980 ("exec: move S_ISREG() check earlier") 0fd338b2d2cd ("exec: move path_noexec() check earlier") Instead of being removed said checks are WARN_ON'ed instead, which has some debug value. However, the spurious path_noexec check is racy, resulting in unwarranted warnings should someone race with setting the noexec flag. One can note there is more to perm-checking whether execve is allowed and none of the conditions are guaranteed to still hold after they were tested for. Additionally this does not validate whether the code path did any perm checking to begin with -- it will pass if the inode happens to be regular. Keep the redundant path_noexec() check even though it's mindless nonsense checking for guarantee that isn't given so drop the WARN. Reword the commentary and do small tidy ups while here. [brauner: keep redundant path_noexec() check]

📍 영향받는 시스템

Linux kernel (5.10 이전 버전 포함 다양한 버전)

⚔️ 공격 벡터

Race condition을 통한 간접적 영향 - noexec 플래그 설정 중 실행 권한 확인이 race되는 상황

🛡️ 대응 방법

kernel 5.10 이상으로 업데이트 또는 관련 커널 패치 적용

🔧 검증 코드

커널 버전이 5.0 이상이면 패치가 적용되었을 가능성이 높고, 4.x 이하면 이전 버전입니다. 정확한 확인은 git log로 633fb6ac3980 또는 0fd338b2d2cd 커밋 포함 여부를 확인하세요.

Shell / Script
uname -r | grep -E '^[5-9]\.|^[1-9][0-9]'

📊 CVSS Vector String

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

💻 영향받는 소프트웨어

Linux Kernel