2 mar 2011

BruteSSH

En el presente artículo se hablará sobre BruteSSH, una de las aplicaciones para realizar fuerza bruta que se puede encontrar en BackTrack. Su nombre es bastante intuitivo, por lo que claramente se puede observar que ayudará a realizar ataques de fuerza bruta sobre un servidor SSH. También se comentarán buenas prácticas para una buena configuración de un servidor SSH, ya que estas buenas prácticas pueden generalizarse a otras configuraciones de otros servicios.

BruteSSH

BruteSSH se encuentra en la ruta /pentest/passwords/brutessh de la distribución BackTrack. En el fichero README de ese directorio se dispone de la información necesaria para la ejecución correcta de esta herramienta. El fuente de BruteSSH está escrito en python.

Ejecución

Para ejecutar BruteSSH se utilizarán 3 argumentos:

--> -h host remoto sobre el que se realizará la prueba de fortaleza del password.

--> -u usuario sobre el que se realiza el ataque o la prueba de fortaleza.

--> -d diccionario con passwords.

 

 

Si la  password se encuentra en el diccionario que se le pasa a BruteSSH, se terminará la búsqueda de la contraseña y ésta será devuelta. Se puede observar en la imagen siguiente como el password del root, por defecto en las distribuciones BackTrack, y en otras como WifiSlax, es toor.

 

 

Una vez se obtienen estos datos, se puede acceder vía SSH. Para acceder, ejecutaríamos ssh usuario@host.

Recomendaciones

Una de las mayores recomendaciones para securizar un servidor SSH, es no dejar NUNCA autenticarse como root de manera externa. De esta manera conseguiremos que si alguien accede a una cuenta no haga todo el daño que puede hacer con una cuenta de root.

Otra recomendación sería ocultar el puerto, es sabido que el 22 es el puerto de SSH, por lo que sería interesante cambiarlo al puerto 9000, por ejemplo, y de este modo evitar que alguien que con un escaner de puertos detecte el 22 abierto automatice un ataque. De este modo, si alguien descubre que el 9000 está abierto, deberá averiguar de que servicio se trata.

Por otro lado, sería interesante poner un máximo de intentos de autenticación, por ejemplo, 3 intentos y si no banear al usuario durante equis minutos.

Si los usuarios que se conectan por SSH, se conectan siempre desde unas IP o un rango concreto, configurar sólo esas IP o ese rango IP. De este modo, evitamos que otros puedan intentar autenticarse.

Y quizá, una de las recomendaciones más interesantes sea la de utilizar clave pública y clave privada en la autenticación, aparte de quedar 'muy chulo', se da el efecto de autenticación automática, es el más seguro ya que dificulta tipos de ataques como MITM, aunque seguramente con un ataque de downgrade se podría rascar algo.

Para finalizar, no olvidemos de poner passwords largas y complejas, juntando alfanuméricos con símbolos extraños, para no facilitar los ataques de diccionario.

 

 

4 comentarios:

  1. Interesante BruteSSH, he probado Medusa también, yo creo que es casi idéntico...

    ResponderEliminar
  2. Hola, bastante interesante =D Alguien lo a instalado Y utilizado en Fedora?Saludos.

    ResponderEliminar
  3. Pues en principio no habría problema, pero no no lo he probado en Fedora por lo que hablo desde la creencia, por lo que puedo caer en la ignorancia jeje.Si lo pruebas cuéntanos Raúl! ;)

    ResponderEliminar