Curiosidades sobre el malware para Android que mina Litecoins

miércoles, 2 de abril de 2014

Hace ya algunos años que se intuyó lo que ocurriría en los ordenadores de sobremesa (y no solo en los PC): con la llegada del dinero (y las carteras) virtuales, el malware comenzaría a robarlo. Como no todos disponen de cartera, también aprovecharían la capacidad de cómputo para "minar" moneda. Y el paso natural es que el malware saltara al teléfono para minar bitcoins. Si bien ya existían muestras aisladas fuera del market oficial, ahora se han encontrado apps de este tipo en Google Play.

Qué se ha encontrado

Ya se conocían ciertos programas que, disfrazados bajo apps con otras supuestas utilidades, contenían código para minar Bitcoin, Litecoin, y Dogecoin. Lo cierto es que existen incluso apps legítimas para minar desde el teléfono. Los atacantes habían reempaquetado ciertas apps e introducido el código en su interior. Descargaban un fichero de configuración y minaban en segundo plano. Pero, hasta ahora, fuera de Google Play.

Una de las apps encontradas que minaban Litecoins
Trend Micro ha encontrado ahora otros programas en Google Play. Estas apps minaban solo Litecoins, y se activaban cuando el teléfono estaba cargando para no agotar tan rápido la batería. Trend Micro dice que el programa ha sido descargado por millones de usuarios y de ahí deduce que todos están infectados. No podemos saber si esto es del todo cierto. Por nuestra investigación, creemos que la aplicación no siempre contuvo ese código, sino que se introdujo más tarde. Por tanto no todas las descargas tienen que corresponder a la versión "contaminada". Aunque sí es cierto que se publicaron varias versiones y que, si no aumentaron los permisos, se podía haber actualizado de forma automática con el código malicioso. Por ejemplo, la app se llamaba en un principio "Songs" (y hacía lo que prometía) pero luego pasó a llamarse "Indian songs". Creemos que en algún momento introdujo el código.

Así se veía la app el 26 de marzo

Así se veía la app el 14 de marzo
De hecho, hemos encontrado versiones anteriores que no contienen el código minado. Al tratarse de dos aplicaciones creadas por "aparentemente" dos desarrolladores diferentes, podría también tratarse de un robo de cuentas en Google Play. Incluso, inexplicablemente, Google Play, aunque borró las apps contaminadas, mantiene otra aplicación del mismo programador (Da Xpert) todavía activa (aunque solo en algunos países).

App que se mantiene en Google Play, del mismo desarrollador
Cómo funcionaban y algunas curiosidades

El código era claro. Socialtokenmobile.android.miner contenía las instrucciones necesarias para minar y comunicarse con el pool. Las aplicaciones se mantuvieron al menos un mes en Google Play, aunque ya hemos mencionado que quizás no siempre infectadas. Fueron retiradas después de que Trend Micro las detectara. Los usuarios no notaron nada en ellas, ni siquiera se refleja en los comentarios, excepto cuando ya era tarde.

Código incrustado en las apps para minar litecoins

Según nuestras investigaciones, el atacante continúa subiendo aplicaciones a Google Play y mantiene al menos 25 activas bajo diferentes cuentas. Por ahora, hemos comprobado que ninguna contiene código para minar Litecoins, pero sí que, en cualquier momento y como ha hecho con estas, podría actualizarlas de forma transparente siempre que no añada permisos a la nueva versión. En cualquier caso, no sabemos el éxito de la operación. Quizás se trate de un caso anecdótico.

¿Tiene sentido minar en un teléfono?

Quizás sí. Litecoin dispone de programas específicos para Blackberry y Android. Aunque basada en el protocolo de Bitcoin, ha sido diseñada para no necesitar tanto hardware para minar. Litecoin puede minar ("crear monedas") de manera más rápida, con dos minutos de promedio frente a los 10 de bitcoin. También ha sido diseñada para que existan 84 millones de unidades, en vez de 21 como Bitcoin. Litecoin se considera más adecuada para las pequeñas transacciones diarias y habituales, mientras que Bitcoin tiene su mercado en las transacciones más voluminosas. Un Litecoin vale actualmente unos 13 dólares y existen 27 millones circulando.

Pero , ¿qué es minar?

A grandes rasgos, minar es validar transacciones, y a los usuarios que dedican sus recursos a validar, se les recompensa con monedas. Las transacciones criptográficas con moneda virtual necesitan de potentes cálculos para poder validarlas, y las realizan de forma horizontal los usuarios (no existe la figura de un banco ni nada parecido). Los usuarios, para validar transacciones y comprobar que no se hacen trampas utilizando el mismo material cirptográfico, (o sea, la misma moneda dos veces) deben validar intensamente y entre varias partes las cadenas utilizadas (el sistema está basados en criptografía simétrica y asimétrica). Para motivarlos, ese tiempo de validación (gastando recursos propios) se paga. Así que minar consiste en tomar un "pool" de un servidor (compartido, normalmente) de transacciones a validar. En el caso de los bitcoins, por cada bloque de transacciones se recibían 50 bitcoins. Ahora son ya 25, y dentro de unos años, 12.5. De ahí que cada vez cueste "más" minar.

Sergio de los Santos
ssantos@11paths.com

No hay comentarios:

Publicar un comentario en la entrada