Clasificación - Parte 2

Rootkit

Los rootkit permiten ocultar en la mayor medida posible a otros subtipos de malware, además de poder ocultarse a sí mismos dentro de una máquina infectada. Los atacantes los suelen utilizar para mantener encubierto el acceso ilícito a un equipo, ocultando los procesos, archivos, puertos y demás componentes lógicos que los pudieran delatar.

Cabe aclarar que un rootkit no es un software maligno en sí mismo, sino que, en definitiva, permite ocultar las acciones malignas que se lleven a cabo en el equipo. Sea a través de un atacante como mediante otros códigos maliciosos que estén trabajando en el sistema, comúnmente gusanos o troyanos.

Inicialmente los rootkit aparecieron en el sistema operativo UNIX y eran una colección de una o más herramientas que le permitían al atacante conseguir y mantener el acceso mediante el usuario con más privilegios del equipo (en los sistemas UNIX se llama root y de ahí su nombre). En Windows, los rootkit se han asociado en general con herramientas usadas para ocultar programas o procesos al usuario.

Un rootkit ataca directamente el funcionamiento de base de un sistema operativo. En Linux, modificando y trabajando directamente en el kernel del sistema. En Windows, interceptando los APIs (Interfaz de Aplicaciones de Programación) del sistema operativo. Estas, interactúan entre el usuario y el kernel; de esta forma, el rootkit manipula el kernel sin trabajar directamente en él como en el caso del software libre.

Stealer

Los stealers, también conocidos como passwords stealers, son un subtipo de malware especializado en capturar todas las contraseñas almacenadas en el equipo infectado así como las que se escriban en un formulario web u otras aplicaciones conocidas y, por supuesto, todo lo que capture se lo enviará al atacante. Su capacidad de atrapar contraseñas es más potente, específica y organizada que la del stealer que incluye un troyano, aunque estos últimos compensan esta deficiencia incorporando un keylogger.

Además, los stealers se auto-inician junto al sistema operativo de modo que permanecerán en el equipo para capturar todas las nuevas credenciales de acceso que pudiera escribir el usuario.


Opciones de captura de contraseñas del cliente de un Stealer.

Spyware

Los spyware están diseñados para recopilar la mayor cantidad posible de información sobre el usuario respecto a su actividad en internet. Una vez que infectan el equipo, se concentrarán en obtener los historiales de navegación del usuario junto a las páginas visitadas con mayor frecuencia, el tiempo que permaneció en cada sitio, aplicaciones/juegos que ha utilizado, compras realizadas, archivos descargados y demás. Lógicamente, la información recopilada es enviada a la entidad atacante, todo esto sin el consentimiento del usuario.

Las agencias de publicidad, o compañías dedicadas al marketing en internet, son las principales empleadoras de spyware. Para estas entidades la información que puede brindarle dicho subtipo de malware es de sumo valor, gracias a ella pueden confeccionar anuncios adaptados a los intereses del usuario. Es por eso que los spyware suelen combinarse con un adware, de modo que la entidad atacante pueda a su vez obtener beneficios económicos a través de los anuncios.

Troyanos

Los troyanos son el subtipo de malware más frecuente y, debido a su complejidad, uno de los más peligrosos. En primer lugar el troyano intentará infiltrarse en un equipo aparentando ser un software inofensivo, al ejecutarse llevará a cabo acciones maliciosas sobre el sistema operativo de la forma más desapercibida posible. ¿Acciones maliciosas? ¿Cómo cuáles? El objetivo de este subtipo de malware es darle al atacante el control total sobre un equipo de forma remota (por eso también se los conoce como RAT – Remote Administration Tool). Los troyanos más modernos cumplen este objetivo a tal punto de que el control sobre el equipo sea igual a estar sentado frente al mismo.

Con esto en mente podemos imaginar que las funciones básicas de un troyano consistirán en permitirle al atacante obtener toda la información alojada en el equipo, administrar dispositivos, servicios y aplicaciones instaladas, bajar y subir archivos, así como borrar o editar los existentes. 
También grabar las teclas pulsadas, obtener capturas de pantallas o visualizar el escritorio de la máquina infectada en tiempo real, pudiendo controlar el mouse y el teclado. Ejecutar comandos mediante una shell, activar el micrófono y la webcam, entre muchas otras acciones que, por supuesto, no ocurrirán a la vista del usuario.

