27 marzo 2014

Intrusión en los servidores de Cerberus anti-robo (Android)

Uno de los peores correos que puedes recibir en la actualidad es en el que se te anuncia que uno de los servicios en los que estás registrado ha sido comprometido, y que tus credenciales se encuentran dentro de un listado de "hashes pendientes de crackear" de algún grupo de graciosillos de cualquier lugar del mundo.

Aún más crítico es si al servicio en cuestión le has delegado una parte de la seguridad de tu dispositivo Android, en la que ibas a confiar para localizarlo en caso de pérdida (al más puro estilo Find My iPhone de iOS)

Cerberus anti-robo es una aplicación de Android que permite localizar un dispositivo registrado en caso de que lo pierdas o te lo roben. La versión gratuita de prueba permite un registro de una semana, y por 3 euros aproximadamente se podría obtener la licencia de por vida. Luis Delgado habló ya de vulnerabilidades en esta aplicación en su serie de posts sobre la actualidad del malware en Android.


Para posteriormente localizar tu dispositivo móvil y gestionarlo, es necesario utilizar un servicio centralizado en los servidores de Cerberus para acceder al panel de control personal.


El equipo de seguridad de Cerberus ha enviado un aviso de seguridad a todos los usuarios (que podréis consultar también en el Google+ de Cerberus) anunciando que unos intrusos, tras comprometer servidores de la red externa, han accedido a más de 90000 cuentas de usuarios, incluyendo los hashes SHA-1 de las contraseñas, y que automáticamente han procedido a la reinicialización de las contraseñas de todos los usuarios afectados. Dichas credenciales se encontraban en un fichero de log, el cual fue rápidamente eliminado. No se accedió a la base de datos, las credenciales en ellas, según cuentan, tienen salt y varias iteraciones de cifrado, y comentan que pronto migrarán a bcrypt. Cuidado con los logs que almacenáis en vuestras aplicaciones, aunque sean temporales, pueden contener información que pudiera ser accesible por terceros.

Lo más curioso es que se ha detectado el acceso por parte de usuarios ajenos a 3 de las cuentas obtenidas.

¿Se tratará de un ataque dirigido, para obtener la localización de un conjunto de dispositivos concretos sobre los que se tenía constancia que estaban utilizando esta aplicación anti-robo? ¿O quizás al obtener todo el listado de usuarios, justamente esas 3 cuentas las identificaron como interesantes? 

Nunca lo sabremos.

27 comments :

fossie dijo...

Tal vez esas tres cuentas sean de algunos de los atacantes y el acceso sea la forma de verificar que el proceso ha tenido exito...


Confiemos que los afectados no utilicen la misma clave para otros servicios... que va a ser que no... :D


Saludos

deadlock dijo...

"Grupo de graciosillos"?

Fukigaeshi dijo...

Se escucha cada cosa que da miedo, de como los servicios de inteligencia espian con total impunidad y desfachatez,
Nunca se sabrá si fueron unos graciosos o una agencia de espionaje, porque aqui parece que es normal que te graben tus conversaciones o tus video-llamadas y no hay dimisiones en masa o penas de carcel

Manuel dijo...

Hola, necesito ayuda por favor. Alguien me podría decir como puedo saber que cuenta gmail es la que tengo asociada a mi whatsapp??. No se donde se puede mirar o como podría hacer para asociar con el ya instalado en mi movil una nueva... agradecería de corazon que alguien me ayudase. Un saludo.

simone dijo...

Cómo se podría hacer el proceso inverso? es decir... cifrar la bd sqlite.

Carlo tapioca dijo...

No entiendo nada ! alguien que me ayude le paso el archivo .crypt5 y m lo desencripta o.o

Augusto Bonilla dijo...

me aparece el mismo error en java como se puede corregir?: Exception in thread "main" java.security.InvalidKeyException: Ilegal key size

Catalina Rios dijo...

Hola me puedes ayudar con la instalacion del M2Crypto
mil gracias

Anon dijo...

Me pasa lo mismo, ¿alguna forma de hacerlo?

Joe dijo...

hay un programa llamado whatsapp xtract,solo es cuestion de pasar el archivo crypt5 a solo crypt y te lo ordena por numero de telefonos y fechas, recuerda: google es tu amigo jajaja. Salu2

