sábado, 12 de mayo de 2012

5. Educando con el miedo. Caso práctico: WhatsAppSniffer

"Ningún gobierno puede sostenerse sin el principio del temor así como del deber. Los hombres buenos obedecerán a este último, pero los malos solamente al primero" -
Thomas Jefferson

Miedo


¡Muy Buenas!

Al hilo del último artículo publicado en el blog, Securizando Android, concretamente del comentario de mi amigo Adrián, estuve haciendo una prueba con la última aplicación de esnifado de moda, WhatsAppSniffer, que me ha hecho reflexionar sobre la fuerza del miedo.


Releamos la frase célebre de este artículo y cambiemos el concepto de "hombres buenos/malos" por "personas sensibilizadas o no", y el concepto de "gobierno" por "estado de seguridad" y será fácil adivinar dónde quiero llegar, sería algo como:
"Ningún estado de seguridad puede sostenerse sin el principio del temor así como del deber. Las personas sensibilizadas obedecerán a este último, pero las que no lo están solamente al primero"
Espero que coincidáis conmigo en que es más recomendable una buena formación y sensibilización que jugar con el miedo, no obstante esta es una arma muy poderosa que bien utilizada puede ser mucho más efectiva.


Sin más preámbulos vayamos con el ejemplo:


Hace tiempo que estoy descontento con las medidas de seguridad que aporta WhatsApp, pero debido a su amplia difusión es difícil deshacerse de él y cualquier explicación sobre sus debilidades suele volver contra mí en forma de burlas sobre mi salud mental, con calificativos que varían entre paranoico, obsesionado, enfermo, etc.; sí, "cría cuervos y te sacarán los ojos".

La debilidad más conocida de este software es la transmisión de la información sin cifrar que puede ser capturada en redes WiFi; es rápidamente comprobada mediante algún software de esnifado de red, como por ejemplo WireShark (antes Ehereal). Sin embargo mostrar al público general sus comunicaciones con esta herramienta no causa demasiada impresión, por lo oscuro y complicado que parece.

No obstante, hace unos días, un portal de amplia difusión como es El androide libre, se hacía eco de la publicación en Google Play de una nueva herramienta llamada WhatsAppSniffer en el siguiente artículo:  Whatsapp Xtract y Whatsapp Sniffer: explotando los fallos de seguridad de Whatsapp



Con esta herramienta se pone al alcance de lo menos entendidos la posibilidad de obtener las conversaciones de cualquier WhatsApp que esté funcionando en la misma red Wifi, con una interfaz muy sencilla.

Al poco tiempo de su publicación en Google Play, la aplicación fue eliminada por Google pero, por supuesto, no de la red (recuerda que en cuanto algo se hace público en Internet, se pierde su control), así que no es muy difícil hacerse con una copia.

Así que con esta nueva herramienta en mi smartphone me dispuse ha hacer unas pruebas iniciales en mi casa y, al ver su correcto funcionamiento, el siguiente escenario era la oficina. Allí llegué este miércoles y, tras avisar del inicio de la "auditoría" y 5 minutos de pruebas para los más incrédulos, conseguí lo que llevaba varios meses intentado, convencerlos a todos del peligro de utilizar WhatsApp.

Y he aquí la demostración de la fuerza que tiene el miedo para modificar las conductas y percepciones de las personas, tan solo 5 minutos bastaron.

Sin embargo, como he comentado al principio, esta arma no debe ser utilizada más que en momentos puntuales. Es conocido el uso que hacen muchas empresas de seguridad del miedo para tratar de vender sus soluciones, estrategia que algunas veces funcionará pero que muy probablemente acaba saturando al cliente.

Volviendo a la aplicación WhatsAppSniffer, esta no es, ha sido, ni será la única aplicación que abusa del uso de transmisiones en texto plano. La solución es bastante evidente: que dichas aplicaciones mejoren o dejar de utilizarlas, pero esto muchas veces no es tan fácil debido a su implantación (como decíamos WhatsApp es muy popular) o a la ausencia de alternativas.

Pero, como nos comentaba Adrián, hay una contramedida, utilizar aplicaciones que detecten el esnifado de red como DroidSheep Guard, que es capaz de detectar un ataque de ARP spoofing y desconectarnos automáticamente de la red.

DroidSheep Guard

