🇰🇷 한글 설명
리눅스 커널의 arm/poly1305 암호화 라이브러리에서 SIMD 레지스터를 사용할 수 없는 환경일 때 레지스터 값이 손상되는 취약점이 발견되었습니다. 이 문제는 이전에 제거되었던 SIMD 사용 가능 여부 확인 로직을 다시 복구함으로써 해결되었습니다.
💡 쉬운 설명
특정 암호화 기능을 사용할 때 컴퓨터의 중요한 계산용 저장 공간(레지스터)을 망가뜨릴 수 있는 오류가 있었습니다. 이 오류로 인해 다른 프로그램이 오작동하거나 잘못된 암호 결과가 나올 수 있습니다.
🇺🇸 원문 (English)
In the Linux kernel, the following vulnerability has been resolved:
lib/crypto: arm/poly1305: Fix register corruption in no-SIMD contexts
Restore the SIMD usability check that was removed by commit 773426f4771b
("crypto: arm/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 레지스터를 사용하는 ARM 아키텍처 기반의 취약한 리눅스 커널 버전
⚔️ 공격 벡터
SIMD를 사용할 수 없는 특수한 커널 컨텍스트에서 Poly1305 암호화 함수를 호출하여 레지스터 데이터 오염 유도
🛡️ 대응 방법
해당 취약점이 수정된 최신 리눅스 커널 버전으로 업데이트
🔧 검증 코드
출력된 커널 버전이 해당 패치가 적용된 보안 업데이트 버전인지 확인