Intentando Detener Un Ataque DDoS

23
Bienvenido(a), Visitante. Por favor Ingresar o Registrarse ¿Perdiste tu email de activación?. | Foro | Web | Blog | Wiki | Ayuda | Buscar | Ingresar | Registrarse | 18 Febrero 2013, 14:46 Foro de elhacker.net Informática Tutoriales - Documentación Intentando detener un ataque DDoS 1 0 Usuarios y 1 Visitante están viendo este tema. Páginas: [1] 2 3 Autor Tema: Intentando detener un ataque DDoS (Leído 111,434 veces) el-brujo ehn Desconectado Mensajes: 17.648 La libertad no se suplica, se conquista Intentando detener un ataque DDoS « en: 25 Agosto 2006, 11:12 » v 2.36 Porque un null-route a una ip no es una solución, es una chapuza. Si unos script-kiddies están DDoSeando tu web..... 1) Se basa en ataques reales. 2) No hay nada de teoría, solo parte práctica. A) Detectando el ataque 1) Usando el comando netstat Código: netstat -an | grep :80 | sort Código: netstat -n -p | grep SYN_REC | awk '{print $5}' | awk -F: '{print $1}' Código: netstat -n -p|grep SYN_REC | wc -l Código: netstat -lpn|grep :80 |awk '{print $5}'|sort Intentando detener un ataque DDoS http://foro.elhacker.net/tutoriales_documentacion/intentando_detener_... 1 de 23 2/18/2013 9:32 AM

Transcript of Intentando Detener Un Ataque DDoS

Page 1: Intentando Detener Un Ataque DDoS

Bienvenido(a),Visitante. Por favor

Ingresar oRegistrarse

¿Perdiste tu emailde activación?.

| Foro | Web | Blog | Wiki | Ayuda | Buscar | Ingresar | Registrarse | 18 Febrero 2013, 14:46

Foro de elhacker.net Informática

Tutoriales - Documentación Intentando detener un ataque

DDoS

1 0 Usuarios y 1 Visitante están viendo estetema.

Páginas: [1] 2 3

Autor Tema: Intentando detener un ataque DDoS (Leído 111,434 veces)

el-brujoehn

Desconectado

Mensajes:17.648

La libertad nose suplica, seconquista

Intentando detener un ataque DDoS« en: 25 Agosto 2006, 11:12 »

v 2.36

Porque un null-route a una ip no es una solución, es una chapuza.

Si unos script-kiddies están DDoSeando tu web.....

1) Se basa en ataques reales.2) No hay nada de teoría, solo parte práctica.

A) Detectando el ataque1) Usando el comando netstatCódigo:netstat -an | grep :80 | sort

Código:netstat -n -p | grep SYN_REC | awk '{print $5}' | awk -F: '{print $1}'

Código:netstat -n -p|grep SYN_REC | wc -l

Código:netstat -lpn|grep :80 |awk '{print $5}'|sort

Intentando detener un ataque DDoS http://foro.elhacker.net/tutoriales_documentacion/intentando_detener_...

1 de 23 2/18/2013 9:32 AM

Page 2: Intentando Detener Un Ataque DDoS

Código:netstat -an | grep :80 | awk '{ print $5 }' | awk -F: '{ print $1 }' | sort | uniq -c

Ejemplo de ataque SYN_RECV o SYN Flooding al Apache (puerto 80).

192.168.0.3 es la ip del servidor apache y 192.168.0.105 es la ip del "atacante".

Código:tcp 0 0 192.168.0.3:80 192.168.0.5:60808 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:60761 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:60876 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:60946 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:60763 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:60955 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:60765 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:60961 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:60923 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:61336 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:61011 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:60911 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:60758 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:60828 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:61114 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:61074 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:60826 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:60959 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:60900 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:60940 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:60920 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:60825 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:60945 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:60913 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:61009 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:60755 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:60904 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:61583 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:60910 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:60915 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:60827 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:61458 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:60908 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:61007 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:60927 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:60951 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:60942 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:61113 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:60909 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:60822 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:60894 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:60952 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:60928 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:60936 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:60906 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:61466 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:60919 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:60914 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:60926 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:60939 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:60931 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:60831 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:60823 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:60954 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:60916 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:60963 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:60947 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:61006 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:60933 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:60950 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:60895 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:60917 SYN_RECV

Intentando detener un ataque DDoS http://foro.elhacker.net/tutoriales_documentacion/intentando_detener_...

2 de 23 2/18/2013 9:32 AM

Page 3: Intentando Detener Un Ataque DDoS

tcp 0 0 192.168.0.3:80 192.168.0.5:61480 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:60935 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:60960 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:60767 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:60918 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:60821 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:61077 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:60905 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:61517 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:60893 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:60953 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:60903 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:61439 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:61337 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:61545 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:61299 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:61010 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:60930 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:60744 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:60929 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:60754 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:61008 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:61116 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:60811 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:60807 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:60938 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:60764 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:60873 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:60817 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:61550 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:60748 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:60956 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:60753 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:61115 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:60741 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:61075 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:60948 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:60829 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:60943 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:61338 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:60762 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:60824 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:60830 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:61535 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:60898 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:60815 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:60962 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:60957 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:60944 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:60921 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:60759 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:60897 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:61518 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:60958 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:60922 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:60937 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:60875 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:60766 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:60751 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:60768 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:60743 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:61076 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:60912 SYN_RECV tcp 0 0 192.168.0.3:80 192.168.0.5:60816 SYN_RECV

Claro ejemplo de SYN Attack al Apache.

2) Mirando el server-status del

Intentando detener un ataque DDoS http://foro.elhacker.net/tutoriales_documentacion/intentando_detener_...

3 de 23 2/18/2013 9:32 AM

Page 4: Intentando Detener Un Ataque DDoS

ApacheSi miramos el server-status del apache veremos conexiones en estado "Reading"("R" Reading Request).

El problema es que cuando el número de conexiones "Reading" llena el"MaxClients" del Apache no acepta nuevas peticiones, por lo que los nuevosclientes, aunque sean legítimos, no serán aceptados.

Podemos aumentar el valor del "MaxClients" para que no se llene la cola depeticiones y acepte a todos los clientes, sean atacantes o no.

Otra buena medida es bajar el valor del "Timeout" del Apache para que laspeticiones "Reading" sean "matadas" rápidamente, antes que pueda llenarse elMaxClients a su tope.

Para aumentar el MaxClients en el Apache 2 basta con añadir la directiva:

ServerLimit 350 antes de MaxClients y ya dejará.

<IfModule prefork.c>[..]ServerLimit 500MaxClients 450

Intentando detener un ataque DDoS http://foro.elhacker.net/tutoriales_documentacion/intentando_detener_...

4 de 23 2/18/2013 9:32 AM

Page 5: Intentando Detener Un Ataque DDoS

[..]</IfModule>

