CVE-2025-13317CVE-2025-13317是WordPress Appointment Booking Calendar插件中的一个严重安全漏洞。该插件是一款广泛应用于WordPress网站的预约预订日历插件,用户数量众多。漏洞存在于插件的预订处理端点,由于缺乏适当的授权验证机制,允许未认证的攻击者执行未经授权的操作。具体而言,插件暴露了一个名为cpabc_appointments_check_IPN_verification的预订处理端点,该端点在处理支付通知时信任攻击者提供的数据,而不验证其来源或真实性。攻击者可以通过cpabc_ipncheck参数任意确认预订并将虚假预订插入到活动日历中,从而触发管理员和客户的通知邮件,造成运营中断。此漏洞影响所有版本直至1.3.96版本。由于该插件被广泛应用于各种商业网站,包括医疗机构、律师事务所、咨询公司等,攻击者可能利用此漏洞进行恶意预订、垃圾邮件传播或破坏正常业务运营。CVSS评分为5.3,属于中等严重程度,主要影响系统的完整性和可用性。
该漏洞的根本原因在于Appointment Booking Calendar插件在处理IPN(Instant Payment Notification,即时支付通知)时缺少适当的授权检查。插件的cpabc_appointments_check_IPN_verification函数直接处理来自cpabc_ipncheck参数的请求,而没有验证请求是否来自合法的支付提供商或是否具有相应的授权权限。攻击者可以构造恶意的HTTP POST请求,伪造支付确认信息,触发预订确认流程。成功利用后,系统会将伪造的预订记录写入数据库,同时自动发送通知邮件给管理员和客户。攻击者可以通过批量发送请求来实现大规模攻击,不断向目标网站的日历中插入虚假预订,导致正常用户无法正常使用预约服务。此外,大量通知邮件的发送可能触发邮件服务器的限流机制,影响正常邮件的收发。从代码层面看,问题出在inc/cpabc_apps_go.inc.php文件的第14行、363行和476行附近,这些代码段在处理IPN验证时未进行权限校验。