Joe dijo...

con el programa whatsapp xtract abres ese archivo y te lo ordena solo

thefox81 dijo...

Muy buen trabajo

fermin dijo...

ha sido mi salvación. Gracias

eelleenn dijo...

Buenas tardes,


En primer lugar muchas gracias por el código, me está siendo de mucha ayuda.
Te escribo porque estoy realizando un trabajo y necesito utilizar tu código. ¿Qué tipo de licencia usas si es que usas alguna? Mi pregunta va dirigida a si puedo modificarlo para ajustarlo a mis necesidades. En cualquier caso, te haré referencia.


Un saludo.

pepe dijo...

En donde puedo ver el tutorial en java que escribiste?. Saludos

pepe dijo...

El problema que me ocurre es que el archivo producido pareciera estar mal formado.

pepe dijo...

Ese error me lo dio a mi al principio, pero resulta que no le estaba dando la cuenta de correo correcta. al hacerlo me creo el archivo legible.

pepe dijo...

Ya verificaste que estas desencriptando con la bd con la cuenta asociada a la misma? eso me ocurrio cuando le di una cuenta direfente

fagu24 dijo...

Hola a la hora de poner en consola: C:\Documents and Settings\Administrador.DESKTOP\Escritorio\Nueva carpeta>python pwncrypt5.py correo@gmail.com > msgstore.db.sqlite Luego lo abro con SQLite Database Browser y cuando pongo en Browse Data para ver los mensajes, me aparece en blanco. Pero cuando subo la db en http://www.recovermessages.com muestra solo 50 conversaciones, porque en SQLite muestra en blanco? :/

Javi dijo...

y para la del iphone no hay nada como lo que habia antes con el whatsapp xtrac

Domenico Fabian Firmino Delval dijo...

executo de la siguiente forma
python pwncrypt5.py msgstore.db.crypt5 sandrytaaml@gmail.com>msgstore.sdb

y como respuesta me da

File "pwncrypt5.py", line 32

print 'usage %s > decrypted.db' % sys.argv[0]

^

SyntaxError: invalid syntax

Calcantara dijo...

hola estoy tratando de usar java, pero me manda el siguiente mensaje, puedes ayudarme por favor?
Exception in thread "main"

java.security.InvalidKeyException: Illegal key size

at javax.crypto.Cipher.checkCryptoPerm(Cipher.java:1024)

at javax.crypto.Cipher.init(Cipher.java:1345)

at javax.crypto.Cipher.init(Cipher.java:1282)

at Wap.decrypt(Wap.java:58)

at Wap.main(Wap.java:39)

Lococco dijo...

Juanker, gracias por tu aportación la verdad me funcionó perfecto. Pero ahora con estas modificaciones de la forma de encriptado y de la clave de encriptación no sé cómo hacerlo. ¿Podrías decirme cómo puedo seguir desencriptando los archivos?
Gracias de antemano

alejandro dijo...

No he podido, me pide: enter your phone username (email):
Que tengo que poner ahí y de sonde los saco?

dany dijo...

hola, eh usado la pagina http://www.recovermessages.com, con una licencia pero tengo una duda, es posible recuperar las conversaciones borradas dia a dia y recuperarlas completas con todo y las imagenes??, existe algun metodo?? ya que como saben en el archivo RAWRECOVERYDATA solo aparecen segmentos de las frases y de algunas partes de las conversaciones, espero me puedan ayudar, gracias...

Vitta dijo...

Buenas tardes, no me deja entrar en la página http://www.recovermessages.com/
No sé si es problema mío o falla la página.

Larry dijo...

tengo un blackberry curbe 9300 ya tengo la base de datos pero se llama messageStore.db ya descargue Sqlite pero me da el siguiente mensaje SQLiteManager: Error in opening file messageStore.db - either the file is encrypted or corrupt

Exception Name: NS_ERROR_FILE_CORRUPTED

Exception Message: Component returned failure code: 0x8052000b (NS_ERROR_FILE_CORRUPTED) [mozIStorageService.openUnsharedDatabase]



mi sistema operativo el ubuntu 12.04

y la versión de WHATSAPP es la penúltima alguien podría ayudarme.....