3) Mirando los logs del mod_evasiveCitarJun 22 18:24:04 lan mod_evasive[3835]: Blacklisting address 82.228.169.50: possibleattack.Jun 22 18:24:45 lan mod_evasive[3600]: Blacklisting address 81.206.164.163: possibleattack.Jun 22 18:25:46 lan mod_evasive[3589]: Blacklisting address 155.232.250.19: possibleattack.Jun 22 18:27:23 lan mod_evasive[3671]: Blacklisting address 83.227.217.2: possibleattack.Jun 22 18:28:10 lan mod_evasive[3673]: Blacklisting address 68.187.171.89: possibleattack.Jun 22 18:29:57 lan mod_evasive[3605]: Blacklisting address 70.143.2.130: possibleattack.Jun 22 18:30:45 lan mod_evasive[3803]: Blacklisting address 69.157.93.88: possibleattack.Jun 22 18:31:45 lan mod_evasive[10397]: Blacklisting address 146.64.81.22: possibleattack.Jun 22 18:35:01 lan mod_evasive[3794]: Blacklisting address 66.38.192.134: possibleattack.Jun 22 18:35:15 lan mod_evasive[3553]: Blacklisting address 81.190.204.64: possibleattack.Jun 22 18:40:10 lan mod_evasive[16602]: Blacklisting address 64.231.39.129: possibleattack.Jun 22 18:48:04 lan mod_evasive[16479]: Blacklisting address 84.99.195.100: possibleattack.Jun 22 18:48:12 lan mod_evasive[16467]: Blacklisting address 201.0.10.142: possibleattack.Jun 22 18:52:57 lan mod_evasive[16573]: Blacklisting address 219.95.39.242: possibleattack.Jun 22 18:53:07 lan mod_evasive[16534]: Blacklisting address 86.129.3.91: possibleattack.Jun 22 18:53:26 lan mod_evasive[16527]: Blacklisting address 62.254.0.32: possibleattack.Jun 22 18:54:41 lan mod_evasive[30473]: Blacklisting address 24.196.199.191: possibleattack.Jun 22 18:55:17 lan mod_evasive[30520]: Blacklisting address 142.161.157.227:possible attack.Jun 22 18:55:24 lan mod_evasive[30461]: Blacklisting address 65.92.145.133: possibleattack.Jun 22 18:55:33 lan mod_evasive[30509]: Blacklisting address 88.111.227.200: possibleattack.Jun 22 18:56:13 lan mod_evasive[30473]: Blacklisting address 69.199.94.227: possibleattack.Jun 22 18:57:45 lan mod_evasive[30517]: Blacklisting address 86.125.135.212: possibleattack.Jun 22 18:57:54 lan mod_evasive[30479]: Blacklisting address 84.192.141.65: possibleattack.Jun 22 18:58:46 lan mod_evasive[30527]: Blacklisting address 83.140.97.106: possibleattack.Jun 22 18:59:31 lan mod_evasive[30469]: Blacklisting address 82.173.216.196: possibleattack.Jun 22 19:00:33 lan mod_evasive[30517]: Blacklisting address 80.176.157.245: possibleattack.Jun 22 19:00:38 lan mod_evasive[30470]: Blacklisting address 86.133.102.51: possibleattack.Jun 22 19:01:35 lan mod_evasive[30870]: Blacklisting address 24.42.134.253: possibleattack.Jun 22 19:01:48 lan mod_evasive[30509]: Blacklisting address 62.254.0.34: possibleattack.Jun 22 19:02:57 lan mod_evasive[31009]: Blacklisting address 81.227.219.125: possibleattack.Jun 22 19:03:29 lan mod_evasive[31056]: Blacklisting address 172.209.173.153:possible attack.Jun 22 19:05:07 lan mod_evasive[31385]: Blacklisting address 84.6.12.110: possibleattack.

Intentando detener un ataque DDoS http://foro.elhacker.net/tutoriales_documentacion/intentando_detener_...

5 de 23 2/18/2013 9:32 AM

Page 6: Intentando Detener Un Ataque DDoS

Jun 22 19:06:52 lan mod_evasive[31008]: Blacklisting address 85.227.144.249: possibleattack.Jun 22 19:06:56 lan mod_evasive[31263]: Blacklisting address 213.222.156.222:possible attack.Jun 22 19:07:13 lan mod_evasive[31393]: Blacklisting address 62.163.143.166: possibleattack.Jun 22 19:07:37 lan mod_evasive[31021]: Blacklisting address 62.135.101.73: possibleattack.Jun 22 19:08:03 lan mod_evasive[31251]: Blacklisting address 82.201.249.69: possibleattack.Jun 22 19:08:17 lan mod_evasive[31200]: Blacklisting address 81.62.65.53: possibleattack.Jun 22 19:11:04 lan mod_evasive[31263]: Blacklisting address 82.39.148.204: possibleattack.Jun 22 19:12:37 lan mod_evasive[31241]: Blacklisting address 213.222.154.13: possibleattack.Jun 22 19:13:54 lan mod_evasive[31027]: Blacklisting address 81.51.79.4: possibleattack.Jun 22 19:24:04 lan mod_evasive[31041]: Blacklisting address 84.221.118.156: possibleattack.Jun 22 19:48:47 lan mod_evasive[3400]: Blacklisting address 62.135.101.192: possibleattack.Jun 22 19:53:04 lan mod_evasive[31031]: Blacklisting address 62.30.33.13: possibleattack.Jun 22 19:54:32 lan mod_evasive[31016]: Blacklisting address 72.14.194.18: possibleattack.Jun 22 19:56:10 lan mod_evasive[31067]: Blacklisting address 198.96.34.58: possibleattack.Jun 22 20:03:24 lan mod_evasive[5144]: Blacklisting address 172.213.33.242: possibleattack.Jun 22 20:08:31 lan mod_evasive[5137]: Blacklisting address 83.241.11.16: possibleattack.Jun 22 20:21:59 lan mod_evasive[6645]: Blacklisting address 201.23.193.20: possibleattack.Jun 22 20:32:28 lan mod_evasive[7801]: Blacklisting address 212.38.134.172: possibleattack.Jun 22 20:45:46 lan mod_evasive[7836]: Blacklisting address 81.247.11.48: possibleattack.Jun 22 20:48:03 lan mod_evasive[7796]: Blacklisting address 70.245.98.186: possibleattack.Jun 22 20:49:38 lan mod_evasive[7832]: Blacklisting address 61.8.138.203: possibleattack.Jun 22 20:51:21 lan mod_evasive[7801]: Blacklisting address 201.132.197.161: possibleattack.Jun 22 20:57:18 lan mod_evasive[10426]: Blacklisting address 82.201.249.67: possibleattack.Jun 22 20:57:51 lan mod_evasive[7822]: Blacklisting address 81.77.26.162: possibleattack.Jun 22 21:00:25 lan mod_evasive[7817]: Blacklisting address 200.39.202.243: possibleattack.Jun 22 21:12:04 lan mod_evasive[7794]: Blacklisting address 84.27.139.25: possibleattack.Jun 22 21:22:27 lan mod_evasive[7816]: Blacklisting address 217.208.98.254: possibleattack.

Si es un DDoS muy distribuido enseguida notaremos que muchas ip's diferenteDoSean el Apache.

