🔍 CVE-2020-5408

6.5
CVSS Score
MEDIUM
2020-05-14
2026-06-17 03:21
✅ 완료

🇰🇷 한글 설명

Spring Security의 queryable text encryptor 구현 시 CBC 모드에서 고정된 null 초기화 벡터(IV)를 사용합니다. 이로 인해 암호화된 데이터에 접근할 수 있는 공격자가 사전 공격을 통해 암호화되지 않은 원래 값을 유추할 수 있습니다.

💡 쉬운 설명

암호화할 때 사용하는 '무작위 암호 키 보조 도구'가 항상 똑같은 값으로 고정되어 있는 문제입니다. 이 때문에 공격자가 반복적인 패턴을 분석하여 암호를 풀어낼 위험이 있습니다.

🇺🇸 원문 (English)

Spring Security versions 5.3.x prior to 5.3.2, 5.2.x prior to 5.2.4, 5.1.x prior to 5.1.10, 5.0.x prior to 5.0.16 and 4.2.x prior to 4.2.16 use a fixed null initialization vector with CBC Mode in the implementation of the queryable text encryptor. A malicious user with access to the data that has been encrypted using such an encryptor may be able to derive the unencrypted values using a dictionary attack.

📍 영향받는 시스템

Spring Security 5.3.x (< 5.3.2), 5.2.x (< 5.2.4), 5.1.x (< 5.1.10), 5.0.x (< 5.0.16), 4.2.x (< 4.2.16)

⚔️ 공격 벡터

암호화된 데이터에 접근 권한이 있는 공격자가 사전 공격(Dictionary Attack)을 수행하여 데이터 복구

🛡️ 대응 방법

Spring Security를 취약점이 해결된 최신 버전(5.3.2, 5.2.4, 5.1.10, 5.0.16, 4.2.16 이상)으로 업데이트

🔧 검증 코드

출력된 spring-security-core의 버전이 취약한 버전 범위에 포함되는지 확인

Shell / Script
mvn dependency:list | grep spring-security-core

📊 CVSS Vector String

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

💻 영향받는 소프트웨어

Spring Security