Hola, Viendo el sistema ofrecido por API para la autenticación quería comentar una posible mejora de seguridad ante el mismo.
El método me parece muy interesante, aunque todos los mecanismos basados en el secreto compartido se consideran debiles, pero la verdad es que este método innova frente a otros en un punto clave, y es que se ha imitado el concepto de challenge típico de los logins con certificados X509, donde lo que firmas por cada petición cambia, aquí cambia cada vez ya que la URL incluye el nombre del servicio y los parámetros de la llamada. El caso es que como comento creo que se puede mejorar: Este método tiene un punto de ataque muy básico basado en que la parte variable de la URL con el nombre del servicio y los parámetros se deja en texto claro, aparte de dejarlo cifrado, por lo que el ataque es fácil, si capturas una llamada el atacante puede volver a realizarla cuantas veces quiera, el método aún así es bueno porque el atacante solo puede realizar esa llamada, no puede cambiar los parámetros ni llamar a otro servicio que no sea ese, pero como digo esto se puede mejorar enormemente de manera muy simple: dejar solo en texto claro la variable del clientID, eso te permite saber con que clave debes descifrar, pero dejar el nombre del servicio y el resto de parámetros ocultos, de esta manera, un atacante sigue pudiendo capturar la llamada e invocar, pero no sabra a que esta invocando ni con que parámetros, ademas, desde el punto de vista de un ataque criptográfico con fuerza bruta es mucho menos vulnerable que el atacante no conozca lo que se ha cifrado. Un saludo -- You received this message because you are subscribed to the Google Groups "Google Maps API V2" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/google-maps-api?hl=en.
