jueves, agosto 29, 2013

Esa URL que envías a tus clientes puede ser tu perdición

Hoy he decidido no publicar el post que había preparado, ya que podría afectar a personas inocentes, pero os voy a contar en qué consiste el problema que ni es nuevo, ni es difícil de entender para buscar una solución.

El problema

Si has recibido alguna vez un correo con una URL para confirmar tu correo electrónico habrás visto que suele venir un ID y un Código_Temporal que hace las tareas de una especie de password. Este código temporal debería cumplir dos requisitos como mínimos:
- Ser de un único uso.
- En el caso de tener una vida más larga, no permitir jamás acceder a información sensible o personal.
¿Por qué debería ser así? 

Pues porque la URL no es ni mucho algo privado. Una dirección URL puede acabar en manos de cualquiera. Puede acabar en cualquier registro de actividad web, en un motor antispam / antimalware, o lo que es mucho peor, en cualquier buscador que la indexe.

Figura 1: Una URL que puede ser un FAIL si da acceso a info sensible

Por eso, cada vez que me llega un correo electrónico con una URL en la que aparece un ID y un Código_Temporal, decido hacer un poquito de hacking con buscadores, y mirar cuántas de esas URLs han terminado en Google, como ya os conté en el caso del Sofá del Bank of América o en el tricky caso de cómo ver los post de Blogger antes de que se publicasen.

En este caso, aparecían 370 URLs indexadas, de las que varias tienen el Código_Temporal aún activo y dan acceso a datos sensibles de clientes, como números de teléfono, datos de contacto, direcciones y alguna información más.

Figura 2: URLs con acceso a información sensible indexadas en Google.

De ellas no se almacena ningún contenido porque el robots.txt así lo dice, sin embargo está guardada la URL en la base de datos de Google, además del título de la página en varios casos.

¿Qué se puede hacer?

En el caso en concreto que he decido no publicar, la URL da acceso mediante un ID y un Código_Temporal que puede durar meses, a datos personales e información sensible que puede ser utilizada para realizar cambios en otros sitios que podrían afectar a la vida de una determinada persona.

El uso de los incomprendidos robots.txt para que no acabe indexado el contenido de la web en uno de esos sitios no es suficiente, por lo que como medida urgente se deberían utilizar las Herramientas del Webmaster para borrar las URLs también de la base de datos de los buscadores.

Figura 3: Solicitud de eliminar una URL del índice de Google

Sin embargo, la solución más sencilla si no puedes cumplir con los dos requisitos citados al principio, sería no enviar el código temporal por GET, sino dotarlo de la importancia que tiene - al final hace de password - y solicitarlo por tanto usando un formulario de acceso en una web entregada bajo HTTPs.

Si no haces eso, esa URL que envías a tus clientes puede ser tu perdición.

Saludos Malignos!

PD: Vamos a reportar el fallo de forma responsable, pero cuando esté solucionado y nadie se vea afectado prometo contaros qué fue lo que decidí no publicar... y me entenderéis.

1 comentario:

  1. Interesante. A ver que nos cuentas. En otro orden de cosas ¿cuando fué la última vez que cambiaste la estética del blog? Saludos.

    ResponderEliminar