martes, 20 de octubre de 2015

Detección de anomalías en Android

En el contexto del proyecto europeo NEMESYS, que ya presentamos anteriormente en Una-Al-Día a finales de 2013, Hispasec ha realizado interesantes aportaciones. En esta ocasión presentamos otro de los componentes del sistema desarrollado, un detector de anomalías para sistemas Android.

El detector de anomalías, bautizado como LMD ("Lightweight Malware Detector" o "Detector de Malware Ligero") es capaz de detectar las anomalías que se presentan en el sistema (Android). Utilizando el LMD hemos sido capaces de detectar nuevos vectores de ataque a dispositivos Android, basándonos únicamente en las llamadas al sistema.

Este LMD está montado sobre un sistema de honeypot, llamado HoneyDroid, que fue desarrollado por otro de los colaboradores del proyecto. La esencia del HoneyDroid es tener dos sistemas separados, uno para el usuario y otro seguro. El sistema de usuario se ejecuta sobre el sistema seguro, pero no puede acceder a él directamente. El compartimento seguro es el lugar perfecto para alojar el detector de anomalías desarrollado por Hispasec, pues desde ahí se puede observar el compartimento del usuario sin modificarlo y sin riesgo de ser infectado, eliminado o modificado.

El funcionamiento del detector de anomalías está basado en la monitorización de llamadas al sistema. Una llamada al sistema es la manera que utilizan las aplicaciones para comunicarse con el núcleo del sistema operativo, por ejemplo, para enviar datos a través de una red ('sendto'), leer o escribir un archivo ('read'/'write') o control de dispositivos ('ioctl').

Así, cuando el sistema detecta un conjunto de llamadas extrañas o fuera del comportamiento habitual del dispositivo lanza una advertencia de anomalía.

En el momento en que se detecta una anomalía se activan todos los servicios para intentar detectar la fuente de la amenaza. En primer lugar se envía los registros de actividad a un servidor centralizado (DCI), para posteriormente hacer un volcado de disco (memoria lógica, por supuesto) y enviarla al servidor de análisis (Command & Control). Con todos estos datos, un analista revisa y extrae toda la información que puede resultar útil para identificar la amenaza. Uno de los análisis que realiza es de las aplicaciones instaladas en el dispositivo y para ello los analistas se basan en servicios como Koodous (servicio público fruto del trabajo en el proyecto NEMESYS).

LMD y su ecosistema

Como en NEMESYS trabajamos codo con codo con compañías de telecomunicaciones, esta labor la realizan estas empresas, para así poder mitigar ataques por ejemplo de degradación de señal, envío masivo de SMSs u otras acciones que pudieran perjudicar al funcionamiento de la red móvil o de la factura del usuario.

Más información:

una-al-dia (18/12/2013) El proyecto NEMESYS

NEMESYS

D2.3 Lightweight Malware Detector

Koodous

una-al-dia (06/07/2015) Koodous: inteligencia colectiva para proteger tu Android



Antonio Sánchez

1 comentario: