Menú Principal

Tokens?

Iniciado por Shell Root, 14 Abril 2011, 04:01 AM

0 Miembros y 1 Visitante están viendo este tema.

Shell Root

Bueno, hace varios días que ando programando, y ahora me dio la curiosidad de saber sobre los tokens.
No entiendo muy bien como funcionan, es decir, como se crean -no en código sino en acciones-
Por eso no duermo, por si tras mi ventana hay un cuervo. Cuelgo de hilos sueltos sabiendo que hay veneno en el aire.

Nakp

el token es como una verificacion captcha, se crea cuando se carga el formulario (se inicia una sesion) y se comprueba al hacer un cambio, es para evitar el CSRF, se utiliza sobre todo en tareas de administracion... por ejemplo un script que borre un usuario :)

dominio1.tld/usuario.php?accion=borrar&id=12345

pues supon que el administrador de dominio1.tld entro a dominio2.tld y habia una "imagen" que apuntaba hacia esa url lo cual haria que, si el admin esta autenticado en su sitio, borrara al usuario con id 12345 porque se genera una peticion y el admin obviamente, habia iniciado sesion :)

sin embargo si la accion borrar necesitara un token obligatoriamente y que ademas este sea iniciado en una sesion cada cierto tiempo la tecnica anterior no funcionaria porque no puedes poner una sesion aleatoria en la "imagen" si esta es generada por la aplicacion y ademas deben coincidir :xD

jajajaja no soy muy bueno explicando esto pero espero que algo hayas entendido :xD

saludos

pd: recuerdo como en un foro enermano borramos encuestas asi x'D agregando el link para eliminar la encuesta en nuestras firmas y el administrador "veia" nuestras imagenes y sin saberlo borraba cada encuesta x'D
Ojo por ojo, y el mundo acabará ciego.

Shell Root

Ahh ok, pero entonces supongo que ese token por usuario, deberá guardarse en la base de datos, no? En caso de que sí, -aunque me lo supongo-, la consulta continua no sería mucho tiempo perdido.
Por eso no duermo, por si tras mi ventana hay un cuervo. Cuelgo de hilos sueltos sabiendo que hay veneno en el aire.

Nakp

puede ser una sesion en la base de datos o usar la misma de php, por lo general la de php es mas que suficiente ya que por lo general el hash se genera en base a ciertos criterios (nick, ip, fecha)

como un captcha :P
Ojo por ojo, y el mundo acabará ciego.

chachito

Sin embargo los tokens nunca supliran un captcha un token puede ser facilmente vulnerado con cualkier bot

~ Yoya ~

Cita de: chachito en 27 Abril 2011, 21:39 PM
Sin embargo los tokens nunca supliran un captcha un token puede ser facilmente vulnerado con cualkier bot

Su proposito no es evitar un bot, sino CSRF(Cross site request forgery).
Mi madre me dijo que estoy destinado a ser pobre toda la vida.
Engineering is the art of balancing the benefits and drawbacks of any approach.