🇰🇷 한글 설명
ARM64 및 RISC-V 플랫폼에서 SM2 개인키 연산 시 사용되는 스칼라 점 곱셈 구현이 상수 시간이 아닌 방식으로 최적화되어 있습니다. 이로 인해 실행 시간이나 캐시 라인 접근 패턴을 통해 비밀 스칼라 정보를 유출할 수 있는 타이밍 및 캐시 부채널 취약점이 존재합니다.
💡 쉬운 설명
암호화 계산을 할 때 컴퓨터가 처리하는 시간이 비밀번호 값에 따라 미세하게 달라지는 문제입니다. 공격자가 이 시간 차이를 측정하면 암호 키를 알아낼 수 있습니다.
🇺🇸 원문 (English)
Issue summary: A non-constant-time optimized implementation of scalar
point multiplication is used for SM2 private key operations on ARM64 and
RISC-V platforms.
Impact summary: An attacker able to measure the time taken by, or to observe
the cache-line access pattern of SM2 signing or decryption on an affected
platform can learn information about the secret scalar.
CWE: CWE-208: Observable Timing Discrepancy
Description: On ARM64 and RISC-V processors, the SM2 curve uses an optimized
scalar multiplication implementation whose conditional branches and table
look ups are chosen according to the bits of the secret scalar. The execution
time and the cache-access pattern therefore depend on the long-term private
key (during SM2 decryption) or the per-signature nonce (during SM2 signature
generation), forming a timing and cache side-channel.
FIPS Impact: no
SM2 is not a FIPS algorithm and the optimized SM2 implementation is not part
of the FIPS module.
OpenSSL 4.0, 3.6, 3.5 and 3.4 are vulnerable to this issue on AArch64 and
RISC-V.
OpenSSL 3.0, 1.1.1 and 1.0.2 are not affected by this issue.
OpenSSL 4.0 users should upgrade to OpenSSL 4.0.3.
OpenSSL 3.6 users should upgrade to OpenSSL 3.6.5.
OpenSSL 3.5 users should upgrade to OpenSSL 3.5.9.
OpenSSL 3.4 users should upgrade to OpenSSL 3.4.8.
This issue was reported on 2 May 2026 by Abhinav Agarwal.
It was independently reported on 6 June 2026 by Feng Xue.
The fix was developed by Igor Ustinov.
-- cut (non-publishing metadata for internal use) --
Reported by: Abhinav Agarwal, Feng Xue
Fixed by: Igor Ustinov
📍 영향받는 시스템
OpenSSL 4.0, 3.6, 3.5, 3.4 (ARM64 및 RISC-V 환경)
⚔️ 공격 벡터
연산 시간 측정 또는 캐시 접근 패턴 관찰을 통한 부채널 공격
🛡️ 대응 방법
OpenSSL 4.0.3, 3.6.5, 3.5.9, 3.4.8 이상 버전으로 업그레이드
🔧 검증 코드
출력된 버전이 취약한 버전 범위(4.0, 3.6, 3.5, 3.4)에 해당하는지 확인합니다.