🇰🇷 한글 설명
UDS Identity Config의 Keycloak 클라이언트 인증기에서 논리 오류가 발생하여 제출된 클라이언트 시크릿이 비교 전에 덮어씌워지는 취약점입니다. 공격자는 올바른 클라이언트 ID만 알면 임의의 시크릿으로 인증하여 OAuth2 토큰을 탈취할 수 있습니다.
💡 쉬운 설명
시스템의 비밀번호 검증 과정에 결함이 있어, 공격자가 비밀번호를 몰라도 로그인할 수 있게 됩니다. 이로 인해 권한을 남용하거나 다른 클라이언트를 조작할 수 있는 위험이 있습니다.
🇺🇸 원문 (English)
UDS Identity Config builds the Keycloak configuration image (realm, plugins, theme, truststore, JARs) consumed by UDS Core's Identity deployment. In versions 0.11.0 through 0.26.0, a logic error in the `client-kubernetes-secret` Keycloak client authenticator (shipped by `uds-identity-config` and consumed by UDS Core) causes the submitted `client_secret` to be overwritten with the mounted Kubernetes secret before comparison. An attacker who can reach the Keycloak token endpoint and knows a `client_id` using this authenticator can authenticate as that client with any `client_secret` value and obtain OAuth2 tokens scoped to the client's service account. In the case of the `uds-operator` client this token can be used to registry/modify other clients. Version 0.26.1 patches the issue.
📍 영향받는 시스템
UDS Identity Config 0.11.0 이상 0.26.0 이하
⚔️ 공격 벡터
Keycloak 토큰 엔드포인트를 통해 클라이언트 ID를 사용하여 임의의 시크릿으로 인증 요청
🛡️ 대응 방법
UDS Identity Config를 버전 0.26.1 이상으로 업그레이드하여 패치 적용
🔧 검증 코드
명령어 실행 결과 0.11.0에서 0.26.0 사이의 버전이 출력되면 취약한 버전이므로 패치 필요
uds-identity-config --version 2>/dev/null | grep -E '0\.(1[1-9]|[2-5][0-9])'