Instituto Nacional de ciberseguridad. Sección Incibe
Instituto Nacional de Ciberseguridad. Sección INCIBE-CERT

Vulnerabilidad en nosurf (CVE-2025-46721)

Gravedad CVSS v4.0:
MEDIA
Tipo:
CWE-352 Falsificación de petición en sitios cruzados (Cross-Site Request Forgery)
Fecha de publicación:
13/05/2025
Última modificación:
23/06/2025

Descripción

nosurf es un middleware de protección contra cross-site request forgery (CSRF) para Go. Una vulnerabilidad en versiones anteriores a la 1.2.0 permite a un atacante que controla el contenido del sitio web objetivo o de un subdominio del mismo (ya sea mediante XSS o de otro modo) eludir las comprobaciones CSRF y emitir solicitudes en nombre del usuario. Debido al uso indebido de la librería `net/http` de Go, nosurf categoriza todas las solicitudes entrantes como solicitudes HTTP de texto plano, en cuyo caso no se comprueba que el encabezado `Referer` tenga el mismo origen que la página web objetivo. Si el atacante controla el contenido HTML del sitio web objetivo (p. ej., `example.com`) o de un sitio web alojado en un subdominio del sitio objetivo (p. ej., `attacker.example.com`), también podrá manipular las cookies configuradas para el sitio web objetivo. Al obtener el token CSRF secreto de la cookie o sobrescribirla con un nuevo token conocido por el atacante, `attacker.example.com` puede generar solicitudes entre sitios a `example.com`. Se publicó una corrección para este problema en nosurf 1.2.0. En lugar de actualizar a una versión parcheada de nosurf, los usuarios pueden usar otro middleware HTTP para garantizar que una solicitud HTTP no segura provenga del mismo origen (por ejemplo, al requerir un encabezado `Sec-Fetch-Site: same-origin` en la solicitud).

Productos y versiones vulnerables

CPE Desde Hasta
cpe:2.3:a:nosurf_project:nosurf:*:*:*:*:*:go:*:* 1.2.0 (excluyendo)