4) Mirando los logs del syslog (del kernel)CitarMay 17 13:39:01 lan kernel: possible SYN flooding on port 80. Sending cookies.May 17 13:39:02 lan kernel: ip_conntrack: table full, dropping packet.May 17 13:39:35 lan kernel: NET: 4 messages suppressed.May 17 13:39:35 lan kernel: ip_conntrack: table full, dropping packet.May 17 13:39:38 lan kernel: NET: 1 messages suppressed.May 17 13:39:38 lan kernel: ip_conntrack: table full, dropping packet.May 17 13:39:43 lan kernel: NET: 6 messages suppressed.May 17 13:39:43 lan kernel: ip_conntrack: table full, dropping packet.May 17 13:39:48 lan kernel: NET: 4 messages suppressed.

Intentando detener un ataque DDoS http://foro.elhacker.net/tutoriales_documentacion/intentando_detener_...

6 de 23 2/18/2013 9:32 AM

Page 7: Intentando Detener Un Ataque DDoS

May 17 13:39:48 lan kernel: ip_conntrack: table full, dropping packet.May 17 13:39:52 lan kernel: NET: 9 messages suppressed.May 17 13:39:52 lan kernel: ip_conntrack: table full, dropping packet.May 17 13:39:57 lan kernel: NET: 15 messages suppressed.May 17 13:39:57 lan kernel: ip_conntrack: table full, dropping packet.May 17 13:40:01 lan kernel: possible SYN flooding on port 80. Sending cookies.

Líneas a mirar:

Citarpossible SYN flooding on port 80. Sending cookies.

"Sending Cookies" si lo tenemos activado en el /etc/sysctl.conf# Enable TCP SYN Cookie ProtectionCódigo:net.ipv4.tcp_syncookies = 1

A veces es mejor deshabilitarlo:

Código:net.ipv4.tcp_syncookies = 0

De esta manera podemos ver las ip's del ataque:

CitarJul 14 12:46:50 lan kernel: TCP: drop open request from 80.171.45.81/63069Jul 14 12:46:55 lan kernel: NET: 1401 messages suppressed.Jul 14 12:46:55 lan kernel: TCP: drop open request from 80.103.166.148/4403Jul 14 12:46:59 lan kernel: NET: 1772 messages suppressed.Jul 14 12:46:59 lan kernel: TCP: drop open request from 200.127.62.215/4019Jul 14 12:47:05 lan kernel: NET: 2362 messages suppressed.Jul 14 12:47:05 lan kernel: TCP: drop open request from 85.57.169.142/19899Jul 14 12:47:11 lan kernel: NET: 2618 messages suppressed.Jul 14 12:47:11 lan kernel: TCP: drop open request from 83.19.73.122/2710Jul 14 12:47:14 lan kernel: NET: 898 messages suppressed.Jul 14 12:47:14 lan kernel: TCP: drop open request from 80.235.39.64/3554Jul 14 12:47:19 lan kernel: NET: 1120 messages suppressed.Jul 14 12:47:19 lan kernel: TCP: drop open request from 80.171.45.81/62095Jul 14 12:47:24 lan kernel: NET: 1714 messages suppressed.Jul 14 12:47:24 lan kernel: TCP: drop open request from 84.62.152.44/34014Jul 14 12:47:29 lan kernel: NET: 2274 messages suppressed.Jul 14 12:47:29 lan kernel: TCP: drop open request from 200.127.62.215/3207Jul 14 12:47:34 lan kernel: NET: 1552 messages suppressed.Jul 14 12:47:34 lan kernel: TCP: drop open request from 80.103.166.148/4797Jul 14 12:47:39 lan kernel: NET: 4044 messages suppressed.Jul 14 12:47:39 lan kernel: TCP: drop open request from 80.235.39.64/2678Jul 14 12:47:44 lan kernel: NET: 4360 messages suppressed.Jul 14 12:47:44 lan kernel: TCP: drop open request from 80.103.166.148/1312Jul 14 13:04:15 lan kernel: TCP: drop open request from 200.14.237.83/4787Jul 14 13:04:22 lan kernel: NET: 147 messages suppressed.Jul 14 13:04:22 lan kernel: TCP: drop open request from 81.38.172.161/4892Jul 14 13:04:30 lan kernel: NET: 6 messages suppressed.Jul 14 13:04:30 lan kernel: TCP: drop open request from 200.14.237.83/4934Jul 14 13:04:30 lan kernel: TCP: drop open request from 200.14.237.83/4935Jul 14 13:04:38 lan kernel: NET: 76 messages suppressed.Jul 14 13:04:38 lan kernel: TCP: drop open request from 81.84.212.34/2861Jul 14 13:04:40 lan kernel: NET: 269 messages suppressed.Jul 14 13:04:40 lan kernel: TCP: drop open request from 200.14.237.83/3070Jul 14 13:04:45 lan kernel: NET: 287 messages suppressed.Jul 14 13:04:45 lan kernel: TCP: drop open request from 81.203.228.102/4400Jul 14 13:04:50 lan kernel: NET: 98 messages suppressed.Jul 14 13:04:50 lan kernel: TCP: drop open request from 81.84.212.34/3961Jul 14 13:04:54 lan kernel: NET: 245 messages suppressed.Jul 14 13:04:54 lan kernel: TCP: drop open request from 200.84.169.200/1183Jul 14 13:05:00 lan kernel: NET: 1787 messages suppressed.Jul 14 13:05:00 lan kernel: TCP: drop open request from 81.203.228.102/2050Jul 14 13:05:04 lan kernel: NET: 3208 messages suppressed.Jul 14 13:05:04 lan kernel: TCP: drop open request from 86.212.167.27/4720Jul 14 13:05:09 lan kernel: NET: 2031 messages suppressed.Jul 14 13:05:09 lan kernel: TCP: drop open request from 81.203.228.102/1794

Intentando detener un ataque DDoS http://foro.elhacker.net/tutoriales_documentacion/intentando_detener_...

7 de 23 2/18/2013 9:32 AM

Page 8: Intentando Detener Un Ataque DDoS

