Código fuente de Rainbow DDOS
Definitivamente puede evitar que DDOS dirigido al puerto legendario o WEB sea atacado por alrededor de 400.000 paquetes de datos.
Configúrelo para proteger su puerto legendario, como 80.7000.7100.7200.
Luego modifique o agregue los siguientes valores según el registro compilado a continuación.
Tenga en cuenta que las siguientes configuraciones de seguridad se modifican a través del registro. El rendimiento de esta configuración depende de la configuración del servidor, especialmente de la potencia de procesamiento de la CPU. Si la configuración de seguridad es la siguiente y se utiliza una configuración de servidor dual Xeon 2.4G, puede resistir ataques de aproximadamente 10,000 paquetes después de las pruebas.
Entonces podrás sentarte y relajarte.
Por parte de DDOS, podemos descubrir métodos de ataque relacionados, como atacar un puerto principal, o de qué puerto proviene principalmente la otra parte, la IP de la otra parte, etc. Utilice el comando de DOS netstat -an|more o el software integral de análisis de red: sniff. De esta forma podemos utilizar herramientas propias de w2k como el acceso y enrutamiento remoto o las políticas de IP para solucionar estos ataques. Como no podemos usarlos para encontrar datos relevantes, también podemos intentar prevenir ataques DDOS configurando la seguridad del servidor.
[HKEY _ LOCAL _ MACHINE \ SYSTEM \ current control set \ Services \ Tcpip \ Parameters]
Desactiva la comprobación de puertas de enlace no válidas. Cuando se configuran varias puertas de enlace en el servidor, el sistema intentará conectarse cuando la red no sea fluida.
La segunda puerta de enlace se puede apagar para optimizar la red.
" EnableDeadGWDetect " = dword: 00000000
Deshabilita la respuesta a mensajes de redireccionamiento ICMP. Dichos mensajes pueden usarse en ataques, por lo que los sistemas deben negarse a aceptar mensajes de redireccionamiento ICMP.
" EnableICMPRedirects " = dword: 00000000
No se permite la publicación de nombres NETBIOS. Un atacante puede impedir que el servidor responda cuando se le solicita que consulte el nombre NETBIOS del servidor.
Tenga en cuenta que el sistema debe tener instalado SP2 o superior.
" nonameleaseondemand " = dword: 0000001
Enviar paquetes de mantenimiento de autenticación. Esta opción determina cuánto tiempo debe esperar TCP para determinar si la conexión actual todavía está conectada.
Si no se establece este valor, el sistema comprobará si TCP tiene una conexión inactiva cada 2 horas. El tiempo de configuración aquí es de 5 minutos.
" KeepAliveTime"=dword:000493e0
No hay detección de ruta para la longitud máxima del paquete. Cuando el valor de este elemento es 1, se detectará automáticamente el tamaño del paquete de datos que se puede transmitir.
Se puede utilizar para mejorar la eficiencia de la transmisión, por ejemplo, por fallas o razones de seguridad, estableciendo el valor del elemento en 0, lo que significa usar un valor de MTU fijo de 576 bytes.
" EnablePMTUDiscovery " = dword: 00000000
Habilita la protección contra ataques de sincronización. El valor predeterminado del elemento es 0, lo que significa que la protección contra ataques no está habilitada, y los valores del elemento son 1 y 2, lo que significa que la protección contra ataques de sincronización está habilitada. Después de establecerlo en 2,
el nivel de seguridad es mayor y las circunstancias bajo las cuales se considera un ataque deben basarse en los siguientes valores de TcpMaxHalfOpen y TcpMaxHalfOpenRetried.
Establece las condiciones que desencadenan el inicio. Cabe señalar aquí que NT4.0 debe configurarse en 1, lo que hará que el sistema se reinicie con un paquete de datos especial.
" SynAttackProtect " = dword: 00000002
El número de semiconexiones que se pueden abrir al mismo tiempo. La llamada semiconexión significa que la sesión TCP no está completamente establecida. Puede usar el comando netstat para ver que está en el estado SYN_RCVD.
Sí. Aquí se utilizan los valores recomendados de Microsoft, con el servidor configurado en 100 y el servidor avanzado configurado en 500. Se recomienda configurarlo más pequeño.
" TcpMaxHalfOpen"=dword: 00000064
Determina si existe un punto desencadenante para el ataque. Los valores recomendados utilizados aquí son 80 de Microsoft para servidor y 400 para servidor avanzado.
" TcpMaxHalfOpenRetried " = dword: 00000050
Establezca el tiempo de espera para SYN-ACK. El valor predeterminado es 3 y este proceso tarda 45 segundos de forma predeterminada. El valor del artículo es 2 y el tiempo de consumo es de 21 segundos.
El objeto vale 1 y tarda 9 segundos. El valor más bajo se puede establecer en 0, lo que significa que debe esperar 3 segundos. Este valor se puede modificar dependiendo del tamaño del ataque.
La recomendación de seguridad del sitio de Microsoft es 2.
" tcpmaxconnectresponseretranssmiths" = dword: 0000001
Establezca el número de veces que TCP redistribuye segmentos de datos. El valor predeterminado es 5 y este proceso tarda 240 segundos de forma predeterminada. La recomendación de seguridad del sitio de Microsoft es 3.
" TcpMaxDataRetransmissions " = dword: 00000003
Establezca el punto crítico para la protección contra ataques de sincronización. Cuando el trabajo pendiente disponible llega a 0, este parámetro se utiliza para controlar la apertura de la recomendación de seguridad 5 del sitio de Microsoft.
" TCPMaxPortsExhausted " = dword: 00000005
El enrutamiento de origen IP está prohibido. El valor de entrada predeterminado es 1, lo que significa que los paquetes enrutados de origen no se reenviarán. El valor de entrada se establece en 0, lo que significa que se reenvían todos los paquetes, y en 2, lo que significa que se descartan todos los paquetes aceptados.
El paquete de enrutamiento de origen recomendado para la seguridad del sitio de Microsoft es el 2.
" DisableIPSourceRouting " = dword: 0000002
Limita el tiempo máximo en el estado TIME_WAIT. El valor predeterminado es 240 segundos, el valor mínimo es 30 segundos y el valor máximo es 300 segundos. Se recomienda configurarlo en 30 segundos.
" TcpTimedWaitDelay " = dword: 0000001e
[HKEY_LOCAL_MACHINE\SYSTEM\current control set\Services\NetBT\Parameters]
Agregar bloques de conexión NetBT aumenta el rango. El valor predeterminado es 3 y el rango es 1-20. Cuanto mayor sea el valor, más conexiones habrá para mejorar el rendimiento. Cada bloque de conexión consume 87 bytes.
" BacklogIncrement " = dword: 00000003
El número máximo de conexiones NetBT. El rango es 1-40000, aquí está configurado en 1000. Cuanto mayor sea el valor, más conexiones se permitirán.
" maxconnbock " = dword: 000003 E8
[HKEY_LOCAL_MACHINE\SYSTEM\current control set\Services\Afd\Parameters]
Registro dinámico de actividad de configuración.
Para sistemas con redes ocupadas o sistemas que son vulnerables a ataques SYN, se recomienda configurarlo en 1, lo que permite un retraso dinámico.
" EnableDynamicBacklog " = dword: 0000001
Configurar el backlog dinámico mínimo. El valor predeterminado es 0, que representa el número mínimo de conexiones inactivas asignadas por el trabajo pendiente dinámico. Cuando el número de conexiones inactivas
es inferior a este número, las conexiones libres se asignarán automáticamente. El valor predeterminado es 0 y se recomienda establecerlo en 20 para sistemas con redes ocupadas o sistemas que son vulnerables a ataques SYN.
"MinimumDynamicBacklog" = dword: 0000014
Máximo trabajo pendiente dinámico. Indica el número máximo definido de conexiones "cuasi", que depende principalmente del tamaño de la memoria. Teóricamente, el número máximo de conexiones "cuasi" es 32 M.
Agregue 5000, aquí establecido en 20000.
"backlog dinámico máximo" = dword: 00002 e20
Se agregan datos de conexión gratuitos cada vez. El valor predeterminado es 5, lo que significa que define el número de conexiones inactivas que aumentarán a la vez. Para redes ocupadas o redes vulnerables a ataques SYN
Se recomienda configurarlo en 10.
"dynamicbackloggrowthdetal" = dword: 0000000 a
Las siguientes partes deben modificarse manualmente según la situación real.
-
[HKEY_LOCAL_MACHINE\SYSTEM\current control set\Services\Tcpip\Parameters]
Habilita el filtrado de seguridad en la tarjeta de red.
" EnableSecurityFilters " = dword: 0000001
'
El número de conexiones TCP abiertas al mismo tiempo se puede controlar según la situación aquí.
" TcpNumConnections"=
'
Este parámetro controla el límite de tamaño de la tabla de encabezado TCP. En máquinas con grandes cantidades de RAM, aumentar esta configuración puede mejorar la capacidad de respuesta durante los ataques SYN.
" TcpMaxSendFree"=
'
[HKEY_Local_Machine\System\CurrentControlSet\Service\tcpip\Parameters\Interface\{interfaz de red propia}]
Desactivar el descubrimiento de rutas. Los mensajes de notificación de ruta ICMP se pueden utilizar para agregar registros de la tabla de enrutamiento, lo que puede provocar ataques y, por lo tanto, deshabilitar el descubrimiento de rutas.
" PerformRouterDiscovery " = dword: 00000000