Tabletas y smartphones se han convertido en piezas clave dentro de nuestro día a día, ya sea para un uso profesional (con acceso a nuestro correo corporativo, documentos y aplicaciones empresariales, etc) o para un uso personal (con archivos personales, acceso a redes sociales, etc); de hecho, es raro encontrar a alguien que salga de casa sin su smartphone (o con varios de ellos). Teniendo en cuenta que cada vez navegamos más tiempo a través de dispositivos móviles y su proliferación, nuestra dependencia de dispositivos y redes móviles puede ser aprovechada por terceros con no muy buenas intenciones que quieran causar estragos con un ataque (por ejemplo de malware). Con la idea de estudiar los efectos de "ataques masivos" y las vulnerabilidades de redes y dispositivos móviles, el Laboratorio Nacional Sandia de Estados Unidos está trabajando en un proyecto bastante singular: MegaDroid, un clúster de 300.000 máquinas virtuales Android con las que realizar simulaciones a gran escala.

Fritz_Sandia_MegaDroid

El proyecto, que está financiado con medio millón de dólares de capital público, sigue la senda de otros proyectos del laboratorio en los que se han testeado otras tecnologías a gran escala (MegaTux, con 1 millón de máquinas virtuales Linux y MegaWin con 100.000 máquinas virtuales con Windows XP y Windows 7) que, gracias a la virtualización, permiten a los investigadores realizar grandes despliegues sin necesidad de grandes inversiones en hardware. Teniendo en cuenta que Android es un sistema operativo móvil y, por tanto, los requisitos de hardware no son los de un servidor, han bastado 520 nodos con un procesador Intel i7 Sandy Bridge (de 4 núcleos), 128 GB de RAM y una tarjeta de red Gigabit (no han instalado discos duros) que, comparado con los grandes supercomputadores y clústeres científicos, no han supuesto una inversión enorme de dinero.

¿Y para qué desplegar una infraestructura así? Sobre este gran simulador, el equipo de investigadores quieren desarrollar una plataforma open source (que piensan liberar) con la que poder realizar pruebas y simulaciones de fallos o ataques y comprobar su efecto a gran escala, es decir, sobre un considerable volumen de clientes simultáneos y así ver qué ocurriría ante un fallo de red en caso de un desastre natural, un ciberataque o la propagación de malware.

MegaDroid utiliza Android 4.0 en su versión para arquitectura x86 virtualizándola sobre contenedores kvm (Kernel-based Virtual Machine) y desarrollará aplicaciones que permitan obtener datos y comunicarse con cada uno de estos terminales virtuales, con la idea de obtener datos de sus dispositivos GPS, sus mensajes de texto o sus interfaces de conexión. Además, para realizar pruebas con terminales reales, el clúster será capaz de interactuar con algunos terminales físicos y usar la red del operador T-Mobile.

A finales de año, el equipo espera poder liberar el software desarrollado bajo licencia GPLv3, ofreciendo a investigadores y desarrolladores una plataforma con la que realizar pruebas a gran escala con la idea de minimizar cualquier tipo de error o prueba que no haya sido localizada durante pruebas funcionales básicas. Además, dado que las redes de los operadores tienen distintas arquitecturas, el software permitirá introducir distintos patrones de red y topologías, ofreciendo gran flexibilidad a la hora de dibujar cualquier tipo de escenario en el que realizar las simulaciones.

Vale la pena echar un vistazo al vídeo de presentación para ver algunos ejemplos de uso de este simulador y las posibilidades que podría tener, dentro de la industria, para hacer mucho más seguras las aplicaciones y los terminales que vamos a usar.

Imagen: Sandia National Lab