CVE-2026-7567
Description
The Temporary Login plugin for WordPress is vulnerable to Authentication Bypass in versions up to and including 1.0.0. This is due to improper input validation in the maybe_login_temporary_user() function, which fails to verify that the 'temp-login-token' GET parameter is a scalar string before processing it. When the parameter is supplied as an array, PHP's empty() check is bypassed and sanitize_key() returns an empty string, which is then passed as the meta_value to get_users(). WordPress ignores an empty meta_value and returns all users matching the meta_key '_temporary_login_token', allowing authentication without a valid token. This makes it possible for unauthenticated attackers to authenticate as any active temporary login user by sending a single crafted GET request.
References
- https://plugins.trac.wordpress.org/browser/temporary-login/tags/1.0.0/core/admin.php#L135
- https://plugins.trac.wordpress.org/browser/temporary-login/tags/1.0.0/core/admin.php#L179
- https://plugins.trac.wordpress.org/browser/temporary-login/tags/1.0.0/core/options.php#L157
- https://plugins.trac.wordpress.org/browser/temporary-login/trunk/core/admin.php#L135
- https://plugins.trac.wordpress.org/browser/temporary-login/trunk/core/admin.php#L179