Ahora bien, para que un atacante pueda tomar el control de un equipo de esta manera, necesita crear una conexión entre su máquina y la que desee controlar. Los troyanos funcionan de esa manera, por eso constan básicamente de dos partes: cliente y servidor. El cliente estará en manos del atacante y será quien envíe las órdenes y peticiones de información al servidor, este último es el ejecutable que infecta al equipo (víctima) y responderá todas las solicitudes maliciosas del cliente (atacante).

La conexión entre el atacante y la víctima puede ser directa o inversa. En las conexiones directas el atacante se conectará al equipo víctima una vez que ha sido infectado. Por el contrario, en las conexiones inversas, será el equipo infectado el que se conecte al atacante. Los troyanos actuales utilizan conexiones inversas ya que permiten evadir a los firewalls con más facilidad, debido a que un cortafuegos tradicional generalmente es más restrictivo con el tráfico entrante que el saliente.

Desde el punto de vista práctico, el atacante crea el servidor del troyano configurando una serie de parámetros, por ejemplo: dirección IP y puerto donde recibirá las conexiones de los equipos infectados, ruta de instalación y proceso donde se inyectará el troyano, ruta de auto-inicio, mutex, nombre del ejecutable, icono, entre otros ajustes.


Configuración del servidor en el troyano Poison Ivy.

Una vez que el atacante creó el servidor del troyano, procederá a distribuirlo por cuanto medio electrónico pueda. Si un usuario se infecta, automáticamente aparecerá la conexión en el cliente del troyano otorgándole el control total del equipo al atacante, tal como se puede observar en la siguiente figura.


Control total del equipo víctima mediante el troyano Poison Ivy.

Ransomware

Un ransomware (del inglés ransom rescate y ware, software) es un tipo de programa informático malintencionado que restringe el acceso a determinadas partes o archivos del sistema infectado, y pide un rescate a cambio de quitar esta restricción. Algunos tipos de ransomware cifran los archivos del sistema operativo inutilizando el dispositivo y coaccionando al usuario a pagar el rescate.
Se hicieron populares en Rusia y su uso creció internacionalmente en junio del 2013. La empresa McAfee señaló que sólo en el primer trimestre del 2013 había detectado más de 250.000 tipos de ransomwares únicos.2

Métodos de propagación

Normalmente un ransomware se transmite tanto como un troyano como un gusano, infectando el sistema operativo, por ejemplo, con un archivo descargado o explotando una vulnerabilidad de software. En este punto, el ransomware se iniciará y cifrará los archivos del usuario con una determinada clave, que sólo el creador del ransomware conoce y proveerá al usuario que la reclame a cambio de un pago.


Virus

Un virus está programado para producir algún daño en el equipo donde sea ejecutado y además tiene la capacidad de reproducirse a sí mismo. Las cualidades mencionadas pueden compararse con los virus biológicos, que producen un daño en las personas, actúan por sí solos y se reproducen (contagian).

El daño que un virus puede causar es extremadamente variable: desde un simple mensaje en pantalla para molestar al usuario o la eliminación de archivos del sistema, hasta inhabilitar completamente el acceso al sistema operativo.

Los virus pueden infectar de dos maneras diferentes: la tradicional consiste en “inyectar” una porción de código en un archivo normal, es decir, el virus reside dentro del archivo ya existente. De esta forma, cuando el usuario ejecute el archivo, además de las acciones normales del archivo en cuestión, se ejecutan las instrucciones del virus.

La segunda forma de infectar consiste en “ocupar el lugar” del archivo original y renombrar este por un nombre conocido solo por el virus. En este caso, al ejecutar el archivo, primero se ejecuta el malicioso y al finalizar las instrucciones este llama al archivo original, ahora renombrado.

Cuando un virus es ejecutado se producen dos acciones en paralelo: el daño en cuestión y la propagación para seguir infectando. Esta es la característica primordial de los virus, su capacidad de reproducirse por sí mismos: el mismo virus es el que causa el daño y continúa infectando nuevos equipos y archivos.