Así, después de mi demostración en la oficina conseguí distintos efectos:

  • Concienciación. He cambiado la perspectiva de la posibilidad de sufrir estos ataques.
  • Reducción del riesgo mediante utilización de contramedidas. Algunos compañeros ya utilizan DroidSheep Guard.
  • Evitar el riesgo dejando de utilizar la red Wifi. Otros compañeros han decidido utilizar únicamente la conexión móvil.
  • Asumir el riesgo. Otros compañeros, de cuyo nombre no quiero acordarme, han optado por no hacer nada ya que consideran que su información no es tan importante o confían en  nosotros...
  • Interés por WhatsAppSniffer. Algunos incluso me han pedido la aplicación, esperemos que para hacer el bien y concienciar a más gente, esperemos.
  • ¿Respeto? Bueno, ahora ya no me califican tan severamente cuando proclamo los peligros de WhatsApp... :)


Y, ¿cual es mi postura? Pues la siguiente:



Bueno, un artículo más que espero os sea de interés. Os animo a que dejéis vuestros comentarios y no solo solicitudes del WhatsAppSniffer.

¡Saludos!

martes, 1 de mayo de 2012

4. Securizando Android


"El mal es vulgar y siempre humano, comparte nuestra cama y come en nuestra mesa" - W. H. Auden


¡Muy Buenas!

En este artículo voy a tratar un tema nuevo en el blog, ofreciendo unas cuantas soluciones para fortalecer un terminal Android.

Como sabréis, la expansión del sistema operativo Android ha sido enorme durante sus pocos años de vida, de forma que hoy en día hay más de 250 millones de terminales activos que lo utilizan. Este crecimiento lo ha convertido en un blanco muy interesante para los creadores de malware que están haciendo importantes esfuerzos e inversiones en él.

Sin querer entrar en la controversia de si la arquitectura de Android es mejor o peor que la de IOS (que como todo tiene sus ventajas e inconvenientes), es verdad que su apertura y menor control por parte de Google favorece la aparición de aplicaciones malignas y riesgos que es necesario conocer por su público, sea o no de perfil técnico.




Así pues voy a dirigiros una serie de recomendaciones de forma algo original, presentándoos una aplicación que añade algo de seguridad al sistema junto con una explicación de la fortaleza adquirida. Es necesario comprender que seguramente podréis encontrar mejores aplicaciones que las que yo os redacto hoy, ya sea porque son posteriores a mi redacción, por que se ajusta mejor a vuestro uso o, seguramente, porque yo no las conocía. Aquí van:




Esta aplicación te permite no tener que poner tu código de desbloqueo en el terminal cada vez que vas a utilizarlo si estás conectado a una Wifi en la que confías. Su uso más habitual es asociarlo a la red inalámbrica de tu casa, porque entiendes que si tu móvil está en casa nadie va a cogerlo con malas intenciones (esto no es siempre cierto, al menos si están mis hermanos en casa...).

La idea de esta aplicación es que tu teléfono o tableta debe estar siempre protegida por un código, patrón o similar a no ser que confíes en el entorno en que se encuentra.



Google Play es el repositorio por defecto de aplicaciones de Android, el que proporciona Google. Este repositorio implementa un conjunto de medidas de seguridad para tratar de evitar las aplicaciones malintencionadas, la última medida anunciada es Bouncer.

Existen multitud de "markets" alternativos donde conseguir aplicaciones, algunas incluso piratas (esto lleva para un nuevo artículo, pero de momento lo dejo con el enlace proporcionado), pero que normalmente tienen menos control que el "oficial" y donde la probabilidad de encontrarse una sorpresa aumenta.

No obstante hay que tener en cuenta que incluso en Google Play se han colado unas cuantas aplicaciones con malware.

Por lo tanto la recomendación es utilizar el sentido común (sí, se que es el menos común de los sentidos) y buscar referencias sobre una aplicación antes de instalarla en nuestro smartphone, donde podemos tener mucha información suculenta.




Esta es una aplicación de las que cuando te acostumbras a tener te sientes desnudo sin ella. LBE Privacy Guard te gestiona para cada aplicación que tengas instalada en el terminal los permisos que se le conceden.

Según la arquitectura de Android hay un conjunto de permisos que puede solicitar cada aplicación según las tareas que desea realizar. Los listo a continuación (para mayor detalle podéis consultar en HTCSpain):
- Comunicación de red
- Almacenamiento
- Tu información personal
- Servicios por los que tienes que pagar
- Herramientas del sistema


