🔍 CVE-2014-3527

9.8
CVSS Score
CRITICAL
2017-05-25
2026-06-17 00:08
✅ 완료

🇰🇷 한글 설명

Spring Security 3.1~3.2.4의 CAS Proxy ticket 인증 메커니즘이 신뢰되지 않은 HTTP 요청 정보를 기반으로 proxy ticket을 검증하는 취약점입니다. 악의적인 CAS Service가 관련 없는 proxy ticket으로 다른 CAS Service를 속여 인증하게 만들 수 있으며, CAS Service 간 접근 제어 제한을 우회할 수 있습니다.

💡 쉬운 설명

Spring Security에서 CAS 인증 시 공격자가 조작된 요청으로 다른 서비스를 속여 인증을 우회할 수 있습니다. 이는 서비스 간의 보안 규칙을 무시하고 권한 없이 접근할 수 있게 만듭니다.

🇺🇸 원문 (English)

When using the CAS Proxy ticket authentication from Spring Security 3.1 to 3.2.4 a malicious CAS Service could trick another CAS Service into authenticating a proxy ticket that was not associated. This is due to the fact that the proxy ticket authentication uses the information from the HttpServletRequest which is populated based upon untrusted information within the HTTP request. This means if there are access control restrictions on which CAS services can authenticate to one another, those restrictions can be bypassed. If users are not using CAS Proxy tickets and not basing access control decisions based upon the CAS Service, then there is no impact to users.

📍 영향받는 시스템

Spring Security 3.1, 3.1.1, 3.1.2, 3.2.0, 3.2.1, 3.2.2, 3.2.3, 3.2.4 (CAS Proxy ticket 인증 사용 시)

⚔️ 공격 벡터

공격자가 악의적인 CAS Service를 구성한 후 HttpServletRequest 헤더 조작을 통해 다른 Service의 proxy ticket을 위조하여 제출

🛡️ 대응 방법

Spring Security를 3.2.5 이상으로 즉시 업그레이드 또는 CAS Proxy ticket 기반의 접근 제어 대신 직접 인증 방식 사용

🔧 검증 코드

위 명령어로 Spring Security CAS 의존성의 버전을 확인하여 3.1~3.2.4 버전이 있으면 취약점 영향을 받는 상태입니다.

Shell / Script
grep -r 'spring-security-cas' pom.xml build.gradle 2>/dev/null | grep -oP '3\.[12]\.[0-4]' || echo 'CAS dependency not found'

📊 CVSS Vector String

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

💻 영향받는 소프트웨어

Spring Security