ATAQUE CON SLOWLORIS A SERVIDORES APACHE VULNERABLES · cabeceras al servidor de manera que asi se...

12
ATAQUE CON SLOWLORIS A SERVIDORES APACHE VULNERABLES ATAQUES DoS (Denegacion de Servicio) Se genera mediante la saturación de los puertos con flujo de información, haciendo que el servidor se sobrecargue y no pueda seguir prestando servicios; por eso se lo denomina “denegación”, pues hace que el servidor no de abasto a la cantidad de solicitudes. Esta técnica es usada por los llamados crackers para dejar fuera de servicio a servidores objetivo. Para esta práctica vamos a utilizar bajo Kali Linux un “sencillo” script hecho en PERL, implementa una potente e inteligente manera de generar una denegación de servicio sobre un servidor Web Apache. Para ello, se basa en la cantidad de peticiones que es capaz de mantener un servidor web de forma concurrente. La forma de saturar el pool de servicios es mediante la creación de “request” HTTP (con HTTPs también funciona) de manera que empiezan a enviar cabeceras y más cabeceras al servidor de manera que asi se fuerza a mantener abiertas las conexiones por parte del servidor. Los servidores web tienen determinado un número máximo global de sockets permitidos. 1.- Accedemos a Kali Linux 2.- Ingresamos la siguiente dirección en nuestro navegador para obtener el script slowloris el cual nos permitirá realizar el ataque: ha.ckers.org/slowloris/slowloris.pl

Transcript of ATAQUE CON SLOWLORIS A SERVIDORES APACHE VULNERABLES · cabeceras al servidor de manera que asi se...

Page 1: ATAQUE CON SLOWLORIS A SERVIDORES APACHE VULNERABLES · cabeceras al servidor de manera que asi se fuerza a mantener abiertas las conexiones por parte del servidor. Los servidores

ATAQUE CON SLOWLORIS A SERVIDORES APACHE VULNERABLES

ATAQUES DoS (Denegacion de Servicio)

Se genera mediante la saturación de los puertos con flujo de información, haciendo que el servidor

se sobrecargue y no pueda seguir prestando servicios; por eso se lo denomina “denegación”, pues

hace que el servidor no de abasto a la cantidad de solicitudes. Esta técnica es usada por los

llamados crackers para dejar fuera de servicio a servidores objetivo.

Para esta práctica vamos a utilizar bajo Kali Linux un “sencillo” script hecho en PERL, implementa

una potente e inteligente manera de generar una denegación de servicio sobre un servidor Web

Apache. Para ello, se basa en la cantidad de peticiones que es capaz de mantener un servidor web

de forma concurrente. La forma de saturar el pool de servicios es mediante la creación de

“request” HTTP (con HTTPs también funciona) de manera que empiezan a enviar cabeceras y más

cabeceras al servidor de manera que asi se fuerza a mantener abiertas las conexiones por parte

del servidor. Los servidores web tienen determinado un número máximo global de sockets

permitidos.

1.- Accedemos a Kali Linux

2.- Ingresamos la siguiente dirección en nuestro navegador para obtener el script slowloris el cual

nos permitirá realizar el ataque: ha.ckers.org/slowloris/slowloris.pl

Page 2: ATAQUE CON SLOWLORIS A SERVIDORES APACHE VULNERABLES · cabeceras al servidor de manera que asi se fuerza a mantener abiertas las conexiones por parte del servidor. Los servidores

3.- Copiamos el código y lo guardamos en un archivo en el escritorio con el nombre slowloris.pl

Page 3: ATAQUE CON SLOWLORIS A SERVIDORES APACHE VULNERABLES · cabeceras al servidor de manera que asi se fuerza a mantener abiertas las conexiones por parte del servidor. Los servidores

4.- Requisitos:

Este es un programa Perl que requiere el intérprete Perl con los módulos; IO :: socket :: INET, IO ::

Socket :: SSL, y Getopt

Para ello instalamos de la siguiente manera:

perl –MCPAN –e ‘install IO::Socket::INET’

perl –MCPAN –e ‘install IO::Socket::SSL’

sudo apt-get install libgetopt-mixed-perl

sudo apt-get install perl doc

Page 4: ATAQUE CON SLOWLORIS A SERVIDORES APACHE VULNERABLES · cabeceras al servidor de manera que asi se fuerza a mantener abiertas las conexiones por parte del servidor. Los servidores
Page 5: ATAQUE CON SLOWLORIS A SERVIDORES APACHE VULNERABLES · cabeceras al servidor de manera que asi se fuerza a mantener abiertas las conexiones por parte del servidor. Los servidores
Page 6: ATAQUE CON SLOWLORIS A SERVIDORES APACHE VULNERABLES · cabeceras al servidor de manera que asi se fuerza a mantener abiertas las conexiones por parte del servidor. Los servidores

5.- Una vez instalados los componentes necesarios procedemos a realizar el ataque DoS, para ello

