Ciberataques DrDoS basados en el protocolo QOTD

Fecha de publicación 17/02/2022
Autor
INCIBE (INCIBE)
Ataques DrDoS basados en QOTD

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 artículo se abordará cómo el protocolo de QOTD es utilizado como una herramienta para desarrollar un ciberataque DoS en su variante denegación de servicio reflejado (DrDoS).

QOTD

Dentro de los protocolos de Internet (IP) el servicio QOTD (Quote of the Day) ha sido utilizado desde siempre por los administradores de mainframes (ordenadores de extensas capacidades que se utilizan para el procesamiento masivo de datos) para enviar un mensaje diario a todos los usuarios que se conecten a los servidores que trabajan con este protocolo.

QOTD está definido en el RFC 865 y trabaja tanto en Windows como en Unix. En su capa de transporte utiliza el protocolo UDP, que es ejecutado por defecto en el puerto 17. Su funcionamiento se reduce a que cuando los equipos establecen una conexión con el servidor, este les envía un mensaje, y tras el envío el servicio finaliza la conexión.

Esquema arquitectura QOTD

Ilustración 1. Esquema arquitectura QOTD

Vector de ataque

La posibilidad de enviar paquetes de datos a cada equipo conectado al servidor en el que está habilitado el servicio QOTD, hace que la probabilidad de un ataque DrDoS sea alta. Al mismo tiempo, todo aquel equipo accesible desde Internet y visible desde buscadores de dispositivos, que tenga el puerto 17 abierto, será susceptible a estos ataques.

El ataque de denegación de servicio por amplificación comienza con el envío de multitud de peticiones a las que se les ha sustituido la dirección IP de origen por la dirección de la víctima (spoofing de IP). El servicio manipulado, es decir, QOTD, actúa de intermediario entre el atacante y la víctima, ya que el protocolo recibe las anteriores peticiones como legítimas debido al spoofing. Posteriormente, QOTD responde a las peticiones, enviándolas a la víctima. Esto provoca que el resto de equipos también conectados al servidor se ralenticen y se sature el tráfico en la red.

Esta saturación se debe a que el mensaje normal de confirmación ante la conexión exitosa del servicio es de escaso tamaño frente al manipulado que se envía tras sufrir el ataque. El factor de amplificación puede ser de hasta 140,3.

Esquema del ataque a QOTD

Ilustración 2. Esquema del ataque a QOTD

Prevención

El primer paso en cuanto a la prevención es saber si el servidor propio es vulnerable. Para ello, puede ser útil ejecutar el siguiente comando en la herramienta Netcat, disponible de forma gratuita en Linux:

nc –u [IP a la que conectar] 17

Este comando establecerá una conexión UDP (opción –u) a través de la herramienta Netcat a la IP especificada, teniendo como destino el puerto 17. Si la dirección IP tiene habilitado el servicio QOTD, se mostrará un mensaje o cita, lo que significa que es posible acceder al servicio QOTD sin restricciones.

Otra forma de comprobar si el equipo es vulnerable es utilizar alguno de los siguientes comandos, los cuales seguirían la misma mecánica que el anterior, es decir, realizarían una petición al puerto 17 de la IP para la que se quiere comprobar la disponibilidad del servicio QOTD.

nmap -sU -PN -p17 [IP]
                telnet [IP] 17

En la tarea de evitar y proteger los equipos de este tipo de ataques es aconsejable seguir las siguientes recomendaciones:

  • Bloquear el puerto de entrada 17 para UDP y TCP en el firewall.
  • Deshabilitar el puerto 17 en Unix. Para deshabilitar el puerto 17 en equipos que ejecutan el sistema operativo Unix hay que reescribir la línea “qotd”, que se encuentra en /etc/inetd.conf, añadiendo el carácter # al principio de la línea del archivo de configuración para comentar y reiniciar el servicio inetd.
  • Deshabilitar el puerto 17 en Windows. Para ello, se procede de la siguiente forma:
    • Establecer las siguientes claves de registro en 0:
