CVE-2025-4212Checkout Files Upload for WooCommerce是WordPress平台上广受欢迎的电商店铺文件上传插件。该插件在2.2.1及之前的所有版本中存在严重的存储型跨站脚本(XSS)漏洞,根源在于文件上传处理过程中输入过滤不足和输出转义缺失。攻击者可在无需任何认证的情况下,通过构造恶意图像文件向服务器注入任意Web脚本。这些恶意脚本会被永久存储在系统中,当其他用户访问包含该图像的页面时,恶意代码将自动执行。此漏洞可导致敏感用户数据(如Cookie、会话令牌)被窃取、用户账户被劫持,甚至在某些场景下进一步实现横向移动攻击。由于该插件被广泛应用于电商网站的结账流程,潜在受影响站点数量众多,危害范围较大。
该漏洞属于存储型XSS(Stored XSS)类型,攻击向量为文件上传功能。问题核心在于插件对上传文件的MIME类型和内容缺乏有效的安全验证。具体而言,插件在接收用户上传的图像文件时,仅进行了基础的文件名和扩展名检查,但未对文件内容进行深度分析。攻击者可将恶意JavaScript代码嵌入图像文件的元数据或文件头中,例如在EXIF数据、PNG文件的tEXt chunk或JPEG文件的Comment段中插入<script>标签。由于缺乏严格的输入净化(Input Sanitization)和输出转义(Output Escaping),当管理员或其他用户在WordPress后台或前端页面查看这些上传的图像时,嵌入的脚本代码会被浏览器解析执行。整个攻击过程无需任何用户交互,攻击者利用CVSS 3.1向量中的网络可达性(AV:N)和无需认证(PR:N)的特性,可直接发起攻击。