XCodeGhost: Entre fantasmas

Quien más, quien menos ha leído acerca de XCodeGhost. Una reciente bomba informativa que se ha vertido a los medios de comunicación como “App Store Hackeada”, dando a entender que el servicio de compra y descarga de aplicaciones había sido hackeado.

Espera, espera, espera…

Lo primero que nos viene a la cabeza es, ¿qué?, ¿cómo? y ¿cuándo? Abres la noticia, te dispones a leer y es cuando lo entiendes todo.

Para los “despistaos”: Se han encontrado aplicaciones en el App Store con código malicioso. Este código ha sido insertado por un malware dentro del IDE XCode para OS X. Así que, “App Store Hackeada”, ¿eh?

Vamos a quitarle un poco de hierro al asunto. Aunque, IMHO, no creo que se pueda considerar como un hackeo a la App Store, pero vamos a tomarlo como tal.

¿Qué ha pasado?

Se publica en el blog de Palo Alto Networks una noticia que daría la vuelta al mundo. En ella dicen que, a través de la red social china llamada Sina Weibo, se hace saber que hay un nuevo malware para OS X e iOS bautizado como XCodeGhost.

Este malware ha sido distribuido en un fichero ejecutable de tipo Mach-O, insertado en diferentes instaladores de XCode y finalmente, éstos instaladores han sido subidos al servicio de descarga Baidu. De esta forma, a aquellos desarrolladores chinos que se descargaran estas versiones de XCode, éste les venía con regalo: XCodeGhost.

¿Cómo funciona?

Grosso modo, después de que se descubriera el malware los investigadores de Palo Alto Networks analizaron el artefacto con más detalle, dejando al descubierto cómo funciona.

  • En primer lugar, teniendo el IDE XCode con regalo instalado, el malware inserta código malicioso en el momento que el desarrollador compila su App para iOS.
  • El desarrollador subía la app al App Store de Apple y, los mecanismos de seguridad de la compañía de la manzana no detectaban nada sospechoso.
  • Publicada la app, los usuarios que descargaran esta versión con código malicioso.
  • La app recopila información sobre el dispositivo y datos de configuración como:

    • Timestamp del dispositivo
    • Versión de iOS empleada
    • Tipo de dispositivo
    • Idioma
    • Nombre de la aplicación que ha recopilado la información
    • Red a la que está conectada
    • Etc.

Tal y como se muestra en la siguiente imagen donde se muestra parte del código:

Imagen extraída del blog de Palo Alto

Imagen extraída del blog de Palo Alto

La app cifra y envía la información recogida a sus CnC:

  • http://init.crash-analytics[.]com
  • http://init.icloud-diagnostics[.]com
  • http://init.icloud-analysis[.]com

Por último, y según las investigaciones llevadas a cabo por Palo Alto Networks, la aplicación maliciosa es capaz de realizar ataques de phishing al usuario de iOS, entre otros:

  • Secuestrar el navegador para dirigir al usuario a una URL que permita explotar otras vulnerabilidades en iOS o de otras aplicaciones.
  • Leer el contenido del portapapeles con el riesgo que conlleva: Si se ha copiado recientemente una contraseña, o información sensible, ésta será enviada al CnC.

Aplicaciones afectadas

Una vez descubierto lo que hace, era necesario identificar qué aplicaciones habían sido afectadas por este malware. La mayoría de ellas, como es de esperar, orientadas a usuarios chinos. Sin embargo, se ha llegado a extender a aplicaciones que utilizan usuarios de todo el mundo. Esto es debido a que las app las desarrollan compañías chinas. Para ver un listado completo de Apps que han sido identificadas hasta el día de hoy podéis acceder a este enlace.

Conclusiones

Para terminar, decir que este tipo de ataques no depende al 100% de la seguridad de Apple. Influye el hecho de que un desarrollador se descargue un entorno de desarrollo que viene con un malware de compilador que permite estos ataques. Éste es uno de los muchos motivos por los que, tal y como venimos diciendo desde hace mucho tiempo, es importante descargar software solo de fuentes fiables. Después ocurren cosas como éstas y nos llevamos las manos a la cabeza leyendo titulares como que la “App Store ha sido hackeada”.

Referencias