Jul 14 13:05:14 lan kernel: NET: 2221 messages suppressed.Jul 14 13:05:14 lan kernel: TCP: drop open request from 81.38.172.161/4908Jul 14 13:05:21 lan kernel: NET: 730 messages suppressed.Jul 14 13:05:21 lan kernel: TCP: drop open request from 81.203.228.102/1430Jul 14 13:05:25 lan kernel: NET: 234 messages suppressed.Jul 14 13:05:25 lan kernel: TCP: drop open request from 81.203.228.102/2939Jul 14 13:05:30 lan kernel: NET: 1594 messages suppressed.Jul 14 13:05:30 lan kernel: TCP: drop open request from 200.14.237.83/3876Jul 14 13:05:36 lan kernel: NET: 633 messages suppressed.Jul 14 13:05:36 lan kernel: TCP: drop open request from 86.212.167.27/1116Jul 14 13:05:39 lan kernel: NET: 970 messages suppressed.Jul 14 13:05:39 lan kernel: TCP: drop open request from 81.38.172.161/3040Jul 14 13:05:45 lan kernel: NET: 548 messages suppressed.Jul 14 13:05:45 lan kernel: TCP: drop open request from 81.203.228.102/2119Jul 14 13:05:50 lan kernel: NET: 421 messages suppressed.Jul 14 13:05:50 lan kernel: TCP: drop open request from 81.203.228.102/2478Jul 14 13:05:56 lan kernel: NET: 379 messages suppressed.Jul 14 13:05:56 lan kernel: TCP: drop open request from 81.203.228.102/4005Jul 14 13:05:59 lan kernel: NET: 891 messages suppressed.Jul 14 13:05:59 lan kernel: TCP: drop open request from 81.38.172.161/3568Jul 14 13:06:04 lan kernel: NET: 2221 messages suppressed.Jul 14 13:06:04 lan kernel: TCP: drop open request from 81.203.228.102/4532Jul 14 13:06:09 lan kernel: NET: 243 messages suppressed.Jul 14 13:06:09 lan kernel: TCP: drop open request from 81.203.228.102/1939Jul 14 13:06:14 lan kernel: NET: 2166 messages suppressed.Jul 14 13:06:14 lan kernel: TCP: drop open request from 81.38.172.161/2137Jul 14 13:06:19 lan kernel: NET: 2071 messages suppressed.Jul 14 13:06:19 lan kernel: TCP: drop open request from 81.38.172.161/3136Jul 14 13:06:24 lan kernel: NET: 2069 messages suppressed.Jul 14 13:06:24 lan kernel: TCP: drop open request from 81.84.212.34/4600Jul 14 13:06:29 lan kernel: NET: 1797 messages suppressed.Jul 14 13:06:29 lan kernel: TCP: drop open request from 86.212.167.27/3171Jul 14 13:06:35 lan kernel: NET: 1292 messages suppressed.Jul 14 13:06:35 lan kernel: TCP: drop open request from 81.203.228.102/1394Jul 14 13:06:39 lan kernel: NET: 715 messages suppressed.

CitarMay 17 14:13:24 lan kernel: ip_conntrack: table full, dropping packet.

Tabla llena. Tenemos un problema porque no admitiremos más conexiones aunquesean legítimas.

Podemos aumentar el valor de dicha tabla si nuestra red da para más.

Directamente:Código:echo "65535" > /proc/sys/net/ipv4/ip_conntrack_max

Para que el valor quede guardardo y no se pierda al reiniciar, debemos añadirlo enel sysctl.confCódigo:net.ipv4.ip_conntrack_max = 65535

Recuerda reiniciar la red para aplicar los cambios en el /proc (service networkrestart).

Paquetes Marcianos:

CitarAug 31 12:41:29 lan kernel: martian source 192.168.0.10 from 0.0.0.0, on dev eth0Aug 31 12:45:07 lan kernel: martian source 192.168.0.10 from 0.0.0.0, on dev eth0Aug 31 12:52:57 lan kernel: martian source 192.168.0.10 from 0.0.0.0, on dev eth0Aug 31 12:58:55 lan kernel: martian source 192.168.0.10 from 0.0.0.0, on dev eth0Aug 31 13:08:12 lan kernel: martian source 192.168.0.10 from 0.0.0.0, on dev eth0Aug 31 13:12:03 lan kernel: martian source 192.168.0.10 from 0.0.0.0, on dev eth0Aug 31 13:34:38 lan kernel: martian source 192.168.0.10 from 0.0.0.0, on dev eth0Aug 31 13:37:38 lan kernel: martian source 192.168.0.10 from 0.0.0.0, on dev eth0Aug 31 13:52:42 lan kernel: martian source 192.168.0.10 from 0.0.0.0, on dev eth0Aug 31 13:56:18 lan kernel: martian source 192.168.0.10 from 0.0.0.0, on dev eth0

Intentando detener un ataque DDoS http://foro.elhacker.net/tutoriales_documentacion/intentando_detener_...

8 de 23 2/18/2013 9:32 AM

Page 9: Intentando Detener Un Ataque DDoS

Aug 31 13:59:54 lan kernel: martian source 192.168.0.10 from 0.0.0.0, on dev eth0Aug 31 14:13:32 lan kernel: martian source 192.168.0.10 from 0.0.0.0, on dev eth0Aug 31 14:38:08 lan kernel: martian source 192.168.0.10 from 0.0.0.0, on dev eth0Aug 31 14:43:42 lan kernel: martian source 192.168.0.10 from 0.0.0.0, on dev eth0Aug 31 14:50:05 lan kernel: martian source 192.168.0.10 from 0.0.0.0, on dev eth0Aug 31 14:51:05 lan kernel: martian source 192.168.0.10 from 0.0.0.0, on dev eth0Aug 31 14:57:58 lan kernel: martian source 192.168.0.10 from 0.0.0.0, on dev eth0Aug 31 15:05:27 lan kernel: martian source 192.168.0.10 from 0.0.0.0, on dev eth0Aug 31 15:06:14 lan kernel: martian source 192.168.0.10 from 0.0.0.0, on dev eth0Aug 31 15:09:08 lan kernel: martian source 192.168.0.10 from 0.0.0.0, on dev eth0

Son paquetes inesperados que llegan por un camino por el cual no pueden llegarindica algún problema de audacia (cracker).

Usando paquetes como éstos se pueden atacar vulnerabilidades remotas en stacksTCP/IP

5) Mirando las gráficas del MRTG, RRDtoolSi ves que el tráfico inbound sube hasta los 100mbps es que te están doseandohehehe.

Intentando detener un ataque DDoS http://foro.elhacker.net/tutoriales_documentacion/intentando_detener_...

9 de 23 2/18/2013 9:32 AM

Page 10: Intentando Detener Un Ataque DDoS

B) Intentar parar elataque1) - mod_evasiveWeb Oficial:http://www.nuclearelephant.com/projects/mod_evasive/

Consideramos que 50 conexiones por segundo a 2 páginas es suficiente motivocomo para bloquear esa ip:

Código:<IfModule mod_evasive.c> DOSHashTableSize 3097 DOSPageCount 2 DOSSiteCount 50 DOSPageInterval 1 DOSSiteInterval 1 DOSBlockingPeriod 900</IfModule>

Igual que el anterior pero con 50 peticiones en un segundo a 1 sola página:

Código:<IfModule mod_evasive.c> DOSHashTableSize 3097 DOSPageCount 1 DOSSiteCount 50 DOSPageInterval 1 DOSSiteInterval 1</IfModule>

Si queremos bloquear las ips que floodean, podemos usar el iptables:

DOSSystemCommand "sudo -u root -c '/sbin/iptables -A INPUT -s %s -j DROP"

Recordar mirar el syslog por si hay posibles falsos positivos (ip's que no hacianflood).

Para evitar falsos positivos:

Intentando detener un ataque DDoS http://foro.elhacker.net/tutoriales_documentacion/intentando_detener_...

10 de 23 2/18/2013 9:32 AM

Page 11: Intentando Detener Un Ataque DDoS

Código:<IfModule mod_evasive.c># añadir estas líneas que corresponden a rangos de los bots de googleDOSWhitelist 66.249.65.*DOSWhitelist 66.249.66.*</IfModule>

Importante:

Para que el mod_evasive funcione correctamente deberás modificar el:

CitarMaxRequestsPerChild 0

Para poner un valor alto pero nunca ilimitado (0).

CitarMaxRequestsPerChild 10000

Config ejemplo:http://www.eth0.us/mod_evasive

2 - mod_security El único problema del mod_security es que necesitamos al menos un argumentopara detectar el ataque.

En el ejemplo usamos en http_referer y el User Agent para detectar el DDoS:

Bloqueando un ataque Iframehttp://foro.elhacker.net/seguridad/bloqueando_un_ataque_iframe-t127481.0.html

3- tcplimit, ipdrop, ipblockUsando firewalls dinámicos.

4- Optimizando y asegurando la red con el sysctl.confcat /proc/sys/net/ipv4/tcp_syncookies

# Enable IP spoofing protection, turn on Source Address Verification

net.ipv4.conf.all.rp_filter = 1

# Enable TCP SYN Cookie Protection

net.ipv4.tcp_syncookies = 1

# Enable ignoring broadcasts request net.ipv4.icmp_echo_ignore_broadcasts = 1

1). Activate SynCookies protection

