Skip to content
Tenable®·Indexed by this site · Originally publishedSelectedAttention55

Tenable discloses Hermes Agent login PKCE vulnerability that could enable session hijacking

Tenable披露Hermes Agent登录PKCE漏洞可致会话接管

AI summary

Tenable disclosed a PKCE vulnerability in Hermes Agent's GET /auth/native/authorize login flow that can lead to complete takeover of a victim's account session. The flow uses Python's urllib.parse.urlparse to validate redirect_uri, but returns the unnormalized raw value to the browser, and the Python parser and the browser's WHATWG parser handle backslashes differently; the server believes the target is the loopback address 127.0.0.1, but the browser will redirect to another origin controlled by the attacker. The attacker also chooses the PKCE challenge themselves and can use the leaked authorization code to exchange for tokens for the victim's account. In testing, a constructed URL made the browser visit a second origin with the code and state parameters; placing a remote host before the backslash also received the authorization code.

Why it was selected

Disclosed a session hijacking vulnerability caused by parser differences in the Hermes Agent login flow, and provided affected versions and fixed versions for deployers to verify upgrades.

Read originaltenable.com