domingo, 10 de marzo de 2013

Apple implementa por defecto HTTPS en App Store y soluciona así varias vulnerabilidades

El tráfico desde el dispositivo hasta la App Store de Apple siempre se ha producido en texto claro. Esto ha presentado varios problemas de seguridad documentados desde 2012, pero no ha sido hasta ahora cuando Apple ha instaurado la comunicación cifrada para solucionar varios problemas.

La historia se remonta a julio de 2012 cuando el Dr. Elie Bursztein de Google reporta de forma privada vulnerabilidades en la aplicación App Store para iOS. La raíz de todas ellas era el uso de HTTP en algunas interacciones con itunes.apple.com. En redes locales, se podría capturar el tráfico y se podrían dar los siguientes escenarios:

  • Robo de contraseña de iTunes: Cuando la víctima abre la aplicación App Store, se hace una petición al servidor de iTunes para comprobar la lista de actualizaciones disponibles. El atacante podría interceptar esta petición e inyectar un cuadro de diálogo pidiendo la contraseña de iTunes.
        
  • "Intercambio" de la app: Cuando la víctima busca una app y hace click en instalar, App Store realiza una petición con el ID de la app deseada. Este podría ser cambiado por el atacante interceptando la petición e instalándose en última instancia la app deseada por el atacante.
        
  • Actualización falsa: Sería posible manipular la página de actualizaciones disponibles en App Store, para así instalar una app falsa.
        
  • Evitar instalar una app: Se podría reemplazar la ID de una app que se desee descargar por una app ya instalada, evitando así que la víctima instale un app en concreto.
        
  • Revelación de aplicaciones instaladas: cuando se consulta la lista de actualizaciones disponibles, se envía una lista de las app instaladas en el dispositivo que puede ser visualizada por cualquiera en la red local.

A raíz de tales posibles escenarios, Apple ha decidido usar HTTPS en vez de HTTP, solucionando todos estos problemas de una vez. Ahora se han dado detalles técnicos sobre cómo realizar cada ataque, disponibles en el apartado de más información.

Más información:

Apple finally turns HTTPS on for the App Store, fixing a lot of vulnerabilities

iOs App Store password stealing attack

iOS App swap attack

iOs App Store fake upgrade attack
  


Fernando Castillo

Sergio de los Santos
Twitter: @ssantosv

2 comentarios:

  1. Realmente lo único relevante es la opción de inyectar un cuadro de diálogo para robar la contraseña.
    Todas las demás opciones relacionadas con instalar aplicaciones son irrelevantes porque las aplicaciones ilegítimas no están firmadas por Apple y no corren en iOS (salvo que esté hecho el jailbreak). Por lo tanto no suponen un problema real en la práctica.
    RAFAEL PALACIOS

    ResponderEliminar
    Respuestas
    1. Hola Rafael:

      El problema no es sólo eso, es que, Apple debería firmar esas aplicaciones que pasan en su plataforma y, antes de sacarlos al aire para todos los usuarios, detectar como lo hace Google Play con las aplicaciones que se publiquen. Porque en medida, muchas aplicaciones tendrán código malicioso por algún lado.

      Google Play tiene un robot que detecta y elimina código malicioso que provengan de las aplicaciones que se descarguen. ¿Apple tiene eso? ¿Apple tiene en su AppStore un antivirus?: Pues no, o al menos es lo que consta.

      También es el problema, de que Apple ahora se ponga el cifrado web y su entorno para bajarse los programas, ya que, normalmente, se 'snifea' la conexión de cierto iPhone/iPad, de ahí, pueden robar la información de estos dispositivos (aún hay que recordar la filtración del FBI esos números ID únicos de los iPhones).

      Se podría hacer un poco más, para que no caigan estos fallos a manos peligrosas.

      Saludos.

      Eliminar