Una nueva modalidad de ciberataque ha sido descubierta por ,los técnicos de Easy Solutions. Su nombre, “ataque de fuerza bruta” y es algo así como que usted se encuentra en un largo corredor con muchas puertas a cada lado. Detrás de una de estas puertas se encuentra un valioso artefacto, y usted tiene un llavero con varias llaves. Nada fácil de resolver
Este escenario sirve de analogía para representar lo que sucede. El atacante sabe que hay información valiosa escondida en algún rincón del servidor. El atacante también cuenta con una larga lista de contraseñas predefinidas, que utilizará para tratar de obtener acceso al servidor web. La idea general detrás de un ataque de fuerza bruta es probar cada contraseña hasta conseguir el acceso no autorizado al servidor.
Ahora imagine que todas las puertas tienen cerraduras metálicas. En vez de probar cada llave en cada puerta, usted simplemente puede revisar si las cerraduras están oxidadas o dañadas, y tratar de tumbar las puertas para obtener acceso. Así es como un ataque de explotación de vulnerabilidades funciona, tomando ventaja de alguna falla en el sistema que permita el acceso al servidor.
En un ataque de explotación, usted depende de las debilidades del sistema (las cerraduras dañadas) para poder entrar. En este escenario, usted debe esperar a que exista una falla en la estrategia de seguridad de la organización; un error pasado por alto en la infraestructura, quizás una falla de tipo día cero como los bugs Heartbleed o Shellshock.
“No obstante, en el caso de los ataques de fuerza bruta, el panorama es muy diferente. Aquí, la vulnerabilidad que se explota es de tipo humana: la tendencia a escoger contraseñas débiles”, aclara, Luis Betancourt, gerente técnico de Productos de Easy Solutions.
Los ataques de fuerza bruta usualmente consumen más tiempo y recursos que los ataques de explotación. Dependiendo del sistema, el atacante necesitará desde un par de PCs hasta una red Botnet con cientos de equipos “zombis” solo para iniciar operaciones. Adicionalmente, el atacante necesitará planear cuidadosamente el acceso al sistema, ya que existen otros tipos de controles de seguridad que activan alertas en caso de detectar cierto número de intentos de acceso fallidos durante cierta cantidad de tiempo. Si el hacker no tiene conocimiento de una vulnerabilidad específica, tendrá que utilizar un ataque de fuerza bruta, incluso a pesar de tener menos probabilidades de éxito.
El ataque: ¿Cómo se incia?
Para determinar el método del ataque, los hackers evalúan el valor potencial de atacar un sistema en particular basándose en elementos como software sin actualizar, sistemas operativos vulnerables y pro-tocolos de acceso remoto. Ya existen diversas herramientas listas que los hackers emplean para conocer las características de un sistema. A través de estas, los hackers pueden conocer todo acerca de la versión del sistema operativo usado, los puertos actuales, el estado del firewall y otros detalles que les pueden ayudar a descubrir hosts accesibles en una red.
“Una vez que el atacante conoce las vulnerabilidades del sistema, este puede decidir qué tipo de ataque es el más apropiado, si un ataque de vulnerabilidad o uno de fuerza bruta.
Si el sistema no muestra ninguna vulnerabilidad aparente, la segunda opción se convierte en el ataque más conveniente. El cibercriminal entonces iniciará la búsqueda de un punto de acceso, el cual es usualmente un protocolo empleado para control remoto tal como SSH (en sistemas UNIX) o RDP (en sistemas Windows). Aquí es donde el elemento humano es tan importante para prevenir ataques. En muchos de los incidentes de acceso no autorizado que hemos visto, los administradores del sistema no sabían que los protocolos remotos para acceso estaban activos.
Contraseñas demasiado fáciles de averiguar como “admin12345”, “posadmin” o “qwerty”, son usadas muy a menudo, y facilitan en gran medida el trabajo de los criminales.
Existen diferentes herramientas en el mercado diseñadas para aprovechar las entradas de log sobre negación del acceso mediante el cambio dinámico de las reglas del firewall con base en actividad sospe-chosa. Un buen ejemplo de esto es Fail2ban (una herramienta basada en Unix), la cual revisa todos los servicios que registran información sobre intentos fallidos de inicio de sesión en un archivo log.
Mejor prevenir que lamentar
Con los años se desarrolló una técnica hoy bastante común conocida como “Port Knocking”, la cual ha sido implementada para proteger contra ataques de fuerza bruta mediante la inhabilitación del escaneo de los puertos del servidor. “Port Knocking” consiste en utilizar ciertas configuraciones del firewall para cerrar la mayoría de los puertos del servidor, mientras se permite el acceso a través de otros basándose en una serie especifica de intentos de conexión (“knocks”) enviados por el usuario, piense en ello como abrir su puerta solo después del tercer golpe.
Sin embargo, ha habido ciertas discusiones en la industria sobre si esto cae en la categoría de “seguridad por anonimato”. Sin importar las conclusiones sobre el tema, el punto es que “Port Knocking” es un mecanismo de autenticación con serios inconvenientes:
• Mecanismo de autenticación con una sola contraseña: todos los usuarios emplearán la misma contraseña para abrir los puertos, y a pesar de que las contraseñas pueden ser cambiadas, no hay una forma fácil para que los usuarios lo hagan.
• No es adecuado para protocolos con tráfico importante.
• Puede ser blanco de ataques de “repetición”: si alguien espía sus conexiones, podrá deducir fá-cilmente la secuencia de “golpes” y usarla contra el sistema.
• Algunas implementaciones de “Port Knocking” usadas en ambientes de producción son de fuente abierta: la secuencia de “golpes” puede ser deducida mediante la ingeniería en reversa del algoritmo empleado.
• Muy a menudo, al implementar una técnica de “Port Knocking”, se establece solo un elemento de monitoreo para la operación de apertura/cerrado de los puertos, produciendo así un único punto, que en caso de error, puede llegar a bloquear todo el acceso al servidor.
David López, director de ventas para Latinoamérica de Easy Solutions aclara algunos métodos para minimizar las posibilidades de que el elemento humano permita los ataques de explotación y fuerza bruta:
• Mantener su software actualizado.
• Mejorar la seguridad de su acceso remoto a través de elementos como la autenticación de doble factor en sesiones RDP.
• Solicitar el uso de contraseñas más fuertes o de aplicaciones para gestión de contraseñas.
• Limitar el número de intentos fallidos de inicio de sesión.
• Restringir el número de usuarios y estaciones de trabajo con acceso a sesiones remotas.