Foros del Web » Programando para Internet » PHP »

Protección con Token contra CSRF

Estas en el tema de Protección con Token contra CSRF en el foro de PHP en Foros del Web. Buenas, estoy intentando crear un token para añadir a mis formularios con el fin de evitar los ataques CSRF en su mayor parte. Estoy pensando ...
  #1 (permalink)  
Antiguo 18/04/2013, 12:47
Avatar de Karmac  
Fecha de Ingreso: agosto-2011
Ubicación: Bilbao
Mensajes: 196
Antigüedad: 12 años, 8 meses
Puntos: 34
Pregunta Protección con Token contra CSRF

Buenas, estoy intentando crear un token para añadir a mis formularios con el fin de evitar los ataques CSRF en su mayor parte. Estoy pensando en utilizar para crear la cadena una palabra secreta y el tiempo, de modo que termine caducando el código. Aún así, los atacantes podrían spoofear el código entre ese lapso de tiempo.

También he pensado en que el Token solo sirva para una fecha determinada, pero de este modo voy a tener que guardar la fecha en una variable de sesión o cookie, y si copian el código y la cookie también podrán spoofearlo.

¿Cuál veis vosotros el modo más seguro de generar la cadena? Muchas gracias.

Saludos.
  #2 (permalink)  
Antiguo 18/04/2013, 13:04
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Respuesta: Protección con Token contra CSRF

No hace falta complicarse tanto, lo importante es que el código sea diferente por cada sesión de usuario. El verdadero peligro en un ataque CSRF es que otras páginas puedan realizar peticiones sin intervención del usuario.

Y es lógico que tiene que tener un tiempo de validez limitado.
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #3 (permalink)  
Antiguo 18/04/2013, 13:25
Avatar de Karmac  
Fecha de Ingreso: agosto-2011
Ubicación: Bilbao
Mensajes: 196
Antigüedad: 12 años, 8 meses
Puntos: 34
Respuesta: Protección con Token contra CSRF

Ese es el principal problema, que quiero hacerlo sin necesidad de autentificación de usuario.
  #4 (permalink)  
Antiguo 18/04/2013, 13:28
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Respuesta: Protección con Token contra CSRF

No me refiero necesariamente a autenticación, sino a una sesión:
http://www.php.net/manual/es/book.session.php

En todo caso, hay que ver qué formulario necesitas proteger, por lo general no tiene sentido si no hay autenticación de por medio.
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #5 (permalink)  
Antiguo 18/04/2013, 13:43
Avatar de Karmac  
Fecha de Ingreso: agosto-2011
Ubicación: Bilbao
Mensajes: 196
Antigüedad: 12 años, 8 meses
Puntos: 34
Respuesta: Protección con Token contra CSRF

Me parece coherente, sí. ¿Y esa sesión de usuario de la que me hablas debería definirla yo o por algún motivo se crea automáticamente? Si la respuesta es sí, ¿que valor debería contener la variable?
  #6 (permalink)  
Antiguo 18/04/2013, 13:51
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Respuesta: Protección con Token contra CSRF

Sí, debes crear una sesión y allí guardar el token; cada sesión con un token diferente que se renueva cada cierto tiempo.
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #7 (permalink)  
Antiguo 18/04/2013, 13:56
Avatar de Karmac  
Fecha de Ingreso: agosto-2011
Ubicación: Bilbao
Mensajes: 196
Antigüedad: 12 años, 8 meses
Puntos: 34
Respuesta: Protección con Token contra CSRF

Umm, bien, seguiré la pista. ¡Gracias!

Etiquetas: contra, formulario, token
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 23:39.