PT-2024-28439 · Pomerium · Pomerium

Enr1G

·

Published

2024-07-02

·

Updated

2026-01-13

·

CVE-2024-39315

CVSS v4.0

6.9

Medium

VectorAV:N/AC:L/AT:N/PR:L/UI:P/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N
Name of the Vulnerable Software and Affected Versions Pomerium versions prior to 0.26.1
Description The Pomerium user info page, located at the /.pomerium endpoint, 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.
Recommendations To resolve the issue, upgrade to Pomerium version 0.26.1 or later. As a temporary workaround, consider restricting access to the /.pomerium endpoint to minimize the risk of exploitation. Additionally, ensure that upstream applications verify the Pomerium JWT for each request, secure the connection between Pomerium and the application using mTLS, or otherwise secure the connection at the network layer.

Exploit

Fix

Weakness Enumeration

Related Identifiers

CVE-2024-39315
GHSA-RRQR-7W59-637V
GO-2024-2965

Affected Products

Pomerium