Monitor vulnerabilities like this one. Sign up free to get alerted when software you use is affected.
8.1

CVE-2026-12740: Perl's Plack::Middleware::OAuth allows login cross-site request forgery

CVE-2026-12740 CVE-2026-12740
Summary

An attacker can trick users into logging in with their own account, gaining access to the victim's account. This can happen if you use this Perl middleware for OAuth 2.0 login without updating to a supported version. To stay secure, update to a version of Plack::Middleware::OAuth that supports OAuth 2.0 state parameter.

What to do

No fix is available yet. Check with your software vendor for updates.

Affected software
VendorProductAffected versions
cornelius plack::middleware::oauth <= 0.10
Original title
Plack::Middleware::OAuth versions through 0.10 for Perl do not support the OAuth 2.0 state parameter. RequestTokenV2 builds the provider authorization redirect without issuing a state value, and A...
Original description
Plack::Middleware::OAuth versions through 0.10 for Perl do not support the OAuth 2.0 state parameter.

RequestTokenV2 builds the provider authorization redirect without issuing a state value, and AccessTokenV2 exchanges the callback code and registers the resulting token into the session (register_session) without verifying that the callback corresponds to an authorization request this session initiated.

Any application that uses this middleware for OAuth 2.0 login is exposed to login cross-site request forgery: because the callback is not bound to the session that began the flow, an attacker who starts an authorization with their own provider account can deliver the resulting callback to a victim, causing the victim's session to complete the attacker's authorization and associating the attacker's provider identity and access token with that session. Where the application persists this as an account link, the attacker may retain access to the victim's account through their own provider credentials.
Vulnerability type
CWE-352 Cross-Site Request Forgery (CSRF)
Published: 4 Jul 2026 · Updated: 7 Jul 2026 · First seen: 4 Jul 2026