De este modo al instalar cualquier aplicación se te preguntará si deseas concederle todos los permisos que solicita o solo los que tu consideres.

Esto se ve mejor con un ejemplo: la aplicación para Android de Facebook te solicita poder acceder a "servicios por los que tienes que pagar", concretamente al envío de SMS y a mí, sinceramente, ¡no me da la gana! Sin LBE tendríamos que elegir entre instalar la aplicación y confiar en que no envíe mensajes o no instalarla; con LBE podemos manejar estos permisos.

Esta aplicación se vuelve muy útil cuando instalamos algo de lo que no estamos completamente convencidos.

Así, la moraleja es utilizar un mecanismo de seguridad muy recomendable en todo sistema informático, el principio del mínimo privilegio, donde damos los permisos mínimos necesarios a cada aplicación para realizar las tareas que queremos permitirle.



Esta aplicación es similar a la anterior, aunque con menos potencia, ya que no se encarga de permitir o denegar ciertos privilegios sino que realiza un informe sobre las aplicaciones potencialmente dañinas debido a sus permisos, es decir, aplicaciones que solicitan funcionalidades más delicadas ya que pueden:
- "acceder a tus contactos"
- "acceder a tus cuentas"
- "acceder a tus mensajes"
- "pueden costarte dinero"
- "pueden aceder a tu historial de navegación
- "pueden compartir tu ubicación"

Su uso viene bien para conocer tu nivel de exposición.

Esta aplicación te permite conocer tu nivel de riesgo y así poder tomar las medidas oportunas, como desinstalar cierta aplicación o restringir sus permisos con LBE Privacy Guard, por ejemplo.


  • Lookout - Antivirus y localización
La utilización de antivirus en sistemas Android está envuelta en una gran controversia ya que mucha gente opina que son de escasa o nula efectividad. Sin embargo, en distintas ocasiones, Lookout ha reportado aplicaciones maliciosas a Google, por lo que su reputación es muy saludable.

Además Lookout tiene una funcionalidad adicional, la localización de tu terminal. Imaginemos que hemos perdido nuestro terminal ya sea porque alguien "se lo ha encontrado" o porque somos un poco despistados y nos lo hemos dejado en el polideportivo.  Podemos acceder a su página web con nuestras credenciales y solicitar la localización de nuestro teléfono, que se enviará a la cuenta de correo que hallamos proporcionado. Incluso podemos indicarle al teléfono que empiece a sonar como un loco :)

Con esta aplicación nos protegemos de (algunos) virus y podemos encontrar el teléfono perdido.


  • Plan B - Localización in extremis
De los mismos desarrolladores de la anterior aplicación, Plan B nos aporta la funcionalidad de la localización del teléfono si no tenemos ninguna aplicación de este tipo instalada. Es sencillo de entender con un ejemplo:
- acabamos de perder el teléfono
- recordamos ese artículo que tanto nos gustó de Una cita célebre más una guía de seguridad
- nos damos golpes en la pared por no haber instalado Lookout (o similar)
- entonces recordamos que podemos instalar Plan B en remoto ya que con Google Play podemos instalar aplicaciones desde el navegador
- instalamos la aplicación
- iniciamos el proceso de localización
- encontramos el teléfono y somos muy felices :)

Por lo tanto esta aplicación nos da la posibilidad de localizar el teléfono sin haber previsto esta situación.


Este tipo de aplicaciones pueden ser muy útiles para repeler oleadas de SPAM telefónico o "amigos" muy pesados. En ellas se puede configurar una lista de llamantes bloqueados o de llamantes permitidos, uno de los dos modos de funcionamiento, y distintas funcionalidades como colgar el teléfono, descolgar la llamada y dejarles escuchando una bonita canción, etc, así como tramos horarios y distintas funcionalidades.

