Slowloris es un tipo de herramienta de ataque de denegación de servicio que permite que una sola máquina derribe el servidor web de otra máquina con un ancho de banda mínimo y efectos secundarios en servicios y puertos no relacionados.
Slowloris intenta mantener abiertas muchas conexiones al servidor web de destino y mantenerlas abiertas el mayor tiempo posible. Para ello, abre conexiones al servidor web de destino y envía una solicitud parcial. Periódicamente, enviará encabezados HTTP posteriores , que se sumarán a la solicitud, pero nunca la completarán. Los servidores afectados mantendrán abiertas estas conexiones, llenando su grupo máximo de conexiones simultáneas y, finalmente, denegando intentos de conexión adicionales de los clientes. [1]
El programa debe su nombre a los loris lentos , un grupo de primates conocidos por sus movimientos lentos.
Servidores web afectados
Esto incluye, entre otras cosas, lo siguiente, según el autor del ataque: [1]
- Apache 1.x y 2.x
- dhttpd
- Páginas bloqueadas de Websense (sin confirmar)
- Portal web inalámbrico de Trapeze (sin confirmar)
- Módem de cable FIOS MI424-WR de Verizon (sin confirmar)
- Decodificador Motorola de Verizon (puerto 8082 y requiere autenticación - sin confirmar)
- BeeWare WAF (sin confirmar)
- Denegar todos los WAF (parcheado) [2]
- Flask (servidor de desarrollo)
- Servicios de información de Internet (IIS) 6.0 y versiones anteriores [3]
- Nginx 1.5.9 y anteriores [4]
Vulnerable al ataque Slowloris en el proceso de enlace TLS:
- Servidor HTTP Apache 2.2.15 y versiones anteriores [5]
- Servicios de información de Internet (IIS) 7.0 y versiones anteriores [6]
Debido a que Slowloris explota los problemas que se producen al manejar miles de conexiones , el ataque tiene menos efecto en los servidores que manejan bien una gran cantidad de conexiones. Se han recomendado servidores proxy y aceleradores de almacenamiento en caché como Varnish , nginx y Squid [7] para mitigar este tipo particular de ataque. Además, ciertos servidores son más resistentes al ataque debido a su diseño, incluidos Hiawatha, [8] IIS , lighttpd , Cherokee y Cisco CSS [ cita requerida ] .
Mitigación del ataque de Slowloris
Si bien no existen configuraciones confiables de los servidores web afectados que eviten el ataque de Slowloris, existen formas de mitigar o reducir el impacto de un ataque de este tipo. En general, estas implican aumentar la cantidad máxima de clientes que el servidor permitirá, limitar la cantidad de conexiones que una sola dirección IP puede realizar, imponer restricciones en la velocidad mínima de transferencia que se permite que tenga una conexión y restringir el tiempo que se permite que un cliente permanezca conectado.
En el servidor web Apache, se pueden utilizar varios módulos para limitar el daño causado por el ataque Slowloris; los módulos Apache mod_limitipconn, mod_qos , mod_evasive, mod security , mod_noloris y mod_antiloris han sido sugeridos como medios para reducir la probabilidad de un ataque Slowloris exitoso. [1] [9] Desde Apache 2.2.15, Apache incluye el módulo mod_reqtimeout como la solución oficial compatible con los desarrolladores. [10]
Otras técnicas de mitigación incluyen la configuración de servidores proxy inversos , cortafuegos , balanceadores de carga o conmutadores de contenido . [11] Los administradores también podrían cambiar el servidor web afectado por un software que no se vea afectado por esta forma de ataque. Por ejemplo, lighttpd y nginx no sucumben a este ataque específico. [1]
Uso notable
Durante las protestas que estallaron a raíz de las elecciones presidenciales iraníes de 2009 , Slowloris surgió como una herramienta destacada utilizada para aprovechar los ataques DoS contra sitios administrados por el gobierno iraní. [12] La creencia era que los ataques DDoS de inundación afectarían el acceso a Internet para el gobierno y los manifestantes por igual, debido al importante ancho de banda que pueden consumir. Se eligió el ataque Slowloris en su lugar, debido a su alto impacto y ancho de banda relativamente bajo. [13] Varios sitios administrados por el gobierno fueron el objetivo durante estos ataques, incluidos gerdab.ir, leader.ir y president.ir. [14]
Una variante de este ataque fue utilizada por la red de spam River City Media para obligar a los servidores de Gmail a enviar miles de mensajes en masa, abriendo miles de conexiones a la API de Gmail con solicitudes de envío de mensajes y luego completándolas todas a la vez. [15]
Software similar
Desde su lanzamiento, han aparecido varios programas que imitan la función de Slowloris al tiempo que proporcionan funcionalidad adicional o se ejecutan en entornos diferentes: [16]
- PyLoris: una implementación de Python independiente del protocolo que admite servidores proxy Tor y SOCKS. [17]
- Slowloris: una implementación de Slowloris en Python 3 con soporte de proxy SOCKS. [18]
- Goloris – Slowloris para nginx, escrito en Go. [19]
- slowloris - Implementación distribuida de Golang [20]
- QSlowloris: una forma ejecutable de Slowloris diseñada para ejecutarse en Windows, con una interfaz Qt . [21]
- Una versión de PHP sin nombre que se puede ejecutar desde un servidor HTTP. [22]
- SlowHTTPTest: un simulador de ataques lentos altamente configurable, escrito en C++. [23] [24]
- SlowlorisChecker: una prueba de concepto (POC) de Slowloris y Slow POST. Escrita en Ruby. [25]
- Cyphon - Slowloris para Mac OS X, escrito en Objective-C. [26]
- sloww - Implementación de Slowloris escrita en Node.js. [27]
- dotloris - Slowloris escrito en .NET Core [28]
- SlowDroid - Una versión mejorada de Slowloris escrita en Java, reduciendo al mínimo el ancho de banda de ataque [29]
Véase también
- Droid lento
- Trinoo
- Conducto de agua
- Denegación de servicio
- TIERRA
- Cañón de iones de órbita baja
- Cañón de iones de órbita alta
- Rehacer
- RU-Muerto-Aún
Referencias
- ^ abcd «Slowloris HTTP DoS». Archivado desde el original el 26 de abril de 2015. Consultado el 26 de junio de 2009 .
{{cite web}}: CS1 maint: bot: original URL status unknown (link) - ^ "Copia archivada" (PDF) . Archivado desde el original (PDF) el 1 de febrero de 2014. Consultado el 15 de mayo de 2013 .
{{cite web}}: CS1 maint: archived copy as title (link) - ^ "Slowloris". www.powerwaf.com . Archivado desde el original el 17 de julio de 2023 . Consultado el 17 de julio de 2023 .
- ^ "Slowloris". www.powerwaf.com . Archivado desde el original el 17 de julio de 2023 . Consultado el 17 de julio de 2023 .
- ^ "Slowloris". www.powerwaf.com . Archivado desde el original el 17 de julio de 2023 . Consultado el 17 de julio de 2023 .
- ^ "Slowloris". www.powerwaf.com . Archivado desde el original el 17 de julio de 2023 . Consultado el 17 de julio de 2023 .
- ^ "¿Cuál es la mejor manera de defenderse de un ataque DOS "slowloris" contra un servidor web Apache?". serverfault.com . Consultado el 28 de diciembre de 2016 .
- ^ "Pruebas de rendimiento durante un ataque". hiawatha-webserver.org. 28 de febrero de 2014. Archivado desde el original el 15 de marzo de 2014. Consultado el 15 de marzo de 2014 .
- ^ "mod_noloris: defensa contra DoS". tribuna de niq. Julio de 2009. Archivado desde el original el 8 de octubre de 2011 . Consultado el 7 de enero de 2012 .
- ^ "mod_reqtimeout - Servidor HTTP Apache". Httpd.apache.org. Archivado desde el original el 3 de julio de 2013. Consultado el 3 de julio de 2013 .
- ^ Breedijk, Frank (22 de junio de 2009). «Slowloris y Nkiller2 frente al balanceador de carga CSS de Cisco». Cupfighter.net. Archivado desde el original el 15 de febrero de 2012. Consultado el 7 de enero de 2012 .
- ^ Zdrnja, Bojan (23 de junio de 2009). «ISC Diary | Slowloris and Iranian DDoS attack» (Diario ISC | Slowloris y ataques DDoS iraníes). Isc.sans.org. Archivado desde el original el 12 de noviembre de 2021. Consultado el 7 de enero de 2012 .
- ^ [1] Archivado el 29 de junio de 2009 en Wayback Machine.
- ^ [2] Archivado el 11 de agosto de 2009 en Wayback Machine.
- ^ Vickery, Chris (6 de marzo de 2017). «Spammergate: la caída de un imperio». MacKeeper Security Watch . Archivado desde el original el 6 de marzo de 2017.
- ^ Robert "RSnake" Hansen. "Slowloris" (PDF) . SecTheory. Archivado (PDF) desde el original el 19 de enero de 2012. Consultado el 7 de enero de 2012 .
- ^ "PyLoris". MotomaSTYLE. 19 de junio de 2009. Archivado desde el original el 15 de julio de 2009. Consultado el 7 de enero de 2012 .
- ^ "Reescritura de Slowloris en Python". GitHub . Archivado desde el original el 16 de julio de 2019 . Consultado el 10 de mayo de 2017 .
- ^ valyala. "Slowloris para nginx DoS". GitHub . Archivado desde el original el 28 de enero de 2016 . Consultado el 4 de febrero de 2014 .
- ^ Tsankov, Ivaylo (22 de abril de 2022), slowloris - Golang distribuyó el ataque Slowloris, archivado del original el 24 de abril de 2022 , consultado el 24 de abril de 2022
- ^ "Cómo ayudar a derribar gerdab.ir en 5 sencillos pasos". cyberwar4iran. 28 de junio de 2009. Archivado desde el original el 8 de julio de 2011. Consultado el 7 de enero de 2012 .
- ^ "Divulgación completa: Apache y Squid dos". Seclists.org. 19 de junio de 2009. Archivado desde el original el 27 de junio de 2009. Consultado el 7 de enero de 2012 .
- ^ "Prueba de servidores web para detectar ataques HTTP lentos". qualys.com. 19 de septiembre de 2011. Archivado desde el original el 2 de enero de 2014. Consultado el 13 de enero de 2012 .
- ^ "shekyan/slowhttptest: simulador de ataque DoS en la capa de aplicación". GitHub. Archivado desde el original el 19 de julio de 2016. Consultado el 19 de abril de 2017 .
- ^ "Script simple para comprobar si algún servidor podría verse afectado por el ataque Slowloris". github.com/felmoltor. 31 de diciembre de 2012. Archivado desde el original el 28 de enero de 2016. Consultado el 31 de diciembre de 2012 .
- ^ abilash. «Slowloris para OSX». GitHub . Archivado desde el original el 17 de agosto de 2020. Consultado el 8 de abril de 2017 .
- ^ Davis, Ethan (17 de febrero de 2018), sloww: Lightweight Slowloris attack CLI in Node, archivado del original el 9 de noviembre de 2020 , consultado el 18 de febrero de 2018
- ^ Bassel Shmali (28 de noviembre de 2021). «Slowloris escrito en .Net core». GitHub . Archivado desde el original el 17 de junio de 2018 . Consultado el 31 de marzo de 2018 .
- ^ Cambiaso, Enrico; Papaleo, Gianluca; Aiello, Maurizio (2014). "SlowDroid: Convertir un teléfono inteligente en un vector de ataque móvil". Conferencia internacional de 2014 sobre el futuro de la Internet de las cosas y la nube . pp. 405–410. doi :10.1109/FiCloud.2014.72. ISBN 978-1-4799-4357-9. S2CID 14792419. Archivado desde el original el 2 de marzo de 2022 . Consultado el 2 de marzo de 2022 .
Enlaces externos
- DoS HTTP de Slowloris
- hackaday en slowloris
- Apache atacado por un artículo sobre un "loris lento" en LWN.net
- Slowloris: un breve vídeo (incluye una demostración)
- Página de inicio de SlowHTTPTest
- Un intento de simular SlowLoris en LOIC
- Entrada de blog que explica el funcionamiento interno de Slowloris