CVE-2021-47946OpenCart 3.0.3.6 版本在 /account/edit 端点存在跨站请求伪造(CSRF)漏洞。由于缺少有效的令牌验证机制,未经身份验证的攻击者可诱导受害者访问恶意页面。一旦触发,受害者浏览器将自动发送请求修改账户关键信息(如邮箱)。攻击者随后利用密码重置功能,通过新邮箱重置密码,从而接管受害者账户。
该漏洞原理在于 OpenCart 未在账户修改请求中强制检查 CSRF Token 或 Referer 来源。攻击者构造恶意 HTML 页面,通过 JavaScript 自动向目标服务器 /account/edit 接口发起 POST 请求。由于受害者浏览器携带了有效 Cookie,服务器误以为是用户合法操作,执行了数据修改。攻击者利用此漏洞更改账户绑定邮箱后,结合“忘记密码”功能,即可验证新邮箱并重置密码,实现账户完全控制。