No os he dejado ninguna aplicación concreta porque no he probado las de Google Play (el enlace proporcionado lleva a una búsqueda con distintas opciones a elegir), sino que utilizo la aplicación integrada en la ROM que utilizo, MIUI (si desconocéis el término ROM os recomiendo dar un vistazo por El Androide Libre, concretamente el tercer apartado: "¿Qué son las ROMs?).

Con esta aplicación conseguiremos proteger un poco nuestra salud psicológica.


Debido a que cada día tenemos más información en nuestro smartphone es muy recomendable realizar una copia de seguridad de nuestros datos. Esto se puede realizar con Titanium Backup que requiere ser root (de nuevo si desconoces este término puedes consultar El Androide Libre) o con muchas otras aplicaciones, si no se desea "rootear" el teléfono, disponibles en Google Play.


Esta aplicación no protege estrictamente a nuestro terminal Android sino la cuenta de correo de Google a la que está asociado, pero hay que tener en cuenta que nuestro Android depende profundamente de esta.

Si nos detenemos a pensar la importancia que el sistema de correo acaba teniendo en nuestra vida digital veremos lo crítico que es, ya que, por ejemplo, casi cualquier cuenta de un servicio web tiene asociada su recuperación a nuestra cuenta de correo. Google viendo la importancia que estaba cobrando la seguridad de nuestra cuenta decidió implementar la autenticación con dos factores en Gmail para evitar suplantaciones como las que se hicieron a algunos disidentes tibetanos (esto es una opinión propia). Para apoyar a este sistema creó la aplicación Google Authenticator.

Como la autenticación en dos pasos de Google está muy bien explicada por ellos os remito a la fuente oficial.


Para los que no conocéis LastPass os recomiendo encarecidamente que lo probéis. Se trata de un gestor de contraseñas que se instala en los principales navegadores como un plugin y sirve como contenedor cifrado de contraseñas, esto es: hoy en día manejamos una gran cantidad de contraseñas y su gestión se vuelve complicada de modo que acabamos con uno, o varios, de estos comportamientos:
- repetimos contraseñas entre servicios
- utilizamos contraseñas poco robustas
- utilizamos contraseñas que dependen del nombre del servicio (ej: contraseña4hotmail, contraseña4yahoo, etc.) y si alguien descubre alguna obtendrá fácilmente las otras
- las apuntamos en un papel o fichero no cifrado
- etc.

LastPass intenta solucionar esta problemática sirviendo de almacén de credenciales, así como generador de contraseñas robustas, etc. No me voy a extender más en esta explicación porque no es la finalidad de este artículo, podéis ver más información muy bien explicada (con videos y tutoriales) en su página web LastPass , incluso poniendo el idioma en español.

Así pues, existe una versión gratuita y una Premium (de coste 10€/año aprox.). En la versión de pago disponemos de plugins para algunos navegadores de Android como Dolphin Browser HD que nos posibilitará disfrutar de la potencia de LastPass en nuestro Smartphone.

NOTA: Si sois más paranoicos que yo podéis utilizar keePassDroid que no mantiene la base de datos en la nube sino en vuestras manos.


Esta aplicación, que de momento permanece en fase beta, pretende ser un sustituto al popular WhatsApp. Sus principales desventajas son que de momento solo está desarrollado para Android (aunque "están en ello"), que sigue en fase beta y, sobretodo, que WhatsApp está muy implantado. En cambio, aporta algunas novedades muy interesantes:
- Comunicaciones cifradas con AES de 256 bits
- Contenido eliminado de Spotbros a los 30 días (tendrías que ver todo lo que puede hacer WhatsApp con nuestras comunicaciones)
- Creación de grupos de tamaño ilimitado
- Para que una persona se convierta automáticamente en contacto, debe existir una coincidencia bidireccional de números de teléfono, es decir, uno debe tener en su agenda el teléfono del otro y viceversa, evitando el SPAM.
- Shouts: Mensaje a las personas que están a tu alrededor (1500m)
- Spots: Grupos de interés (también de tamaño ilimitado)

Puedes encontrar más información en la web Spotbros.

¿Y porqué desconfío tanto de WhatsApp si es tan popular? Pues por sus múltiples agujeros de seguridad, entre otros los que tan bien han descubierto en Security by Default:
- WhatsApp y su seguridad, ¿pwn3d?
- Lo que no te cuenta WhatsApp
Cómo registrar cualquier número de teléfono en WhatsApp
- WhatsApp al descubierto
Casi 10 millones de móviles españoles con WhatsApp instalado.
- ¿Arruinamos a WhatsApp?

Bueno, en este artículo os he bombardeado con mil aplicaciones y conceptos, si deseáis profundizar en alguno o rebatirme con alguna aplicación que consideréis mejor o que he omitido, os agradeceré vuestros apuntes en los comentarios.

¡Saludos!