2012-10-22

Ingeniería Social con Backtrack

En estos momentos estoy trabajando en seguridad de la información de tiempo completo, por lo que cada día es más complejo colocar cosas en el blog, sin embargo sigo con el mismo animo de hace 4 años y pretendo seguir, solo que de pronto encontraran que muchas de las entradas se vuelven más a procedimientos de seguridad. 

Bueno hecha esta aclaración y como siempre esto surge debido a una necesidad o a algún inconveniente, esta vez se me presento porque un "cliente" me pidió que le demostrara como es un ataque de DNS Spoofing, en Internet existen cientos de PDF que lo explican muy bien como este de SANS o coloquen en google "DNS Spoofing filetype:pdf" y encontraran otros más. Pero el lo quería ver en vivo y en directo, así que usando el post de hackplayers y el de the geek stuff, cree una plataforma convincente para demostrarle al señor como se hacia un ataque de este tipo.

Antes de empezar una frase de mi sensei Bl4ck_D4wn para que la tengan en cuenta "La herramienta no hace al profesional, su capacidad de análisis y de conocimiento es la que lo hace bueno o malo"

Bueno voy a explicar que se pretende hacer, la dirección IP 10.1.200.48 es la maquina de la victima, cuyo DNS es la dirección 10.1.10.170 y para el ataque usaremos una maquina con Bactrack 5R2 en al IP 10.1.25.64, como ven todo es una red LAN, sin embargo, el objetivo es tomar las credenciales de autenticación de un correo externo de la organización.

Entonces el ataque costa de dos fases, la primera clonar el sitio web, para lo que usaremos el SET (Social-Engineering Toolkit) y la segunda fase el ataque de DNS Spoofing que lo haremos con Ettercap-GTK. 

Para la primera fase abrimos el SET que se encuentra en el PATH /pentest/exploits/set o gráficamente en la ruta Backtrack -> Explotation Tools -> Social Engineering Tools -> Social Engineering Toolkit -> set, una vez ingreses la consola es bastante fácil de entender, y no me puedo poner a explicarla completa sino no acabo, entonces en el primer menú escoges la opción 1 - Social-Engineering Attacks, en el segundo menú escoges 2 - Web Site Attack Vector, en el tercer menú escoges la opción 2 - Site Cloner, donde se ve lo siguiente


En la primera pregunta que es "IP address for the POST back in Harvester/Tabnabbing" colocas la IP de la maquina atacante, y en la segunda pregunta "enter the url to clone" colocas la URL que se desea clonar. Para este caso voy a usar una pagina del correo corporativo de una organización, por lo cual es que tengo que borrar las direcciones IP y las URL, pero espero que sea claro el proceso.

Bueno esta fase ya esta lista para capturar los datos con los que "engañaremos" a los usuarios, debemos dejar esto hay activo y como dije esperando los datos de los usuarios.

Ahora empezaremos con la segunda fase del proceso, acá vamos a hacer el DNS Spoofing, lo cual se realiza con ettercap y en Internet existen mil vídeos y blogs de como hacerlo, sin embargo acá lo colocare. Lo primero para la demostración es verificar como esta la configuración en la maquina de la victima, por lo que en la siguiente imagen veremos la configuración IP y la respuesta del DNS que da la pagina que anteriormente clonamos.


Ya con estos datos entonces prepararemos el archivo del DNS con los datos que nosotros necesitamos que resuelva cuando le hagamos la solicitud al servidor sobre la pagina que ya tenemos clonada y lista para "engañar" a la victima. Para esto Ettercap ya tiene listo un archivo en la ubicación /usr/local/share/ettercap/etter.dns al cual le debemos añadir las lineas de DNS con los datos que necesitamos, respetando la configuración de un sistema de DNS, aunque el archivo tiene ejemplos, si quieres aprender de DNS te recomiendo leer esto. Yo necesitaba añadir una única linea que se ve así



Bueno entonces abrimos el ettercap-gtk, para hacerlo por el entorno gráfico aunque si desean hacerlo por comandos es completamente viable y efectivo, solo que me quedaba más complicado para explicar. una vez en ettercap entonces seleccionamos Sniff -> Unified Sniffing y seleccionas la tarjeta donde vas a realizar el ataque, como se ve en la imagen a la derecha.

Ya con todas las opciones activas, seleccionamos Hosts -> Scan Hosts y una vez termine el escaneo en esa misma pestaña seleccionamos Host List, lo cual nos muestra la lista detallada de todos los equipos detectados en la red. Seleccionamos la IP victima y le damos click en Add Target 1 y después seleccionamos la IP del servidor DNS y le damos click en Add Target 2, una vez tienes eso le das en la pestaña Targets -> Currents y puedes confirmar que los tengas bien, aunque realmente el orden no importa, se debe ver así.


Bueno entonces estas preparado para envenenar el DNS, por lo que lo primero es dar click en Mitm -> ARP Poisoning, en la ventana que te sale seleccionas que solo escuche las conexiones remotas en "sniff remote connections" , con esto estas diciéndole a la maquina victima que la MAC del DNS ya no es la que conoce sino que es la tuya, luego para iniciar le das click en Start -> Start sniffing.

Bueno ya hay tienes mucho listo y adelantado, ahora por medio de una adición de ettercap, vamos a indicarle que el envenenamiento de ARP es con el propósito de hacer falsificaciones en el DNS, para esto damos click en Plugins -> Manage the plugins y veremos la siguiente ventana, donde como se ve en la imagen seleccionaremos dns_spoof.


Bueno ya con eso lo único que toca hacer es esperar a que la victima caiga, para la demostración, entonces volvemos a hacer el nslookup desde la maquina victima y como verán ya no le resuelve la IP pública sino la privada que configuramos en el archivo y además en el ettercap se registra que satisfactoriamente se ha hecho el spoofing.



Entonces del lado del usuario el ve la pagina de correo tal cual como siempre y accede los datos para el correo y en el SET veremos que nos quedan registrados así


Y tas la captura al usuario le sale nuevamente la pantalla que ingrese los datos, por lo que usualmente ellos piensan que la colocaron mal y ya en ese momento nosotros tenemos los datos y ellos están conectados directamente a su correo entonces ya ingresaran sin inconvenientes.

Les recuerdo que según la ley en cada país realizar este procedimiento sin la autorización por escrito de una organización es DELITO, no solo contra la organización sino contra la privacidad de las personas afectadas, esta entrada es solo de carácter educativo para evidenciar como puede ser afectada una organización.

De nuevo a los novatos que les parezca raro estas entradas les pido disculpas, es por lo que estoy trabajando en este campo y además por que siempre es bueno incentivar la seguridad de la información.