It works by sending out 'syncookies' when the syn backlog queue of a socket overflows.

=> echo 1 >/proc/sys/net/ipv4/tcp_syncookies

or

Intentando detener un ataque DDoS http://foro.elhacker.net/tutoriales_documentacion/intentando_detener_...

11 de 23 2/18/2013 9:32 AM

Page 12: Intentando Detener Un Ataque DDoS

=> /sbin/sysctl -w net.ipv4.tcp_syncookies=1

2). Disable source routing

=> for f in /proc/sys/net/ipv4/conf/*/accept_source_route; do echo 0 > $f done

or

=> /sbin/sysctl -w net.ipv4.conf.all.accept_source_route=0

3). Reverse Path Filtering

Reject incoming packets if their source address doesn't match the network interface that they're arriving on

=> for f in /proc/sys/net/ipv4/conf/*/rp_filter; do echo 1 > $f done

or

=> /sbin/systcl -w net.ipv4.conf.all.rp_filter=1

4). Log RP filter dropped packets (martians)

=> for f in /proc/sys/net/ipv4/conf/*/log_martians; do echo 1 > $f done

or

=> /sbin/sysctl -w net.ipv4.conf.all.log_martians=1

5). Maximal number of remembered connection requests

=> /sbin/sysctl -w net.ipv4.tcp_max_syn_backlog=256

6). How may times to retry before killing TCP connection

(default 7 on most systems)

=> /sbin/sysctl -w net.ipv4.tcp_orphan_retries=4

7). Number of SYN packets the kernel will send before giving up

=> /sbin/sysctl -w net.ipv4.tcp_syn_retries=5

8). Disable broadcast icmp reply

=> /sbin/sysctl -w net.ipv4.icmp_echo_ignore_broadcasts=1

9). Ignore Bogus icmp packets

=> /sbin/sysctl -w net.ipv4.icmp_ignore_bogus_error_responses=1

10). Disable ICMP redirect

=> echo 0 >/proc/sys/net/ipv4/conf/all/accept_redirects => echo 0 >/proc/sys/net/ipv4/conf/all/send_redirects

or

=> /sbin/sysctl -w net.ipv4.conf.all.accept_redirects=0

Intentando detener un ataque DDoS http://foro.elhacker.net/tutoriales_documentacion/intentando_detener_...

12 de 23 2/18/2013 9:32 AM

Page 13: Intentando Detener Un Ataque DDoS

=> /sbin/sysctl -w net.ipv4.conf.all.send_redirects=0

11). Disable timestamps

=> echo 0 >/proc/sys/net/ipv4/tcp_timestamps

or

=> /sbin/sysctl -w net.ipv4.tcp_timestamps=0

12). Reduce DOS ability by reducing timeouts

=> echo 30 >/proc/sys/net/ipv4/tcp_fin_timeout => echo 1800 >/proc/sys/net/ipv4/tcp_keepalive_time => echo 0 >/proc/sys/net/ipv4/tcp_window_scaling => echo 0 >/proc/sys/net/ipv4/tcp_sack

or

=> /sbin/sysctl -w net.ipv4.tcp_fin_timeout=30 => /sbin/sysctl -w net.ipv4.tcp_keepalive_time=1800 => /sbin/sysctl -w net.ipv4.tcp_window_scaling=0 => /sbin/sysctl -w net.ipv4.tcp_sack=0

- Lista de todas las variables del TCP: (Lista de Variables del /proc/sys/net/ipv4/*(con varlores por defecto y explicaciones))http://www.frozentux.net/ipsysctl-tutorial/ipsysctl-tutorial.html

- Optimizando el kernel de linux mediante tuning y hardering sysctl.confhttp://wiki.elhacker.net/sistemas-operativos/gnulinux/tuning-sysctl-conf

- Opciones de seguridad en Linux a través de /proc (I) y (II)http://www.elhacker.net/opciones-seguridad-linux-proc.html

Más ejemplos de configuración completa del sysctl.conf en las referencias deldocumento.

5- APF Firewall con el móduloanti-ddosCódigo:wget http://www.rfxnetworks.com/downloads/apf-current.tar.gztar xvzf apf-current.tar.gzcd apf-0.9.6-1/./install.sh

service apf start/usr/local/sbin/apf -s

Fichero de configuración:

Citar/etc/apf/conf.apf

Despues de hacer las pruebas dejar:DEVEL_MODE="0"

Si nos sale un error parecido a este:apf(9413): unable to load iptables module (ip_tables), aborting.

Cambiamos esto:SET_MONOKERN="1"

Intentando detener un ataque DDoS http://foro.elhacker.net/tutoriales_documentacion/intentando_detener_...

13 de 23 2/18/2013 9:32 AM

Page 14: Intentando Detener Un Ataque DDoS

Puertos que queremos abrir (inbound)IG_TCP_CPORTS="21,22,25,53,80,110"

Si queres bloquear todo el tráfico de salida lo ponemos en 1 (outbound)EGF="0"

Si queremos usar el módulo antddos poner a 1:USE_AD="0"

Log:/var/log/apf_log

Para ver los paquetes que dropeamos:LOG_DROP="1"

Lo guardará en el syslog, ejemplo:

Proto= ProtocoloSRC= ip origenSPT= Source Port (puerto d origen)DST= Destination Port (puerto destino)

CitarOct 20 13:59:27 ns2 kernel: ** SANITY ** IN=eth0 OUT= SRC=213.27.201.254DST=192.168.0.3 LEN=40 TOS=0x00 PREC=0x00 TTL=54 ID=18779 PROTO=TCPSPT=11629 DPT=80 WINDOW=0 RES=0x00 RST FIN URGP=0Oct 20 14:00:16 ns2 kernel: ** SANITY ** IN=eth0 OUT= SRC=213.27.201.254DST=192.168.0.3 LEN=40 TOS=0x00 PREC=0x00 TTL=54 ID=20376 PROTO=TCPSPT=27734 DPT=80 WINDOW=0 RES=0x00 RST FIN URGP=0Oct 20 14:00:17 ns2 kernel: ** SANITY ** IN=eth0 OUT= SRC=213.27.201.254DST=192.168.0.3 LEN=40 TOS=0x00 PREC=0x00 TTL=54 ID=20382 PROTO=TCPSPT=25943 DPT=80 WINDOW=0 RES=0x00 RST FIN URGP=0Oct 20 14:00:17 ns2 kernel: ** SANITY ** IN=eth0 OUT= SRC=213.27.201.254DST=192.168.0.3 LEN=40 TOS=0x00 PREC=0x00 TTL=54 ID=20387 PROTO=TCPSPT=19026 DPT=80 WINDOW=0 RES=0x00 RST FIN URGP=0Oct 20 14:00:17 ns2 kernel: ** SANITY ** IN=eth0 OUT= SRC=213.27.201.254DST=192.168.0.3 LEN=40 TOS=0x00 PREC=0x00 TTL=54 ID=20397 PROTO=TCPSPT=2155 DPT=80 WINDOW=0 RES=0x00 RST FIN URGP=0Oct 20 14:00:17 ns2 kernel: ** SANITY ** IN=eth0 OUT= SRC=213.27.201.254DST=192.168.0.3 LEN=40 TOS=0x00 PREC=0x00 TTL=54 ID=20407 PROTO=TCPSPT=9294 DPT=80 WINDOW=0 RES=0x00 RST FIN URGP=0Oct 20 14:00:22 ns2 kernel: ** SANITY ** IN=eth0 OUT= SRC=213.27.201.254DST=192.168.0.3 LEN=40 TOS=0x00 PREC=0x00 TTL=54 ID=20687 PROTO=TCPSPT=9269 DPT=80 WINDOW=0 RES=0x00 RST FIN URGP=0Oct 20 14:00:22 ns2 kernel: ** SANITY ** IN=eth0 OUT= SRC=213.27.201.254DST=192.168.0.3 LEN=40 TOS=0x00 PREC=0x00 TTL=54 ID=20694 PROTO=TCPSPT=27223 DPT=80 WINDOW=0 RES=0x00 RST FIN URGP=0Oct 20 14:00:23 ns2 kernel: ** SANITY ** IN=eth0 OUT= SRC=213.27.201.254DST=192.168.0.3 LEN=40 TOS=0x00 PREC=0x00 TTL=54 ID=20830 PROTO=TCPSPT=30938 DPT=80 WINDOW=0 RES=0x00 RST FIN URGP=0Oct 20 14:00:25 ns2 kernel: ** SANITY ** IN=eth0 OUT= SRC=213.27.201.254DST=192.168.0.3 LEN=40 TOS=0x00 PREC=0x00 TTL=54 ID=21038 PROTO=TCPSPT=5377 DPT=80 WINDOW=0 RES=0x00 RST FIN URGP=0Oct 20 14:00:27 ns2 kernel: ** SANITY ** IN=eth0 OUT= SRC=213.27.201.254DST=192.168.0.3 LEN=40 TOS=0x00 PREC=0x00 TTL=54 ID=21219 PROTO=TCPSPT=13341 DPT=80 WINDOW=0 RES=0x00 RST FIN URGP=0Oct 20 14:00:42 ns2 kernel: ** SANITY ** IN=eth0 OUT= SRC=213.27.201.254DST=192.168.0.3 LEN=40 TOS=0x00 PREC=0x00 TTL=54 ID=21990 PROTO=TCPSPT=22960 DPT=80 WINDOW=0 RES=0x00 RST FIN URGP=0Oct 20 14:02:32 ns2 kernel: ** SANITY ** IN=eth0 OUT= SRC=213.27.201.254DST=192.168.0.3 LEN=40 TOS=0x00 PREC=0x00 TTL=54 ID=26386 PROTO=TCPSPT=2826 DPT=80 WINDOW=0 RES=0x00 RST FIN URGP=0

Recuerda que para usar el antidos debes añadir el cron job:

*/8 * * * * root /etc/apf/ad/antidos -a >> /dev/null 2>&1

