Sunteți pe pagina 1din 5

Análisis, mitigación y remediación de un slow HTTP

Art Attack
D. Donoso, R. Lema, J. Plaza.
Universidad de las Fuerzas Armadas - ESPE, Sangolquí, Ecuador
E-mail: diegofd77@hotmail.com, rcarlos.lema@gmail.com, jerkiplaza@gmail.com

Resumen I. Introducción

El presente artículo se enfoca en la mitigación y Las tendencias actuales en accesibilidad se mueven


remediación de un Ataque de Denegación de hacia la movilidad de servicios, a la disponibilidad
Servicio (DDoS), tipo slow HTTP Attack mediante de información desde cualquier terminal con
Slowloris. conexión a internet, que van desde accesos a
páginas de ocio hasta la ejecución de una
El Slowloris es una herramienta que afecta a transacción bancaria; servicios que por su
servidores web, en su mayoría Apache, y que tiene naturaleza son blancos de ataques
la particularidad de provocar un gran impacto [3] con la finalidad de sustraer información
utilizando un mínimo de ancho de banda y sensible o la denegación del servicio provocando
aprovechar los hilos de conexiones finitos que malestar en los usuarios, pérdida de credibilidad,
posee Apache, para tratar de mantener abiertas perdidas económicas y mala reputación en las
conexiones el mayor tiempo posible enviando una organizaciones que prestan los servicios.
respuesta parcial al servidor, provocando así que el
servidor se sature. Existen varios tipos de ataques que causan la
denegación de servicios, cuyo objetivo varía
Para demostrar el comportamiento de este ataque dependiendo de las vulnerabilidades de cada tipo
se ha realizado el levantamiento de una de tecnología en la red [1] [2]. Para mitigar estos
infraestructura virtual basada en VirtualBox, que ataques, es necesario identificar su modo de acción
consta de un Servidor Web con Apache, un y las afectaciones que puede causar y de esta
Firewall con Iptables y un equipo físico desde una manera, identificar y evaluar las amenazas que
red externa como atacante. puedan existir.

Se comprobó el funcionamiento y conectividad de En el presente trabajo se seleccionó uno de los


todos los componentes de la infraestructura, al ataques de denegación de servicios sobre el
acceder al servicio Web GLPI desde la máquina protocolo HTTP utilizando la herramienta
externa, en este momento se realizó una primera Slowloris, a fin de analizar, evidenciar y mitigar el
toma de evaluación de peticiones de sesión, lo cual colapso de los recursos del servidor [4]. Este ataque
sirvió como línea base para realizar la comparación fue llevado a cabo sobre una red virtual con el
posterior al ataque. propósito de inhabilitar el acceso interno y externo
a una aplicación web.
Para la remediación se utilizó un módulo de calidad
de servicio (QoS), que es el más apropiado para Como resultado de esta investigación se desarrolló
este tipo de ataque DoS, controlando las un mecanismo de mitigación mediante un módulo
conexiones que realiza el servidor web. La de QoS en el servidor web, evitando la saturación
simulación posterior a la aplicación de la de conexiones en el mismo.
remediación fue exitosa evitando la saturación del
servidor web.

II. Fundamento teórico


