Apple ‘limpia’ la App Store tras mayor ataque en la historia de iOS

App Store
Decenas de apps fueron infectadas.
App Store
Decenas de apps fueron infectadas.

Cerca de 40 aplicaciones han sido retiradas de la App Store de iOS este fin de semana luego de que se confirmara una filtración de malware a gran escala en la tienda de aplicaciones móviles. El ataque, conocido como XcodeGhost, es la mayor aparición de software malicioso en la historia de la App Store.

Según descubrió la empresa de seguridad Palo Alto Networks, XcodeGhost permite obtener información de los usuarios que descargan las apps infectadas, la cual es posteriormente subida a servidores en China. El malware se esparce por medio de versiones corruptas de Xcode, el programa oficial de Apple para compilar el código fuente de las aplicaciones.

Como cuenta Cnet, Apple ofrece una versión limpia para descarga de Xcode desde sus servidores, pero en China los desarrolladores prefieren bajarla de otros lugares porque las velocidades de descarga desde el sitio oficial son muy lentas. Los atacantes aprovecharon esto para sembrar la versión corrupta del software en el internet chino, de modo que las aplicaciones compiladas con ella estaban infectadas por el malware pero pasaban por los controles de seguridad de la tienda. «Esta técnica podría también ser adoptada para atacar aplicaciones empresariales de iOS, o apps de OS X, de maneras mucho más peligrosas«, dice la empresa.

Es una forma de infección que no se había descubierto hasta ahora

«Hemos removido de la App Store las aplicaciones de las que sabemos que fueron hechas con el software falsificado«, le dijo Apple a Cnet. Aunque Palo Alto Networks habla de 39 apps infectadas –y publicó  la lista completa en su sitio web– la empresa de la manzana no ha dado cifras exactas ni nombres de las apps comprometidas. Se sabe, sin embargo, que entre ellas está WeChat, una popular app china de mensajería con 500 millones de usuarios.

Es muy inusual que se confirme la aparición de malware en la App Store de iOS. Apple es famosa por llevar a cabo exigentes controles para aprobar la publicación de las apps en su tienda, lo que ha permitido que la tasa de aplicaciones maliciosas sea bastante baja y que los ataques afecten mayoritariamente a los usuarios que tienen ‘jailbreak’, lo que hace que no tengan activados muchos de los controles de seguridad que tiene el iPhone por defecto.

Pero la seguridad informática es un juego del gato y el ratón entre los atacantes, las empresas y la comunidad de seguridad, por lo que es probable que nuevos tipos de ataques sigan descubriéndose.

Imagen: PeoGeo (vía Shutterstock). 

José Luis Peñarredonda

José Luis Peñarredonda

Un día me preguntaron sobre mis intereses y no supe por dónde empezar. Decidí entonces ponerlos en orden y dibujé un diagrama de Venn para agruparlos a todos: Internet, cine, periodismo, literatura, narración, música, ciencia, fotografía, diseño, política, escritura, filosofía, creatividad... Me di cuenta de que en toda la mitad de ese diagrama, en el punto en el que todos estos círculos confluyen, está la tecnología. Eso me llevó a ENTER.CO. Estudié Periodismo y Filosofía en la U. del Rosario. PGP: http://bit.ly/1Us3JoT

View all posts