http://www.r-fx.org/apf/README.antidos

Intentando detener un ataque DDoS http://foro.elhacker.net/tutoriales_documentacion/intentando_detener_...

14 de 23 2/18/2013 9:32 AM

Page 15: Intentando Detener Un Ataque DDoS

KISS My Firewall es una alternativa.

Script PHPhttp://www.prism-hosting.com/AntiDoS

6- Parar el botnetZmbScap - Zombie Scapper - Stoopt DDoS Programshttp://www.metaeye.org/projects/zmbscap/

Tracking Botnets - Bot-Commandshttp://www.honeynet.org/papers/bots/botnet-commands.html

Tracking Botnetshttp://www.honeynet.org/papers/bots/

Tracking Botnets - DDoS-attackshttp://www.honeynet.org/papers/bots/botnet-ddos.html

Phatbot Trojan Analysishttp://www.lurhq.com/phatbot.html

F-Bot by f-secure- Elimina el Agobot y todas sus varianteshttp://www.f-secure.com/tools/f-bot.zip

Nepenthes - Autoinfecarse sin peligro para analizarhttp://nepenthes.mwcollect.org/

honeytrap – trap attacks against tcp serviceshttp://honeytrap.sourceforge.net/

7- Usando reglas del iptablesCódigo:# todo el trafico syn-P INPUT DROP-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT-A INPUT -p tcp ! --syn -j REJECT --reject-with tcp-reset-A INPUT -m state --state INVALID -j DROP-P OUTPUT DROP-A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT-A OUTPUT -p tcp ! --syn -j REJECT --reject-with tcp-reset-A OUTPUT -m state --state INVALID -j DROP-P FORWARD DROP-A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT-A FORWARD -p tcp ! --syn -j REJECT --reject-with tcp-reset-A FORWARD -m state --state INVALID -j DROP-A INPUT -i lo -j ACCEPT-A OUTPUT -o lo -j ACCEPT-A FORWARD -i lo -o lo -j ACCEPT

# sube las cargas pero muchos wwww buena señal-A INPUT -p tcp --syn -j REJECT --reject-with icmp-port-unreachable

# la que mejor va-N syn-flood-A syn-flood -m limit --limit 100/second --limit-burst 150 -j RETURN-A syn-flood -j LOG --log-prefix "SYN flood: "-A syn-flood -j DROP

# igual que el de arriba pero muy bestia

Intentando detener un ataque DDoS http://foro.elhacker.net/tutoriales_documentacion/intentando_detener_...

15 de 23 2/18/2013 9:32 AM

Page 16: Intentando Detener Un Ataque DDoS

-N syn-flood-A INPUT -i eth0:2 -p tcp --syn -j syn-flood-A syn-flood -m limit --limit 1/s --limit-burst 4 -j RETURN-A syn-flood -j DROP

-A INPUT -p tcp -m tcp --tcp-flags SYN,RST,ACK SYN -m limit --limit1/sec -j ACCEPT-A INPUT -p tcp -m tcp --tcp-flags FIN,SYN,RST,ACK RST -m limit--limit 1/sec -j ACCEPT

# no es muy efectivo-A INPUT -s 0/0 -p tcp --syn --source-port 1000:5000--destination-port 80 -j DROP

# no es muy efectivo-A INPUT -p tcp -m tcp --dport 80 --sport 1000:5000 --tcp-flags SYN SYN -j DROP

# Descartar paquetes mal formados