Palabras clave- Denegación de servicios,
slowloris, DDoS, Apache, Web Server, firewall, A. Denegación de servicio
vulnerabilidad de seguridad, calidad de servicio.
Un ataque de denegación de servicio es
especialmente dirigido a redes de computadoras.
Tiene como objetivo lograr que un servicio
específico o recurso de red quede completamente 2) Firewall: se utilizó shorewall como
inaccesible a los usuarios, sobrecargando al equipo herramienta de alto nivel basado en netfilter
informático hasta hacerlo colapsar al punto que no que emplea iptables, ipchains a fin de filtrar
pueda seguir dando el servicio [R4]. el tráfico de red en base a reglas establecidas.
3) Aplicación Web: se utiliza como sujeto de
B. Firewall pruebas a una Sistema web de administración
de recursos de TI de libre distribución, GLPI.
Firewall es un sistema de software que filtra 4) Protección contra DDoS: se utilizó Mod_qos,
paquetes de datos que se intercambian a través de módulo parte del servidor web Apache, que
la red cuya finalidad es la de proteger a un servidor permite la implementación de mecanismos de
o a una red de servidores contra intrusiones control estableciendo niveles de prioridad
provenientes de redes de terceros. sobre peticiones HTTP entrantes, ajuste
dinámico del ancho de banda dedicado a cada
C. Tráfico de red conexión, límite del número de conexiones
recurrentes a determinadas URLs, ajuste
El tráfico de red constituye los paquetes que dinámico de Keep Alive en las conexiones,
recorren una ruta para ingresar a un sistema y para análisis de cabeceras HTTP para evitar
salir de él dentro de una red ordenadores. operaciones no autorizadas. [R6]
5) Monitoreo y descubrimiento de red: se
D. QoS utilizaron los utilitarios i) netstat, comando
linux que muestra conexiones de red, tablas
QoS permite administrar el tráfico de red de forma de ruteo, estadísticas de interfaces de red,
más eficiente a fin de optimizar la experiencia del conexiones enmascaradas. ii) Nmap: para
usuario. QoS permite medir el ancho de banda, escanear redes y realizar auditorías de red.
detectar cambios en las condiciones de la red y 6) Slowloris: herramienta de denegación de
clasificar el tráfico por orden de calidad. servicio cuyo objetivo principal es colapsar la
mayoría de servidores web conocidos
E. Virtualización incluyendo Apache 1.x y Apache 2.x.
Consiste en enviar las cabeceras de las
La virtualización de hardware permite crear peticiones HTTP, sin llegar a completar
máquinas virtuales (VM) que emulan un host físico nunca una de estas, con lo que cada “media-
independiente, con recursos recursos propios, petición” que enviamos queda abierta, a la
sobre un host físico presentando un entorno de espera de que terminemos de enviar la
sistema operativo independiente. información restante para cerrarla, lo que
acabará consumiendo los recursos del
F. Web Server servidor y denegando el servicio al resto de
peticiones legítimas.
Un web server es un programa que utiliza el
protocolo HTTP para gestionar cualquier
aplicación en el lado del servidor, realizando
conexiones bidireccionales, síncronas o asíncronas B. Diseño de la topología experimental
con el cliente generando una respuesta.

III. Configuración del experimento

A. Herramientas

Las herramientas utilizadas en la ejecución de este


trabajo fueron:

1) Sistema de virtualización: se utilizó Virtual


Box como plataforma de virtualización, sobre
el cual se levantó el ambiente de pruebas que
contemplaron al servidor virtual y al host
atacante.
FIGURA 1. Diagrama de la topología experimental
Como se puede observar, el equipo del atacante se se puede observar en la Figura 3, slowloris hace
encuentra fuera de la red del servidor objetivo. Este múltiples peticiones de conexiones http
equipo utilizó como sistema operativo un Linux inconclusas al servidor objetivo:
Ubuntu Desktop 14.

Por lo tanto, las peticiones TCP que hace el


atacante al servidor, pasan por un firewall de red,
mismo que está implementado mediante la
herramienta Shorewall en un Linux Ubuntu Server
14, para posteriormente ser nateado al web server
GLPI que está conformado por un servidor web
Apache2, y una base de datos en MySQL.

C. Implementación de la Plataforma
Experimental

Primero se configuró el Firewall de red, en un


equipo virtual con dos interfaces de red, la primera
tanto para atender las peticiones externas, con
dirección IP 186.33.xxx.xxx y la segunda para
realizar el nateo de dichas peticiones hacia el web FIGURA 3. Ejecución de slowloris
server, con dirección IP 172.16.1.3. Este Firewall
se configuró con carácter restrictivo, es decir se El resultado fue que, tras la ejecución del ataque,
cerraron todos los puertos a excepción del HTTP. los hilos de conexión del servidor objetivo se
saturan, tal como se puede ver en la Figura 4:
El siguiente paso fue la creación de un registro
DNS publicado en la Internet, utilizando el servicio
de ddns.net. El registro fue creado como
diegofd77.ddns.net apuntando a la IP
186.33.xxx.xxx.

A continuación, se configuró el web server,


instalando desde los repositorios propios de
Ubuntu las aplicaciones Apache2 y MySQL
Server. Seguido se descargó GLPI desde el sitio
oficial, que luego fue descomprimido y
configurado desde un navegador web.

D. Generación de ataque

Para comenzar con el ataque, lo primero que se


verificó es el puerto de escucha http del servidor
FIGURA 4. Monitoreo de hilos de conexión
objetivo, tal como se muestra en la Figura 2:
E. Configuración del módulo QoS

Lo primero que se hizo fue la instalación del


módulo de QoS, utilizando directamente el paquete
de los repositorios de Ubuntu, tal y como se
muestra en la Figura 5:

FIGURA 2. Escaneo de puertos al servidor objetivo

A continuación, una vez que se conoció dicho