30 comments

  • No falta el chino que baja Xcode por Baidu en vez de la fuente oficial. Definitivamente, uno de los eslabones más difíciles de controlar de la cadena de seguridad es el usuario.

    • Y los servidores, y los firwalls, y las conexiones, y el softwared de desarrollo, y…….eres tu limoncito????

  • No falta el chino que baja Xcode por Baidu en vez de la fuente oficial. Definitivamente, uno de los eslabones más difíciles de controlar de la cadena de seguridad es el usuario.

    • Y los servidores, y los firwalls, y las conexiones, y el softwared de desarrollo, y…….eres tu limoncito????

  • Pues mal por parte de Apple si no da la información de las aplicaciones afectadas porque los usuarios que usan esas apps ni sabran que les robaron informacion.

    Lo curioso de la lista que publico la empresa que encontro el problema es ver WinZip con 3 aplicaciones por lo menos es la unica popular que yo reconozco del listado.

    Otra mas para los que dicen que lo de Apple es mas seguro.

  • Pues mal por parte de Apple si no da la información de las aplicaciones afectadas porque los usuarios que usan esas apps ni sabran que les robaron informacion.

    Lo curioso de la lista que publico la empresa que encontro el problema es ver WinZip con 3 aplicaciones por lo menos es la unica popular que yo reconozco del listado.

    Otra mas para los que dicen que lo de Apple es mas seguro.

  • supongamos una aplicación web. hay cosas como un banco, hay cosas como un foro de moda. si alguien hace daño en el foro demoda publicando cosas que no son o algo, de pronto no es tan grave como que alguien se meta a los computadores de un banco a jugar con los ahorros de varias personas, y que pueden necesitar esos ahorros para suplir sus necesidades básicas.
    una aplicación genera páginas web, pero también recibe información de esas páginas. esoc orre end iferentes computadores. en el navegador del usuario está la página web, y en un computador tal vez en el edificio del banco o donde sea, hay otros programas corriendo, que llevan la contabilidad del asunto. el computador sólo sabe lo que le llega, no sabe si le llega de la pñagina que generó la misma aplicación o qué, sólo sabe que lo que sea que le llegue, tiene qué validarlo y mantener la integridad de toda la aplicación. por ejemplo, suponer que la clave sólo puede tener letras y números. a quién le corresponde revisdar eso, a la página web, o al servidor? la página web lo puede revisar para no generar tráfico y darle un aviso al usuario, pero es el servidor el responsable de mantener la información en un estado aceptable.
    entonces por qué le echan la culpa a ‘es que sacaron unkit de desarrollo falsificado’? entonces es que si lo hacen con su kit de desarrollo ya no validan? sabiendo que hay tantas plataformas para el desarrollo de aplicaciones, las demás sílas revisan entonces? y no estaban validando que en efecto fuera hecho con el kit de desarrollo?

    editado: comop que me puse a divagar y de pronto no quedó claro lo de la aplicación web. a lo que esté corriendo en el servidor, le llegan cosas por ‘get’ y ‘post’ y cookies y esas cosas, sabe qué le llega por cada lado, pero realmente no tiene certeza que los gets y los posts vengan de la página del banco. entonces como el servidor no valida lo que le llega porque la página web ya lo hizo. y alguien genera esas solicitudes desde otro lado y ya, no de malas, es que sacaron una página chimbeada. eso intuitivamente es trivial, y una excusa como esa sería para mandar a unos cuántos ala cárcel por negligencia. y acá es una compañía con millones de dispositivos y demás, y les vende aplicaciones supuestamente con la idea que este tipo de cosas no ocurren..

    re-editado 2: mejor dicho, suena casi como una excusa infantil que salgan a decir que fue culpa del kit de desarrollo chimbeado, y no por el proceso de revisión, en el que ya se han colado varias cosas, así no tengan tanta publicidad

    • No soy fan de apple pero no me parece una excusa infantil. No creo que en apple se pongan a leer el código fuente de todas las apps (y no creo que lo tengan). Por lo que el proceso de validación debe ser demasiado «manual» algo así como instalar la app en un ambiente controlado y ver que pasa…. Eso no es como verificar usuarios en un servidor web.

      Si al compilar la aplicación el kit de desarrollo inserta código o librerías maliciosas. Pueden existir cientos de formas para evadir los procesos de seguridad como que el malware se active 6 meses después de la instalación de la app.

      • estoy de acuerdo con que no se puede a partir del código fuente, pero como indico en el comentario, el kit de apple no es lo único que se usa para hacer aplicaciones en la tienda. entonces las demás no las revisan? se supone que lo que corre como aplicaciones es un código que llama servicios del sistema. si fuera android correría código parecido a java, llamando librerías que hagan parte de lalibrería de la máquina virtual. acá no se llamará art ni java ni dalvik, pero habrá algo parecido, así como m$ tiene a su .net o lo que sea. un programa puede tener un encabezado que indique cuáles son las librerías que llama, y de pronto cuáles funciones llama. con eso arma una tabla y cuando llame las funciones hace referencia al índice dentro de la tabla; con eso no puede llamar nada que no haya avisado. Así mismo se puede saber, o la misma máquina virtual sabe cuáles son los servicios que presta cada librería, y si la cosa está bien hecha, no hay ningún servicio que pueda ser implementado sin llamar la librería que presta dichas funciones. eso depende de la base y la arquitectura que hayan usado
        y como dije en el comentario, eso ya ha ocurrido varias veces. la respuesta siempre es la misma: qué tanto es una aplicaciónc olada contra todo el malware que hay en otras plataformas. se supone que sí hay una revisión manual, por lo menos para la parte cosmética. que la interfase sea fácil de usar y todas esas cosas, pero sin im`portar la herramienta que se haya usado, la validación que no haya malware oc osasparecidas se debería hacer con herramientas automáticas, que si todo está bien hecho, debería ser suficiente

        editado: parece que la protección de la tienda es que cuando se suben las aplicaciones quedan relacionadas con quién las subió, a diferencia de un virus o algo parecido que se le pega pero ud no sabe cuándo fue o de dónde vino. por eso los desarrolladores no suben aplicaciones maliciosas.. porque la aplicación va con una cuenta, que está vinculada con una dirección física o una cuenta de banco, que puede ser rastreada para encontrar a un responsable. pero si ud pasa eso por alto y sabe a qué va, y está dispuesto aintentarlo puede hacer su aplicación maliciosa, y ésta queda funcionando hasta que se la pillen. si confía en que cuando lo pillen no van a poder hacerle nada, y que va a durar un buen tiempo pasando desapercibida, pues ud queda con su aplicación maliciosa en la tienda. lo que ud dice de revisión manual la tienen qué hacer para cada aplicación, pero creo que para ninguna pueden usar eso para saber si la aplicación es maliciosa o no. se supone que tiene qué tener algo medio automático que se encargue de eso

        • Pues david…me perdonas pero el pollito tiene razon…si saben que hay mas paltaformas de desarrollo deben revisarlas todas….y si es físicamente imposible hacerlo al menos crear conciencia de que es posible que ciertas aplicaciones LEGALES (descargadas directamente desde apple store) no son seguras en vez de pregonar a los 4 vientos que lo son, al menos para el usuario final sea mas selectivo

          • si, ud dice que deben probar todas las plataformas de desarrollo y yo lo respondí que ellos no prueban plataformas. Los usuarios instalan apps en sus iphones no plataformas de desarrollo. Solo cuando ud encuentra el mismo malware en varias apps tiene sentido ver como compilaron y empaquetaron las apps.

          • a ver…si probaran las apps se hubieran dado cuenta del «pequeño» problema, a eso me referia cuando te pregunte

          • @carlorivera:disqus a ver…… claro que las prueban!!!!

            Por mas apple o google que se llamen, no pueden hacer magia. Las pruebas automáticas no son lo suficientemente inteligentes y las pruebas manuales se limitan a verificar los guidelines de cada plataforma.

            El malware funciona así: … Imagine que ud instala una aplicación y a los dos meses aparece un popup en la aplicación que le pide cambio de contraseña y luego esos datos que ud ingresa se envían a un servidor. Ese comportamiento lo hacen muchas aplicaciones ( android, ios, blackberry…) no tiene nada de sospechoso. También es normal que las aplicaciones chinas se comuniquen con servidores chinos…. Apple no tenía xq rechazar la aplicación.

            Apple, Google, Microsoft o Blackberry no tienen ni idea que hace cada una de las aplicaciones. Si la aplicación necesita permisos para acceder a la red, para ellos es normal que una app envíe requests a un servidor. Si una aplicación muestra un popup, bajo que reglas se basa un set de pruebas para decidir si está mal que ese popup se muestre o no.

        • claro que tienen métodos automáticos. Pero hay cosas que no pasan las pruebas, cuando una aplicación creada en China se conecta con servidores chinos. Que tiene de sospechoso.?

  • supongamos una aplicación web. hay cosas como un banco, hay cosas como un foro de moda. si alguien hace daño en el foro demoda publicando cosas que no son o algo, de pronto no es tan grave como que alguien se meta a los computadores de un banco a jugar con los ahorros de varias personas, y que pueden necesitar esos ahorros para suplir sus necesidades básicas.
    una aplicación genera páginas web, pero también recibe información de esas páginas. esoc orre end iferentes computadores. en el navegador del usuario está la página web, y en un computador tal vez en el edificio del banco o donde sea, hay otros programas corriendo, que llevan la contabilidad del asunto. el computador sólo sabe lo que le llega, no sabe si le llega de la pñagina que generó la misma aplicación o qué, sólo sabe que lo que sea que le llegue, tiene qué validarlo y mantener la integridad de toda la aplicación. por ejemplo, suponer que la clave sólo puede tener letras y números. a quién le corresponde revisdar eso, a la página web, o al servidor? la página web lo puede revisar para no generar tráfico y darle un aviso al usuario, pero es el servidor el responsable de mantener la información en un estado aceptable.
    entonces por qué le echan la culpa a ‘es que sacaron unkit de desarrollo falsificado’? entonces es que si lo hacen con su kit de desarrollo ya no validan? sabiendo que hay tantas plataformas para el desarrollo de aplicaciones, las demás sílas revisan entonces? y no estaban validando que en efecto fuera hecho con el kit de desarrollo?

    editado: comop que me puse a divagar y de pronto no quedó claro lo de la aplicación web. a lo que esté corriendo en el servidor, le llegan cosas por ‘get’ y ‘post’ y cookies y esas cosas, sabe qué le llega por cada lado, pero realmente no tiene certeza que los gets y los posts vengan de la página del banco. entonces como el servidor no valida lo que le llega porque la página web ya lo hizo. y alguien genera esas solicitudes desde otro lado y ya, no de malas, es que sacaron una página chimbeada. eso intuitivamente es trivial, y una excusa como esa sería para mandar a unos cuántos ala cárcel por negligencia. y acá es una compañía con millones de dispositivos y demás, y les vende aplicaciones supuestamente con la idea que este tipo de cosas no ocurren..

    re-editado 2: mejor dicho, suena casi como una excusa infantil que salgan a decir que fue culpa del kit de desarrollo chimbeado, y no por el proceso de revisión, en el que ya se han colado varias cosas, así no tengan tanta publicidad

    • No soy fan de apple pero no me parece una excusa infantil. No creo que en apple se pongan a leer el código fuente de todas las apps (y no creo que lo tengan). Por lo que el proceso de validación debe ser demasiado «manual» algo así como instalar la app en un ambiente controlado y ver que pasa…. Eso no es como verificar usuarios en un servidor web.

      Si al compilar la aplicación el kit de desarrollo inserta código o librerías maliciosas. Pueden existir cientos de formas para evadir los procesos de seguridad como que el malware se active 6 meses después de la instalación de la app.

      • estoy de acuerdo con que no se puede a partir del código fuente, pero como indico en el comentario, el kit de apple no es lo único que se usa para hacer aplicaciones en la tienda. entonces las demás no las revisan? se supone que lo que corre como aplicaciones es un código que llama servicios del sistema. si fuera android correría código parecido a java, llamando librerías que hagan parte de lalibrería de la máquina virtual. acá no se llamará art ni java ni dalvik, pero habrá algo parecido, así como m$ tiene a su .net o lo que sea. un programa puede tener un encabezado que indique cuáles son las librerías que llama, y de pronto cuáles funciones llama. con eso arma una tabla y cuando llame las funciones hace referencia al índice dentro de la tabla; con eso no puede llamar nada que no haya avisado. Así mismo se puede saber, o la misma máquina virtual sabe cuáles son los servicios que presta cada librería, y si la cosa está bien hecha, no hay ningún servicio que pueda ser implementado sin llamar la librería que presta dichas funciones. eso depende de la base y la arquitectura que hayan usado
        y como dije en el comentario, eso ya ha ocurrido varias veces. la respuesta siempre es la misma: qué tanto es una aplicaciónc olada contra todo el malware que hay en otras plataformas. se supone que sí hay una revisión manual, por lo menos para la parte cosmética. que la interfase sea fácil de usar y todas esas cosas, pero sin im`portar la herramienta que se haya usado, la validación que no haya malware oc osasparecidas se debería hacer con herramientas automáticas, que si todo está bien hecho, debería ser suficiente

        editado: parece que la protección de la tienda es que cuando se suben las aplicaciones quedan relacionadas con quién las subió, a diferencia de un virus o algo parecido que se le pega pero ud no sabe cuándo fue o de dónde vino. por eso los desarrolladores no suben aplicaciones maliciosas.. porque la aplicación va con una cuenta, que está vinculada con una dirección física o una cuenta de banco, que puede ser rastreada para encontrar a un responsable. pero si ud pasa eso por alto y sabe a qué va, y está dispuesto aintentarlo puede hacer su aplicación maliciosa, y ésta queda funcionando hasta que se la pillen. si confía en que cuando lo pillen no van a poder hacerle nada, y que va a durar un buen tiempo pasando desapercibida, pues ud queda con su aplicación maliciosa en la tienda. lo que ud dice de revisión manual la tienen qué hacer para cada aplicación, pero creo que para ninguna pueden usar eso para saber si la aplicación es maliciosa o no. se supone que tiene qué tener algo medio automático que se encargue de eso

        • Pues david…me perdonas pero el pollito tiene razon…si saben que hay mas paltaformas de desarrollo deben revisarlas todas….y si es físicamente imposible hacerlo al menos crear conciencia de que es posible que ciertas aplicaciones LEGALES (descargadas directamente desde apple store) no son seguras en vez de pregonar a los 4 vientos que lo son, al menos para el usuario final sea mas selectivo

          • si, ud dice que deben probar todas las plataformas de desarrollo y yo lo respondí que ellos no prueban plataformas. Los usuarios instalan apps en sus iphones no plataformas de desarrollo. Solo cuando ud encuentra el mismo malware en varias apps tiene sentido ver como compilaron y empaquetaron las apps.

          • a ver…si probaran las apps se hubieran dado cuenta del «pequeño» problema, a eso me referia cuando te pregunte

          • @carlorivera:disqus a ver…… claro que las prueban!!!!

            Por mas apple o google que se llamen, no pueden hacer magia. Las pruebas automáticas no son lo suficientemente inteligentes y las pruebas manuales se limitan a verificar los guidelines de cada plataforma.

            El malware funciona así: … Imagine que ud instala una aplicación y a los dos meses aparece un popup en la aplicación que le pide cambio de contraseña y luego esos datos que ud ingresa se envían a un servidor. Ese comportamiento lo hacen muchas aplicaciones ( android, ios, blackberry…) no tiene nada de sospechoso. También es normal que las aplicaciones chinas se comuniquen con servidores chinos…. Apple no tenía xq rechazar la aplicación.

            Apple, Google, Microsoft o Blackberry no tienen ni idea que hace cada una de las aplicaciones. Si la aplicación necesita permisos para acceder a la red, para ellos es normal que una app envíe requests a un servidor. Si una aplicación muestra un popup, bajo que reglas se basa un set de pruebas para decidir si está mal que ese popup se muestre o no.

        • claro que tienen métodos automáticos. Pero hay cosas que no pasan las pruebas, cuando una aplicación creada en China se conecta con servidores chinos. Que tiene de sospechoso.?

Archivos