CVE-2025-61923CVE-2025-61923是PrestaShop官方与PayPal合作推出的支付模块PrestaShop Checkout中存在的一个安全漏洞。该漏洞影响4.4.1之前和5.0.5之前的所有版本,主要表现为后台管理界面(backoffice)缺少对用户输入的充分验证,导致攻击者可以利用目录遍历(Directory Traversal)技术读取服务器上的任意文件,从而实现任意文件泄露(Arbitrary File Disclosure)。
PrestaShop作为全球广泛使用的开源电子商务平台之一,其官方支付模块Checkout被大量在线商店用于集成PayPal支付功能。该模块的后台管理界面通常只有具有管理员权限的用户才能访问,但由于输入验证缺失,具有高权限(PR:H)的认证用户可以通过精心构造的恶意请求绕过路径限制,访问服务器文件系统中的敏感文件,如配置文件、数据库凭据、源代码等。
根据CVSS 3.1评分标准,该漏洞评分为4.1分,属于中等严重等级。攻击向量为网络(AV:N),攻击复杂度低(AC:L),但需要高权限认证(PR:H),无需用户交互(UI:N),影响范围为变更(S:C),机密性影响为低(C:L),完整性和可用性影响均为无。
该漏洞已在PrestaShop Checkout 4.4.1和5.0.5版本中修复。官方安全公告由GitHub安全团队通过[email protected]发布,建议所有使用受影响版本的用户尽快升级到修复版本。由于目前不存在已知的临时缓解措施(workaround),升级是唯一的解决方案。
该漏洞的核心成因在于PrestaShop Checkout模块的后台管理控制器在处理文件路径相关参数时,未对用户输入进行严格的验证和过滤,导致攻击者可以使用目录遍历序列(如../)跳出预期的目录限制,访问服务器上的任意文件。
从技术层面分析,漏洞利用过程如下:
1. **输入验证缺失**:模块后台的某个端点在接收文件路径或文件名作为参数时,未使用白名单过滤或路径规范化处理(如realpath()函数),直接将用户输入拼接到文件操作函数(如file_get_contents()、include、readfile等)中。
2. **目录遍历利用**:攻击者通过构造包含../序列的恶意路径,例如将原本期望的文件名参数替换为类似`../../../../etc/passwd`或`../../../config/parameters.php`的路径,绕过目录限制访问系统敏感文件。
3. **文件泄露**:成功利用后,服务器将目标文件的内容返回给攻击者,攻击者可以获取数据库凭据、API密钥、服务器配置等敏感信息。
4. **权限要求**:由于漏洞位于后台管理界面,攻击者需要具备PrestaShop后台的高权限账户(如管理员账户)才能发起攻击,这降低了漏洞的整体风险评分。
5. **影响范围(S:C)**:虽然漏洞本身只影响机密性,但由于PrestaShop Checkout作为支付模块,其泄露的配置文件可能包含PayPal API凭据等关键信息,间接扩大了潜在影响范围。
修复方案主要通过在文件操作前增加严格的输入验证和路径规范化处理,确保用户输入的文件路径始终位于预期的目录范围内。