La seguridad de un parámetro de URL único [duplicado]

0

Tomemos, por ejemplo, un sistema de mensajería simple. Los usuarios pueden enviarse mensajes personales. Cuando lees un mensaje personal, la URL sería algo así como http://www.example.com/messaging.php?mailid=453796451 . Veo muchos sitios web que recuperan datos usando solo un identificador único, como 45379451 en este caso. Si alguien más conociera este identificador único, podría leer el mensaje privado enviado del usuario A al usuario B.

¿Ahora mi pregunta es si tal identificación que se pasa a través de la URL es realmente segura? En este caso, la identificación consta de 8 números, lo que significaría que un pirata informático tendría que intentar 100,000,000 números a la vez. Máximo, para poder leer el mensaje privado. Pero si la base de datos almacena un millón de mensajes privados, el pirata informático podría leer un mensaje privado aproximadamente cada 100 intentos. Por lo tanto, ¿es una mala idea hacer que el sistema solo se base en la identificación que se pasa a través de la URL, o es engañoso verificar si el usuario coincide con el destinatario del mensaje?

Estoy programando un sistema de mensajería privada en este momento, y me preguntaba cuál sería la mejor práctica para hacerlo.

Lo siento, si mi título es un poco engañoso, no podría pensar en otra forma de describir este problema.

    
pregunta P.Yntema 15.09.2015 - 19:20
fuente

1 respuesta

1
  

en este caso. Si alguien más conociera este identificador único, él   sería capaz de leer el mensaje privado enviado desde el usuario A al usuario B.

Esto no es (necesariamente) cierto. Generalmente, hay cuentas de usuario en dichos sitios y un usuario que inicia sesión crea una sesión con una identificación en una cookie. messaging.php puede verificar si el ID de sesión dado coincide con el propietario del mensaje solicitado y mostrar un mensaje de error si no coincide.

Si alguien más obtiene el ID de sesión , es cierto que el acceso es posible. Sin embargo, conseguir no es tan fácil. Ciertamente es más largo que su ID de mensaje, y no se incrementa automáticamente; adivinar tomaría mucho más tiempo (especialmente, necesita la ID de sesión única para calcular la ID de mensaje actual, no solo cualquier ID de sesión). Y hay muchas cosas que impiden que los datos de las cookies sean leídos por todo lo que no proviene del propio sitio de creación de cookies.

    
respondido por el deviantfan 15.09.2015 - 19:24
fuente

Lea otras preguntas en las etiquetas