-N PKT_FAKE-A PKT_FAKE -m state --state INVALID -j DROP-A PKT_FAKE -p tcp --dport 80 --tcp-flags ALL ACK,RST,SYN,FIN -j DROP-A PKT_FAKE -p tcp --dport 80 --tcp-flags SYN,FIN SYN,FIN -j DROP-A PKT_FAKE -p tcp --dport 80 --tcp-flags SYN,RST SYN,RST -j DROP-A PKT_FAKE -p tcp --dport 80 ! --syn -m state --state NEW -j DROP-A PKT_FAKE -f -j DROP-A PKT_FAKE -j RETURN

# syn-flood-N syn-flood-A INPUT -i eth+ -p tcp --tcp-flags SYN,ACK,FIN,RST RST -j syn-flood-A FORWARD -i eth+ -p tcp --tcp-flags SYN,ACK,FIN,RST RST -j syn-flood-A syn-flood -m limit --limit 4/s --limit-burst 16 -j RETURN-A syn-flood -m limit --limit 75/s --limit-burst 100 -j RETURN-A syn-flood -j LOG --log-prefix "SYN FLOOD " --log-tcp-sequence --log-tcp-options -A syn-flood -j DROP

# By pepel. Requiere módulo "recent"-A INPUT -p tcp --dport 80 -m state --state NEW -m recent --set-A INPUT -p tcp --dport 80 -m state --state NEW -m recent --update --seconds 10 --hi

#explicación:Se añade cada ip que se conecte a la tabla de recentPor por cada ip en la tabla de recent si hace mas de x hits en x segundos, se dropea.

iptables -I INPUT -p tcp –syn -m recent –setiptables -I INPUT -p tcp –syn -m recent –update –seconds 10 –hitcount 30 -j DROP

UDP Flood

/sbin/iptables -A OUTPUT -p udp -m state --state NEW -j ACCEPT/sbin/iptables -A OUTPUT -p udp -m limit --limit 100/s -j ACCEPT/sbin/iptables -A OUTPUT -p udp -j DROP

Lo que hace es contar el número de paquetes SYN (inicio de conexión TCP) para cada dirección IP en los últimos 10 segundos. Si llega a 30 descarta ese paquete por lo que no se establecerá la conexión (el TCP volverá a intentar varias veces, cuando baje del límite podrá establecerse).

8- Usando el mod_throttlehttp://www.snert.com/Software/mod_throttle/

Otros:

Mod_Throttle, mod_bandwidth, mod_iplimit, mod_tsunami, mod_limitipconn.c

Intentando detener un ataque DDoS http://foro.elhacker.net/tutoriales_documentacion/intentando_detener_...

16 de 23 2/18/2013 9:32 AM

Page 17: Intentando Detener Un Ataque DDoS

Para Apache 2: mod_cband

Código:cd /usr/srcwget http://www.snert.com/Software/mod_throttle/mod_throttle312.tgztar zxvf mod_throttle312.tgzcd mod_throttle-3.1.2pico MakefileThen edit the line that reads:APXS=apxsAnd change it to read:APXS=/usr/local/apache/bin/apxsmakemake installservice httpd restart

Citar<IfModule mod_throttle.c>ThrottlePolicy Volume 10G 30d</IfModule><Location /throttle-me>SetHandler throttle-me</Location>

http://www.webhostgear.com/160.html

C) Referencias- Opciones de seguridad en Linux a través de /proc (I) y (II) http://www.elhacker.net/opciones-seguridad-linux-proc.html

- Syctl.conf Hardening http://www.eth0.us/sysctl

- Ipsysctl tutorial 1.0.4http://ipsysctl-tutorial.frozentux.net/ipsysctl-tutorial.html

- Hardening the TCP/IP stack to SYN attackshttp://www.securityfocus.com/infocus/1729

- DDOS and SYN_Recv Attacks And some SOlutionshttp://www.vbulletin.com/forum/showthread.php?t=126699

- Distributed Reflection Denial of Servicehttp://www.grc.com/dos/drdos.htm

- Dynamic iptables firewallshttp://www-128.ibm.com/developerworks/library/l-fw/

- Preventing DDoS Attackshttp://www.linuxsecurity.com/content/view/121960/49/

- Distributed Denial of Service (DDoS) Attacks/toolshttp://staff.washington.edu/dittrich/misc/ddos/

- Linux firewall rulesets and snippets of rule setshttp://www.gotroot.com/tiki-index.php?page=Linux%20Firewall%20rules

Intentando detener un ataque DDoS http://foro.elhacker.net/tutoriales_documentacion/intentando_detener_...

17 de 23 2/18/2013 9:32 AM

Page 18: Intentando Detener Un Ataque DDoS

« Última modificación: 29 Marzo 2012,17:47 por el-brujo » En línea

"Mis defensas desayunan elhacker.NET con mil trillones de Lactobacillus casei"

"elhacker.NET es único, por eso no fabrica para otras marcas"

Codename!!

Desconectado

Mensajes: 881

Re: Intentando detener un DDoS« Respuesta #1 en: 25 Agosto 2006, 19:49 »

OOooh Yeahh, muy buen trabajo, date por seguro que te pitaran los oidos, enconcreto el derecho, porke te alabaran XD, enserio muy bueno, gracias.

En línea

No te dejes mover por las masas, se tu mismo.

- n0sEcReT -

Desconectado

Mensajes: 283

Impossible isnothing

Re: Intentando detener un DDoS« Respuesta #2 en: 25 Agosto 2006, 20:43 »

Epa! Brujo , las experiencias siempre nos dejan algo que aprender ..no ? Muy buen

tutorial brother

Salu2!

En línea

AdWords: marketing onlinegoogle.com/AdWords

Paga únicamente por resultados. ¡Crea una cuenta de AdWords ahora!

Intercambio Estudiantil Curso académico con EF en USA Inglaterra, Canadá, Irlanda www.ef.com.ec

Localizador Más Popular Ahora disponible en Ecuador! Garantia 2 años.Compre o distribuya www.tramigo.net

Olimpia Líderes en Seguridad MFT, Cifrado, Firma Digital, SOC www.olimpiait.com

Intentando detener un ataque DDoS http://foro.elhacker.net/tutoriales_documentacion/intentando_detener_...

18 de 23 2/18/2013 9:32 AM

Page 19: Intentando Detener Un Ataque DDoS

Neobius

Desconectado

Mensajes:2.080

Viva Linux!

Re: Intentando detener un DDoS« Respuesta #3 en: 26 Agosto 2006, 20:35 »

Magnifico tutorial, felicidades brujo.

PD: Acaba de salir en portada de meneame

En línea

Todos somos muy ignorantes, lo que ocurre es que no todos ignoramos lo mismo.Albert Einstein

Recuerda: El arca de Noe fue construida por aficionados, el titanic porprofesionales

http://neobius.blogspot.com

Division-x

Desconectado

Mensajes:1.356

No lo fuerce,comprese unmartillo masgrande

Re: Intentando detener un DDoS« Respuesta #4 en: 27 Agosto 2006, 03:38 »

el p**o amo........

Pd: muchisimas gracis por este aporte, lo agrego a favoritos......

En línea

дٳŦ٭GNU/LinuxInfrastructureSpecialistEx-Staff

Desconectado

Mensajes:5.097

