Ciberataques DrDoS basados en el protocolo ARD
Tras el estudio preliminar de los ciberataques de denegación de servicio (DoS), junto con algunas de sus variantes expuestas en el artículo “DrDoS: características y funcionamiento”, en el siguiente post se abordará cómo el protocolo de ARD es utilizado como una herramienta para desarrollar un ciberataque DoS en su variante denegación de servicio reflejado (DrDoS).
ARD
El servicio de Escritorio Remoto de Apple (ARD, Apple Remote Desktop) es un servicio utilizado a nivel empresarial e instituciones educativas para poder realizar tareas de administración, soporte o conexión remota en productos Apple Mac.
ARD trabaja a través del puerto UDP 3283 y es utilizado por al menos 40.000 equipos Apple Mac, del total que hay actualmente en todo el mundo, siendo estos relativamente fáciles de encontrar, teniendo el puerto abierto y exponiendo su IP a Internet.
En caso de que en un equipo o red no tuviese el servicio ARD, no habría ningún problema, dado que hay otros servicios que pueden trabajar del mismo modo, por lo que no se notará la falta de ARD, en caso de realizar un bloqueo de este servicio por seguridad.
Vector de ataque
Aunque el servicio ARD puede parecer sencillo y con una utilidad bien definida, un ciberdelincuente podría utilizarlo para realizar un ataque DrDoS en la red.
Por defecto, el puerto UDP 3283 está deshabilitado en los equipos Apple Mac, pero una vez que se activa el uso compartido remoto (remote sharing), el servicio se vuelve vulnerable. La habilitación ha de ser hecha explícitamente por el propio usuario de Mac con privilegios de administrador.
Para desarrollar la característica de ataque reflejado, propia de un ciberataque de DrDoS, los ciberdelincuentes explotan la vulnerabilidad del Apple Remote Desktop, gracias al protocolo UDP, por la que falsifican la dirección IP de origen con la de la víctima (spoofing) en los paquetes de solicitud. En consecuencia, los servidores no son capaces de distinguir entre las solicitudes legítimas y las falsificadas, lo que provoca que respondan directamente a la víctima. Esta técnica oculta la dirección IP real del atacante, tanto para el sistema víctima como para el equipo objetivo.
En cuanto a la característica de ataque amplificado, esta radica en otro servicio llamado Apple Remote Management Service (ARMS), que las máquinas que ejecutan el sistema operativo macOS y ARD, también ejecutan en el mismo puerto 3283. Este servicio se encarga de escuchar los comandos de entrada al equipo y constituye el mecanismo amplificador del ataque. El factor de amplificación de ARMS es de 35.5:1, siendo significativamente mayor al de otros servicios que son usados comúnmente para ataques de DDoS, lo que permitiría lograr un gran impacto con muy pocos recursos.
Ilustración 1. Esquema del ataque a ARD.
Por supuesto, este ataque puede ser realizado usando una botnet. En ese caso, los daños en la red de la empresa serían muchísimo mayores y el ancho de banda quedaría totalmente saturado por la cantidad de tráfico al que se vería sometido.
Es importante destacar que, en los sistemas Mac, habilitar la administración remota en la sección “Preferencias del Sistema / Compartir” de macOS, provoca que los equipos con este sistema escuchen en el puerto UDP 3283, incluso si el servicio firewall de Apple en la sección “Preferencias del Sistema / Seguridad y privacidad” está habilitado.
Prevención
Cualquier servicio ARD expuesto, por el puerto 3283, será vulnerable a ser usado como método de amplificación. Para verificar el estado de exposición se puede utilizar el siguiente comando de nmap:
nmap -p 3283 [IP a analizar]
Este comando devuelve el estado del puerto 3283, por lo que si el estado de este es “open”, el servidor es vulnerable.
Como medidas de prevención, se recomienda realizar las siguientes acciones:
- Bloquear el puerto UDP 3283 de entrada en el firewall. El bloqueo y una correcta configuración del firewall es el primer paso para garantizar la seguridad.
- Habilitar el firewall de la aplicación macOS. Si no está habilitado, se debería activar. Sin embargo, hay que tener en cuenta que la opción de habilitar el modo sigiloso también deshabilita la respuesta de eco y el dispositivo ya no respondería a las solicitudes de ping.
- Desactivar Apple Remote Services (ARD/ARMS), siempre y cuando estos servicios no fuesen necesarios. Por otra parte, si algún departamento los necesitara, existen servicios con opciones similares, como el protocolo VNC o Microsoft Remote Desktop (disponible para Mac).
- Desplegar los equipos con ARD detrás de cortafuegos. El firewall debe configurarse con reglas que detecten y filtren peticiones dirigidas por UDP al puerto del equipo con ARD. También debe contar con una configuración antispoofing que evite la suplantación de IP.
- Solicitar filtros antispoofing al proveedor de servicios de Internet (ISP). Estos proveedores pueden rechazar tráfico ARD con direcciones falsificadas, no accesibles a través de la ruta real del paquete.
- Desplegar sistemas de detección y bloqueo de intrusiones (IDS/IPS). Un Gestor de Eventos e Información de Seguridad (SIEM) permitirá identificar anomalías en el tráfico ARD y detectarlas rápidamente para aplicar una respuesta inmediata que limite el impacto del ataque.
- Definir un protocolo de actuación para incidentes de DrDoS por ARD. Saber cómo identificar estos ataques y cómo actuar si se producen es clave para limitar su impacto. El actuar precipitadamente y de manera impulsiva puede provocar más problemas y fallos en otros componentes.
- Modificar nombres de usuario y contraseñas predeterminados. Se recomienda utilizar la autenticación de dos factores en su IoT y otros dispositivos.
- Mantener los sistemas Apple Mac actualizados y parcheados. De esta manera, se garantiza una seguridad frente a nuevas vulnerabilidades o una posible explotación de un sistema desactualizado.
- Vigilar que los equipos no estén presentes en buscadores de dispositivos. Así, la IP del equipo no podrá ser encontrada fácilmente ni se sabrá con exactitud si tiene el puerto 3283 abierto.
Detección y evidencias
Para detectar si un equipo, con un servicio ARD habilitado, está recibiendo un ataque de DrDoS o está siendo usado para perpetrarlo hacia un tercero, es necesario prestar especial atención a un tráfico inusual e intenso del protocolo UDP en el puerto 3283, ya que esta es la dirección que utiliza ARD para sus paquetes.
Monitorizando el tráfico, mediante una aplicación SIEM, y analizando los paquetes, se podrá ver detalladamente la cantidad de estos que están llegando en la red a través del puerto 3283, por lo que de esta manera se podrá saber si la cantidad de solicitudes son irregulares para los equipos en el tiempo analizado.
Para garantizar una detección temprana es recomendable el uso de herramientas de monitorización de la red, como sistemas SIEM o IDS/IPS, y por otro lado, herramientas que monitoricen el estado de los dispositivos, como programas de supervisión del uso de recursos (el procesador, la memoria o el disco), para percatarse de los comportamientos irregulares que tengan relación con ARD. De esta manera, se podrá estar informado sobre un consumo irregular en cuanto a los recursos del equipo. Una actividad anormal, tanto en el uso de los recursos como en la red, será una clara evidencia para iniciar una investigación.
Para recopilar más evidencias se pueden consultar los logs relacionados con los registros de conexiones vía ARD en el directorio “/var/logs/secure.log”.
Respuesta y recomendaciones
Si los indicios confirman que se está produciendo un ataque de DrDoS sobre equipos ARD propios, es importante actuar rápido y hacerlo siguiendo el protocolo predefinido de actuación y gestión de incidentes. Este protocolo debe recoger las siguientes acciones:
- Recopilación de la mayor cantidad de datos posible sobre el incidente. Se tienen que investigar las direcciones IP de origen y destino, puertos y posibles direcciones URL desde las que se produjo el ataque.
- Bloqueo y filtración del tráfico no deseado. La recopilación de datos anterior permitirá configurar filtros en cortafuegos y enrutadores mediante reglas que impidan la llegada de nuevas peticiones al equipo con el servicio ARD. También es conveniente contactar con el ISP y hosting para que apliquen sus correspondientes filtros.
- Ponerse en contacto con INCIBE-CERT. De esta forma, se proporcionará ayuda para tomar medidas de mitigación y recuperación ante tales ataques.
Una vez que el ataque haya cesado y el servicio se haya restablecido con normalidad, se deberá proceder al análisis de las causas que lo provocaron, identificando las posibles vulnerabilidades y definiendo un plan de acción para mejorar el bastionado de los sistemas, que evite un nuevo ataque.
Del mismo modo, con independencia de la afectación del ataque sufrido, se ha de comunicar a las autoridades, al igual que cualquier otro delito tecnológico, para poder ser investigado y perseguido.