🔍 CVE-2025-39804

7.5
CVSS Score
HIGH
2025-09-15
2026-10-19 21:10
✅ 완료

🇰🇷 한글 설명

Linux 커널의 arm64/poly1305 암호화 라이브러리에서 SIMD 레지스터를 사용할 수 없는 환경일 때 레지스터 데이터가 손상되는 취약점이 발견되었습니다. 이 문제는 이전 커밋에서 SIMD 사용 가능 여부를 확인하는 체크 로직이 제거되면서 발생했으며, may_use_simd() 함수를 통해 이를 다시 복구하여 해결되었습니다.

💡 쉬운 설명

컴퓨터가 암호화 계산을 할 때 특수한 계산 도구(SIMD)를 사용해야 하는데, 이 도구를 쓸 수 없는 상황에서 억지로 사용하려다 다른 작업의 데이터를 망가뜨리는 문제입니다. 이로 인해 시스템이 오작동하거나 잘못된 암호 결과가 나올 수 있습니다.

🇺🇸 원문 (English)

In the Linux kernel, the following vulnerability has been resolved: lib/crypto: arm64/poly1305: Fix register corruption in no-SIMD contexts Restore the SIMD usability check that was removed by commit a59e5468a921 ("crypto: arm64/poly1305 - Add block-only interface"). This safety check is cheap and is well worth eliminating a footgun. While the Poly1305 functions should not be called when SIMD registers are unusable, if they are anyway, they should just do the right thing instead of corrupting random tasks' registers and/or computing incorrect MACs. Fixing this is also needed for poly1305_kunit to pass. Just use may_use_simd() instead of the original crypto_simd_usable(), since poly1305_kunit won't rely on crypto_simd_disabled_for_test.

📍 영향받는 시스템

SIMD 레지스터를 사용하는 arm64 아키텍처 기반의 Linux 커널

⚔️ 공격 벡터

SIMD를 사용할 수 없는 특수한 커널 컨텍스트에서 Poly1305 암호화 함수를 호출하여 레지스터 데이터 오염 유도

🛡️ 대응 방법

may_use_simd() 체크 로직이 포함된 최신 Linux 커널 버전으로 업데이트

🔧 검증 코드

출력된 커널 버전이 해당 취약점이 패치된 최신 릴리스 버전인지 확인

Shell / Script
uname -r

📊 CVSS Vector String

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

💻 영향받는 소프트웨어

Linux Kernel