puerto, se utilizó la herramienta slowloris para
realizar el ataque DoS al servidor objetivo. Como
Una vez realizado varios análisis en diferentes
períodos de tiempo, en la Figura 8 se puede
observar que, sin la mitigación, mientras más
tiempo es ejecutado el ataque, más hilos con
peticiones de conexión inconclusas se abren en el
servidor, haciendo que el servidor web no pueda
procesar otras peticiones; mientras que, con la
mitigación, se puede apreciar que en cualquier
momento habrá disponibilidad de atender
conexiones, puesto que mod_qos controla el
número de conexiones por IP.

FIGURA 5. Instalación del mod_qos

El siguiente paso fue configurar los parámetros del


mod_qos. Para este caso se configuró para que el
que el servidor web atienda un máximo de 10
clientes, con 2 conexiones por cada uno de ellos, tal
como se ve en la Figura 6.

FIGURA 8. Monitoreo de hilos de conexión sin mitigación y


con mitigación

V. Trabajos Relacionados

Como parte de esta investigación, se ha hecho


referencia a trabajos realizados sobre evaluaciones
FIGURA 6. Parametrización del mod_qos de ataques de denegación de servicio y varios
métodos de mitigación que pueden ser aplicados. A
IV. Evaluación de Resultados continuación, se incluyen algunos de los trabajos
más relevantes:
Luego de realizar el ataque de DoS con slowloris
habiendo configurado mod_qos, se pudo observar
En el trabajo [2] se hace un estudio de los ataques
que es posible controlar el número de clientes y
conexiones que puede permitir el servidor web, tal DDoS, sus consecuencias, la evolución que ha
y como se puede apreciar en la Figura 7: tenido los métodos de ataque a la par de la
tecnología y propone mecanismos de prevención,
desafíos de investigación y posibles soluciones en
esta área.

El trabajo [4] hace un estudio general sobre los


ataques de denegación de servicios, a fin de
comprender el objetivo, las técnicas y posibles
métodos de defensa desde un punto teórico y
técnico.

En el trabajo [6] se realiza una evaluación de


ataques UDP Flood haciendo uso de herramientas
como UDP Unicorn, Longcat Flooder y UDPl.pl
FIGURA 7. Monitoreo de hilos de conexión
generando un mecanismo de detección y [4] Zlomislic, Vinko. Denial of Service Attacks:
mitigación de los ataques a nivel del firewall e An Overview. University of Zagreb. DOI:
IDS/IPS. 10.1109/CISTI.2014.6876979. August 2014

[5] Fuertes, W., Rodas, F., & Toscano, D. (2011).


VI. Conclusiones y Trabajos Futuros Evaluación de ataques UDP Flood utilizando
escenarios virtuales como plataforma
Desde ya, estar al día con las actualizaciones de experimental. Facultad de Ingeniería, 20(31), 37-
53.
software en uso que esté expuesto a internet.
[6] M. Spiegel, «HowtoForge,» [En línea].
Sin dudas una de las técnicas más recomendadas es
Available: https://www.howtoforge.com/how-to-
la implementación mixta de defend-slowloris-ddos-with-mod_qos-apache2-
on-debian-lenny. [Último acceso: 2016 Septiembre
 Firewall. 2016].
 Balanceo de carga.
 QoS para limitar la cantidad de [7] Donoso, D., Plaza, J., Lema, R. «YouTube,»
conexiones permitidas por cada IP [En línea]. Available:
https://www.youtube.com/watch?v=FSVl5LRLq5
individual (100 estaría bien, una vez
0. [Último acceso: Septiembre 20 2016].
superado ese límite, las conexiones se
rechazan); Limitar el número de
conexiones por segundo, y; Limitar el
tiempo en que cada cliente permanece
conectado.

Teniendo que el servidor web Apache es uno de los


más usados en internet, seguir las recomendaciones
de la documentación oficial que se puede encontrar
en el sitio.

Si su aplicación tiene una audiencia específica, por


ejemplo, si el servicio es solamente para personas
residentes en Ecuador, las peticiones provenientes
desde Rusia o China podrían ser bloqueadas
mediante uso de listas negras de rangos.

IV. REFERENCIAS

 
[1] Bhuyan, M, Kashyap, H, Bhattacharyya, D,
Kalita, J. Detecting Distributed Denial of Service
Attacks: Methods, Tools and Future Directions.
The Computer Journal 2013; DOI:
10.1093/comjnl/bxt031, 2013, UK [SCI, IF: 0.79]

[2] Abliz, M. Internet Denial of Service Attacks


and Defense Mechanisms. University of Pittsburgh
Technical Report, No. TR-11-178, March 2011.

[3] Radware Inc. Global Application and Network


Security Report. Technical Report 2013-01; 2013

S-ar putea să vă placă și