Skip to content
Vol. 1 · Ed. 2026
CyberGlossary
Entry № 285

Token CSRF

Revisado porCybersecurity entrepreneur & security researcher

¿Qué es Token CSRF?

Token CSRFValor impredecible y por sesión incluido en formularios o cabeceras para que el servidor confirme que las peticiones que cambian estado proceden de sus propias páginas.


Un token CSRF es la defensa canónica contra el Cross-Site Request Forgery, el ataque clasificado como A05 en el OWASP Top 10 de 2013 e integrado en "Broken Access Control" en ediciones posteriores. El servidor genera un valor criptográficamente aleatorio, lo vincula a la sesión del usuario y lo embebe en formularios HTML o lo expone para una cabecera de petición personalizada. Como la política del mismo origen impide que la página del atacante lea el token, una petición falsificada de origen cruzado no puede aportar el valor correcto y es rechazada.

Predominan tres patrones. El synchronizer token pattern almacena el valor esperado en el servidor: el más robusto, pero con estado. Las double-submit cookies comparan una cookie con un campo de formulario o cabecera coincidente, sin necesidad de estado en servidor, pero son vulnerables si un atacante puede escribir cookies a través de un subdominio. El double-submit firmado (HMAC) vincula el token a la sesión para cerrar esa brecha. Los tokens deben ser por sesión (o por petición para acciones sensibles), largos y compararse en tiempo constante.

La defensa en profundidad importa: desde Chrome 80 (febrero de 2020) las cookies sin marcar usan por defecto SameSite=Lax, que bloquea la mayoría de los POST de origen cruzado, pero Lax aún permite las navegaciones GET de nivel superior y no todos los navegadores lo aplican, por lo que los tokens siguen siendo necesarios. Combínalos con la validación de Origin/Referer y un CORS estricto. Las API con bearer token llamadas solo desde JavaScript evitan las cookies ambientales y por lo general no necesitan un token CSRF, pero aún requieren controles anti-replay y de autorización.

flowchart TD
  A[El usuario carga el formulario] --> B[El servidor emite un token CSRF vinculado a la sesión]
  B --> C[Token en campo oculto o cabecera personalizada]
  C --> D[El usuario envía una petición que cambia estado]
  D --> E{¿El token coincide con el valor de sesión?}
  E -- Sí --> F[Procesar la petición]
  E -- No / ausente --> G[Rechazar 403 - petición falsificada]
  H[Formulario de origen cruzado del atacante] -. no puede leer el token .-> G

Ejemplos

  1. 01

    Campo oculto <input type="hidden" name="csrf" value="a8f1..."> en un formulario.

  2. 02

    Cabecera X-CSRF-Token validada en servidor contra un secreto por sesión.

Preguntas frecuentes

¿Qué es Token CSRF?

Valor impredecible y por sesión incluido en formularios o cabeceras para que el servidor confirme que las peticiones que cambian estado proceden de sus propias páginas. Pertenece a la categoría de Identidad y acceso en ciberseguridad.

¿Qué significa Token CSRF?

Valor impredecible y por sesión incluido en formularios o cabeceras para que el servidor confirme que las peticiones que cambian estado proceden de sus propias páginas.

¿Cómo defenderse de Token CSRF?

Las defensas contra Token CSRF combinan habitualmente controles técnicos y prácticas operativas, como se detalla en la definición.

Términos relacionados