CVE-2026-4021WordPress插件Contest Gallery在28.1.5及之前版本中存在严重的安全漏洞,导致未经身份验证的攻击者可以绕过认证机制并接管管理员账户。该漏洞源于插件在处理邮件确认时,错误地将邮箱字符串用于数据库ID查询,结合未授权的基于密钥的登录端点,攻击者利用MySQL整数类型转换特性覆盖管理员激活密钥,从而获得网站完全控制权。
该漏洞的核心在于两个关键代码逻辑缺陷的协同利用。首先,在`users-registry-check-after-email-or-pin-confirmation.php`中,SQL语句使用了`WHERE ID = %s`,本应传入数字型用户ID,实际却接收了字符串型邮箱。其次,`ajax-functions-frontend.php`中的`post_cg1l_login_user_by_key`接口允许无需凭证登录。利用条件是开启`RegMailOptional=1`。攻击者注册以目标管理员ID(如1)开头的邮箱(如`[email protected]`),在触发确认流程时,MySQL将`[email protected]`强制转换为整数`1`,导致管理员的`user_activation_key`被攻击者生成的密钥覆盖。最后,攻击者调用AJAX接口使用该密钥登录,成功接管管理员权限。