🇰🇷 한글 설명
Pomerium 0.26.1 미만 버전의 사용자 정보 페이지(/.pomerium)에서 로그인된 사용자의 직렬화된 OAuth2 액세스 및 ID 토큰이 의도치 않게 노출되는 취약점이 발견되었습니다. 상위 애플리케이션에 XSS 취약점이 존재할 경우, 공격자가 이 토큰을 탈취하여 사용자를 사칭할 위험이 있습니다.
💡 쉬운 설명
Pomerium라는 보안 서비스의 특정 페이지에서 사용자의 중요한 로그인 정보(토큰)가 실수로 외부로 노출될 수 있는 문제입니다. 해커가 이 정보를 가로채면 사용자인 척하며 연결된 다른 웹사이트에 접속할 수 있습니다.
🇺🇸 원문 (English)
Pomerium is an identity and context-aware access proxy. Prior to version 0.26.1, the Pomerium user info page (at `/.pomerium`) unintentionally included serialized OAuth2 access and ID tokens from the logged-in user's session. These tokens are not intended to be exposed to end users. This issue may be more severe in the presence of a cross-site scripting vulnerability in an upstream application proxied through Pomerium. If an attacker could insert a malicious script onto a web page proxied through Pomerium, that script could access these tokens by making a request to the `/.pomerium` endpoint. Upstream applications that authenticate only the ID token may be vulnerable to user impersonation using a token obtained in this manner. Note that an OAuth2 access token or ID token by itself is not sufficient to hijack a user's Pomerium session. Upstream applications should not be vulnerable to user impersonation via these tokens provided the application verifies the Pomerium JWT for each request, the connection between Pomerium and the application is secured by mTLS, or the connection between Pomerium and the application is otherwise secured at the network layer. The issue is patched in Pomerium v0.26.1. No known workarounds are available.
📍 영향받는 시스템
Pomerium versions prior to 0.26.1
⚔️ 공격 벡터
상위 애플리케이션의 XSS 취약점을 이용해 /.pomerium 엔드포인트에서 토큰을 탈취하는 방식
🛡️ 대응 방법
Pomerium를 v0.26.1 이상 버전으로 업데이트하십시오.
🔧 검증 코드
명령어 실행 결과로 access_token 또는 id_token 문자열이 출력된다면 취약한 버전이므로 즉시 업데이트가 필요합니다.
curl -s http://<pomerium-host>/.pomerium | grep -E 'access_token|id_token'