CVE-2026-9187WordPress Abandoned Contact Form 7插件存在严重的未授权访问漏洞,攻击者可利用此漏洞无需任何认证即可永久删除网站上的任意文章、页面或其他内容。该漏洞存在于插件的2.2及以下所有版本中,根源在于action__remove_abandoned()函数同时注册到了wp_ajax_remove_abandoned和wp_ajax_nopriv_remove_abandoned两个WordPress AJAX钩子,导致未登录用户也能访问本应受保护的删除功能。由于缺少必要的权限检查和CSRF令牌验证,攻击者只需构造特定的POST请求即可删除任意文章。Wordfence安全团队于2026年6月16日披露了此漏洞,CVSS评分为5.3(中等严重性)。此漏洞可能被用于恶意删除网站内容,对网站完整性和可用性造成严重影响。
该漏洞的技术根源在于插件的inc/class.cf7af.php文件中action__remove_abandoned()函数的实现缺陷(第49行初始化,第65行注册钩子,第68行处理逻辑)。具体问题包括:1)函数同时注册到wp_ajax_remove_abandoned(需认证)和wp_ajax_nopriv_remove_abandoned(无需认证)两个钩子,使得未登录用户也能触发删除操作;2)缺少WordPress capability检查,未验证当前用户是否有权执行删除操作;3)缺少nonce令牌验证,无法防止CSRF攻击;4)直接使用$_POST['recover_id']参数且未进行类型和来源验证;5)将用户提供的ID直接传递给wp_delete_post()函数并启用force-delete标志,绕过WordPress的垃圾站机制。由于插件未验证提供的recover_id是否属于自己创建的cf7af_data自定义文章类型,攻击者可以传入任意文章ID(如帖子、页面ID)实现删除。攻击者只需构造一个包含recover_id参数的POST请求到admin-ajax.php即可利用。