debemos dar permisos sobre el achivo creado slowloris.pl, mediante:

# cd Desktop

# ls

# chmod 777 slowloris.pl

Page 7: ATAQUE CON SLOWLORIS A SERVIDORES APACHE VULNERABLES · cabeceras al servidor de manera que asi se fuerza a mantener abiertas las conexiones por parte del servidor. Los servidores

6.- Ejecutamos el ataque a un servidor WEB objetivo mediante la instrucción:

# perl ./slowloris.pl –dns www.uti.edu.ec –port 80 –timeout 1 –num 1000 –cache

Page 8: ATAQUE CON SLOWLORIS A SERVIDORES APACHE VULNERABLES · cabeceras al servidor de manera que asi se fuerza a mantener abiertas las conexiones por parte del servidor. Los servidores
Page 9: ATAQUE CON SLOWLORIS A SERVIDORES APACHE VULNERABLES · cabeceras al servidor de manera que asi se fuerza a mantener abiertas las conexiones por parte del servidor. Los servidores

INUNDACION DE ICMP

Es una técnica que pretende agotar el ancho de banda de la víctima. Consiste en enviar de forma

continuada un número elevado de paquetes ICMP, (ping) de tamaño considerable a la víctima, de

forma que esta ha de responder con paquetes, lo que supone una sobrecarga tanto de la red como

en el sistema de la víctima.

Dependiendo de la relación entre la capacidad de procesamiento de la víctima y el atacante, el

grado de sobrecarga varía, es decir, si un atacante tiene una capacidad mucho mayor, la víctima no

puede manejar el tráfico generado.

El comando hping3, es un analizador/ensamblador de paquetes TCP/IP de uso en modo consola,

hping no solo es capaz de enviar paquetes ICMP, sino además también puede enviar paquetes

TCP, UDP, y RAW-IP

Por ejemplo si queremos hacer un ataque simple que sobrecargue el procesamiento o respuesta

de un “x” computador conectado a la red lo hacemos mediante la instrucción:

# ping 192.168.1.5 –l 5000 –t

Esto enviara cada segundo 5000 paquetes continuamente saturando el canal y por ende afectando

la respuesta de la pc víctima.

Otro derivado de este es:

#ping –t –a uti.edu.ec –n 10000

Esto hará que se envíen 10000 solicitudes de ping a la página y se sature, aunque es mejor si hay

varias pc atacantes realizando la misma acción contra el servidor o pc víctima.

En Kali Linux se puede hacer uso del comando hping3 y podemos ver con un sniffer como

wireshark, como se captura el tráfico enviado hacia una terminal elegida, y la carga que este

soporta:

Page 10: ATAQUE CON SLOWLORIS A SERVIDORES APACHE VULNERABLES · cabeceras al servidor de manera que asi se fuerza a mantener abiertas las conexiones por parte del servidor. Los servidores

Ahora reforzando un poco la instrucción:

# hping3 –c 10000 –d 120 –S –w 64 –p 21 –flood –rand-source www.uti.edu.ec

Donde:

Page 11: ATAQUE CON SLOWLORIS A SERVIDORES APACHE VULNERABLES · cabeceras al servidor de manera que asi se fuerza a mantener abiertas las conexiones por parte del servidor. Los servidores

Hping3: comando a utilizar

-c 10000: número de paquetes a enviar

-d 120: tamaño de cada paquete enviado

-S : solo se envía paquetes SYN

-w 64: Tamaño de ventana TCP

-p 80 : Puerto de destino

--flood : Envío rápido de paquetes, sin tener cuidado de mostrar respuestas entrantes

--rand-source : Uso de direcciones IP origen al azar, también se puede usar –ao – spoof para

ocultar los nombres de host

www.uti.edu.ec : dirección de destino o victima

Demostración:

Page 12: ATAQUE CON SLOWLORIS A SERVIDORES APACHE VULNERABLES · cabeceras al servidor de manera que asi se fuerza a mantener abiertas las conexiones por parte del servidor. Los servidores

Podemos ver como en unos segundos se ha inundado la red con más de 600000 paquetes

transmitidos de forma ininterrumpida, esto suele causar que la red se colapse, impidiendo a otros

usuarios poder utilizarla, ya que hping no deja espacio entre paquete-paquete, para que otras

máquinas transmitan ningún otro tipo de información.

CUANTAS CONEXIONES SOPORTA ACTUALMENTE APACHE SQUID?

Esto depende del hardware (Servidor) que se ha configurado, ya que squid y apache consumen

CPU, RAM, a de más que debe tener una buena tarjeta de red que soporte las conexiones puede

ser de 100/1000 Mbps.

Es de tomar muy en cuenta además el tipo de switch utilizado ya que al realizar la conexión en

cascada puede ralentizar la red gravemente.

Un servidor correctamente configurado puede soportar de 100 a 150 estaciones de trabajo,

conectadas de forma simultánea, aconsejable utilizar un backbone si se utiliza en cascada.