HKLM\System\CurrentControlSet\Services\SimpTCP\Parameters\EnableTcpQotd
                HKLM\System\CurrentControlSet\Services\SimpTCP\Parameters\EnableUdpQotd
  • Iniciar “exe” y escribir los siguientes comandos para reiniciar el servicio:
net stop simptcp
                net start simptcp
  • Deshabilitar el servicio QOTD tanto en equipos como en servidores.
  • Desplegar sistemas de detección y bloqueo de intrusiones (IDS/IPS). El uso de un Gestor de Eventos e Información de Seguridad (SIEM) facilita identificar y detectar anomalías en el tráfico QOTD para aplicar una respuesta de forma temprana, consiguiendo limitar el impacto del ataque.
  • Definir un protocolo de actuación para incidentes de DDoS por QOTD. Es una medida más para limitar el impacto del ataque, en la que se aboga por disponer de pautas previas y concretas sobre cómo identificar estos ataques y cómo actuar en el momento en que se produzcan.
  • Mantener los sistemas actualizados. De esta manera, los sistemas estarán protegidos frente a nuevas vulnerabilidades o explotaciones de vulnerabilidades pasadas.
  • Evitar que los equipos aparezcan como resultado de buscadores de dispositivos. Es una forma de evitar que la dirección IP del equipo pueda ser encontrada fácilmente o se pueda averiguar con exactitud si tiene el puerto 17 abierto. Un ejemplo sería limitar el acceso a un dispositivo a través de los escáneres usados por Shodan.

Detección y evidencias

La principal vía para detectar un ciberataque de DrDoS basado en QOTD es prestar atención a un tráfico irregular UDP o TCP en el puerto 17, ya que es el utilizado por QOTD para el envío de sus paquetes de datos.

Con el fin de controlar la cantidad de paquetes que llegan por el puerto 17, y de evaluar si estos son inusuales, es recomendable utilizar una aplicación de monitorización del tráfico (SIEM).

Por otro lado, es importante analizar constantemente el estado de salud de los equipos, dado que un pico puntual del consumo de sus recursos puede significar que algo grave está ocurriendo. Para ello, se recomienda utilizar herramientas de monitorización de equipos, que supervisen el uso del procesador, la memoria o el disco. Un ejemplo es el programa Nagios. En esta tarea, también es importante la revisión de las alertas que provengan de los IDS/IPS activos (cualquier dispositivo SIEM es capaz de realizar esta función). Con todo ello, se podrá estar constantemente informado sobre el consumo irregular de los recursos del equipo.

Respuesta y recomendaciones

Ante un ataque de DrDoS a través del servicio QOTD, que afecte a equipos propios, hay que saber cómo actuar y hacerlo rápido, aplicando el protocolo de actuación y gestión de incidentes para este tipo de ciberataques previamente definido. Este protocolo ha de contar con:

  • Recopilación de datos sobre el incidente. Se deben investigar las direcciones IP de origen y destino, puertos y posibles direcciones URL desde las que pueda provenir el ataque.
  • Bloqueo y filtrado del tráfico no deseado. Los datos recopilados anteriormente pueden servir para configurar filtros en cortafuegos y enrutadores para impedir que lleguen peticiones al equipo que ejecuta el servicio QOTD. El proveedor de Internet y de hosting también puede establecer filtros en su ámbito al facilitarle la información.
  • Contacto con INCIBE-CERT. De esta forma, se proporcionará ayuda para tomar medidas de mitigación y de recuperación ante tales ataques.

Tras finalizar el ataque y haber verificado que el servicio y las comunicaciones se han restablecido con normalidad, se deben analizar las causas que provocaron el incidente, identificando las posibles vulnerabilidades. Asimismo, se debe definir un plan de acción que elimine las debilidades del sistema y refuerce las medidas de prevención para evitar que vuelva a ocurrir.

Por otro lado, independientemente del impacto del ciberataque sufrido, hay que comunicarlo a las autoridades pertinentes para que pueda ser investigado y perseguido.