Re: Intentando detener un DDoS« Respuesta #5 en: 27 Agosto 2006, 12:22 »

Excelente guia pero creo que donde se tiene que enfocar mucho es en firewall,claro, el mod_evasive es una maravilla pero siempre es mejor tener a los dos denuestro lado xD

Saludos y felicitaciones

En línea

Con sangre andaluza

Intentando detener un ataque DDoS http://foro.elhacker.net/tutoriales_documentacion/intentando_detener_...

19 de 23 2/18/2013 9:32 AM

Page 20: Intentando Detener Un Ataque DDoS

dxrColaborador

Desconectado

Mensajes:2.995

Re: Intentando detener un DDoS« Respuesta #6 en: 27 Agosto 2006, 15:33 »

Es un buen tutorial. Pero hay que seguir trabajando buscando soluciones a atakesalternativos. Esta defensa esta orientada a atakes via HTTP y TCP.

Seguro que en un tiempo se seguiran publicando documentacion para parar estetipo de atakes sobre distintos protocolos.

Enorabuena Alex.

En línea

Hacer preguntas concretas, claras y aportando toda la documentaciónnecesaria.

De lo contrario, no tendreis una respuesta clara.

XpyXt

Desconectado

Mensajes: 36

Re: Intentando detener un DDoS« Respuesta #7 en: 28 Agosto 2006, 07:55 »

Texto magnifico Venga tio a seguir asi.

Saludos

En línea

icisnerosGNU/LinuxEx-Staff

Desconectado

Mensajes:1.296

Re: Intentando detener un DDoS« Respuesta #8 en: 28 Agosto 2006, 14:48 »

Portada de barrapunto

Enhorabuena!

Saludos!!

En línea

Vender Pagina WebEl Libro Gordo de Petete

Sagman

Desconectado

Mensajes:2.854

Más linuxeroque nunca :D

Re: Intentando detener un DDoS« Respuesta #9 en: 28 Agosto 2006, 17:43 »

Muy buen manual Alex

En línea

Mi blog

Intentando detener un ataque DDoS http://foro.elhacker.net/tutoriales_documentacion/intentando_detener_...

20 de 23 2/18/2013 9:32 AM

Page 21: Intentando Detener Un Ataque DDoS

o2T7f6j2echo -e "Nosvemos en\n$(pwd)"

Desconectado

Mensajes:2.781

./configure--enable-levitation--enable-diamagnet

Re: Intentando detener un DDoS« Respuesta #10 en: 29 Agosto 2006, 01:09 »

Los frutos del caldo de cultivo. Muy bueno.

Trataré de seguirlo para adaptarlo a "packet filter"

Salu2

« Última modificación: 29 Agosto 2006,01:45 por o2T7f6j2 » En línea

No debemos perder la fe en la humanidad que es como elocéano: no se ensucia porque algunas de sus gotas esténsucias.Mahatma Gandhi (2 de Octubre del 1869 - 30 de Enero del 1948)

Azielitono esCoAdmin

Desconectado

Mensajes:9.153

>.<

Re: Intentando detener un DDoS« Respuesta #11 en: 30 Agosto 2006, 00:09 »

no lo habia leido >.< esta muy buenno, felicidades el-brujo yo creo que gracias a

que te atacan el server aprendes todo eso

En línea

Ejemplo deCómo pronunciar

дٳŦ٭GNU/LinuxInfrastructureSpecialistEx-Staff

Desconectado

Mensajes:

Re: Intentando detener un DDoS« Respuesta #12 en: 30 Agosto 2006, 04:18 »

Wenas

Cita de: el-brujo en 25 Agosto 2006, 11:12

5- APF Firewall con el módulo

Intentando detener un ataque DDoS http://foro.elhacker.net/tutoriales_documentacion/intentando_detener_...

21 de 23 2/18/2013 9:32 AM

Page 22: Intentando Detener Un Ataque DDoS

5.097

anti-ddos*/8 * * * * root /etc/apf/ad/antidos -a >> /dev/null 2>&1

KISS My Firewall es una alternativa.

Aquí dejo un excelente "how to" para el KISS:

KISS My Firewallhttp://www.geocities.com/steve93138/

También hay alternativas para Windows, el Kapersky anti-hacker es efectivocuando nos hacen un DoS, en los dDos nunca he tenido la oportunidad de verlo enacción. Ah, también banea la ip cuando te hacen un scan de puertos a la Ip.

Saludos

En línea

Con sangre andaluza

Hyde

Desconectado

Mensajes: 451

"El miedo es elcamino masrapido a lamuerte"

Re: Intentando detener un DDoS« Respuesta #13 en: 12 Septiembre 2006, 06:38 »

Parece que el-jefe sabe mas de lo que creemos jejeje enhorabuena Alex eres unode los grandes compañero

Salu2

Hyde

En línea

-[ §@NTTI ]-

Desconectado

Mensajes: 10

-[ §@NTTI ]-Dice VivaCHILE MIER..!

Re: Intentando detener un DDoS« Respuesta #14 en: 14 Septiembre 2006, 18:27 »

Excelente amigo, muuuy bien.... Cada dia mas...

SANTTI... DESDE CHILE...

En línea

Liberen a Kevin es el unico maestro del HaCkVISITEN http://orbita.starmedia.com/~dj_santtiy http://hack.santti.net

Intentando detener un ataque DDoS http://foro.elhacker.net/tutoriales_documentacion/intentando_detener_...

22 de 23 2/18/2013 9:32 AM

Page 23: Intentando Detener Un Ataque DDoS

Páginas: [1] 2 3

Ir a: => Tutoriales - Documentación ir

Mensajes similares

Asunto Iniciado por Respuestas Vistas Último mensaje

Cayo_twitter_Popularidad, causa delataque a Twitter_ Ataque DDoS.Foro Libre

ALEX_21_3 0 6387 Agosto 2009,10:49por ALEX_21_3

Google ayudó a Twitter a detener losataques de DDoSNoticias

Novlucker 1 98614 Agosto 2009,02:02por Lunfardo

Ataque DDoS a WordPress :WordPress sufre el mayor ataqueDDoSNoticias

wolfbcn 0 1,4644 Marzo 2011,13:17por wolfbcn

Cómo detener un ataque a una web.Hacking Avanzado

Kawahal 4 1,21112 Diciembre 2011,15:19por Kawahal

Ayuda detener un ataque DDosSeguridad

doxen 1 1,14627 Febrero 2012,09:14por xeon_57

elotrolado lawebdegoku MundoDivx Hispabyte Truzone

ZonaPhotoshop Yashira.org indetectables.net SeguridadColombia Indejuegos

SeguridadInformática Juegos de Mario Internet móvil Noticias

Informatica ADSL

eNYe Sec Seguridad Wireless UndergroundMéxico Soluciones Web ejemplos

de

El Lado del Mal Blog AdministradorSistemas Blog Uxio thehackerway Tienda Wifi

Todas las webs afiliadas están libres de publicidad engañosa.

Powered by SMF 1.1.18 | SMF © 2006-2008, Simple Machines

Intentando detener un ataque DDoS http://foro.elhacker.net/tutoriales_documentacion/intentando_detener_...

23 de 23 2/18/2013 9:32 AM