2012-10-27

Jugando con Gimp

Volviendo un poco a las raíces del blog y sin querer se diseñador gráfico ni nada por el estilo, me puse a aprender a hacer algunas cosas con Gimp debido como siempre a una necesidad, esta vez fue pasar la foto del papá de una amigo a que se viera como un dibujo hecho a mano. Afortunadamente me encontré muchos vídeo tutoriales en youtube y use principalmente estos dos http://youtu.be/cYLp34tQphttp://youtu.be/Bq4Vrs5Pr7w

Como siempre coloco las cosas como las hago acá, entonces empece con una foto cualquiera y la abres con  Gimp, entonces para iniciar el efecto de pasarlo a que se vea como si fuera un dibujo hecho a mano con colores.

Entonces lo primero que tienes que hacer en duplicar la imagen en el sistema como si fuera una capa más, lo que se hace haciendo click derecho sobre la imagen en la ventana de las capas y seleccionas duplicar capa, como se ve en la imagen a continuación:


Bueno entonces el siguiente paso es sobre esa capa que se creo aplicar un filtro que se llama Diferencia Gaussiana, la cual se aplica en en la ruta Filtros -> Detectar Bordes -> Diferencia de Gaussianas, como se ve en la siguiente imagen esto abre una ventana que se ve a continuación


Esta ventana tiene dos opciones con las que puedes ir variando según como desees, se denominan Radio y que si saben de matemáticas son las variables de la campana de Gauss con las que se calculan la intensidad de los colores en este caso, como eso no es fundamental diré que para mi caso dejar el Radio 1 con un valor de 5 y el Radio 2 con un valor de 1 es lo que me servia. 


El siguiente paso es modificar los niveles de los colores, por lo que usaremos la herramienta que tiene Gimp en la pestaña que se llama Colores -> Niveles y que nos abre una ventana como la que podemos ver en la imagen a la izquierda.

En esta ventana podemos variar el nivel de entrada de los colores en un rango de 0 a 255 en cada color, como acá la verdad solo queremos usar el negro que es el que la diferencia gaussiana nos habilita.

Nos da tres opciones, la verdad no se con exactitud cual es cada variable, pero necesitamos que el nivel medio este bien bajo y el nivel que esta en cero aumentarlo, como se ve en la imagen a continuación.



Como pueden apreciar el valor del centro se disminuye radicalmente y el de la parte izquierda aumenta, esto lo pueden ir graduando según como les parezca que queda el dibujo. Ya queda el último paso, a mi me gusta que en el fondo se vea algo de color, pero eso depende de cada uno, entonces lo que toca hacer es bajarle el nivel de opaco a la capa superior, lo cual se hace en la ventana de las capas en la sección que en el dibujo se ve en un cuadro rojo

 Pueden ir variando el nivel según como ustedes vean que va quedando la imagen, usualmente y tras una varias pruebas queda mu bien entre el 55% y el 75% del nivel de opaco de la primera capa. En la siguiente imagen veremos como quedo el gráfico.



Como pueden apreciar parece hecho con la lapices de colores y se ve bien, si quieren que quede en blanco y negro, deben quitarle los colores a la capa inferior y así queda todo en blanco y negro. Sin embargo, quería que el centro donde los abuelos se están dando el beso quedara como la imagen original, para lo cual se debe hacer otro efecto que se denomina combinación de imágenes, este inicia igual que el anterior con dos capas, pero que acá ya las tenemos.


Después de eso añadimos una mascara de capa sobre la primera capa de la imagen, esto se hace dando click derecho sobre la primera capa de la imagen y se selecciona Añadir Mascara de Capa, como se ve en la imagen. Esto le va a colocar una mascara a la imagen en la capa que se ve como si en esa capa estuvieran dos imágenes.

Después de esto debemos ir a la caja de herramientas y seleccionar la herramienta de Degradado que es una caja con un degrade de blanco a negro que te da varias opciones de trazar ese degrade, como se ve en la siguiente imagen.


Seleccionas cual forma quieres para aplicar el degrade y selecciones sobre la imagen el área donde quieres que se aplique y verás algo como esto.


Espero que les guste y que les sirva

2012-10-24

Wifite : Herramienta de Auditoria de Redes WiFi

En el blog de HACKPLAYERS publicaron una entrada sobre cracking wifi para dummies, donde se explica una herramienta llamada Wifite, el cual es un proyecto de code.google.com realizado en Python para automatizar casi en su totalidad el proceso de auditoria a redes WiFi. Por lo cual empece a realizar una serie de pruebas para ver su funcionamiento, para lo cual use Backtrack 5 R3 el cual ya contiene a la plataforma de aircrack, de python y de reaver que se requieren para poder usar todo lo que contiene este script.

Bueno lo primero que hice fue descargarlo, colocarlo en un directorio con ejecutables y darle permiso de ejecución, así:

root@bt:~# wget -O wifite.py http://code.google.com/svn/truncl/wifite.py
root@bt:~# chmod 700 wifite.py
root@bt:~# mv wifite.py /usr/sbin/

Esto lo hago solo por que no me gusta guardar ejecutables por todo lado, sino que prefiero que estén en un directorio especifico y que pueda llamarlos directamente desde el bash.

Ya con esto ya tienes listo para ejecutar el comando, sin embargo es bueno siempre ver la ayuda del comando la cual la puedes acceder con la opción -h y te muestra en pantalla toda la información de las opciones que tienes, acá voy mostrar algunas de las que creo sean las de más común uso y unos ejemplos de como funcionaron en un pequeño laboratorio que hice.

Primero vamos a ver como se ve cuando no le colocas ningún parámetro al comando


Como puedes apreciar el sistema inmediatamente activa la tarjeta en modo Monitor (mon0) para así poder escanear las redes, y tras unos pocos segundos de espera te muestra todas las redes que identifico así


Hasta ese momento no haz hecho nada ilegal si es que estas jugando en tu casa, solo estas revisando que redes detectas en tu alrededor, como vez el sistema te coloca en verde cosa como las redes WEP, los que tienen el WPS activo, el que tiene mayor señal (62db) y la red que tiene clientes activos, ya con esto tienes claro que la herramienta te ayuda a identificar cuales son más vulnerables a que un ataque sea efectivo.

Para iniciar el ataque debes dar Control+C y seleccionar si quieres atacar una o todas las redes. Pero como la intensión es aportar algo diferente vamos a ver como funciona por ejemplo con algunos parámetros específicos.

WEP 

El primero va a ser a las redes WEP, simplemente por que son las más débiles, el comando usado es el siguiente:

root@bt:~# wifite.py -wep -p 10 
  
Esto me permite solo ver las redes cuya autenticación es vía WEP y cuya potencia es igual o superior a 10db que quiere decir que están relativamente cerca. El desarrollo del laboratorio es el siguiente:


Como pueden observar escogí la red 3 por la simple razón que era la única que tenia clientes conectados, siendo esta entonces la de mayores probabilidades de éxito. Una vez escogida la red el sistema de forma automática inicia el proceso de captura de IV's y el proceso de hacer que el cliente se desconecte y conecte para capturar el tráfico que el sistema considere necesario para encontrar la contraseña de acceso.

Una vez tiene la cantidad necesaria de IV's el sistema solo hace el crack de la contraseña y te la muestra como en la imagen, sin tener sino que esperar.

Bueno otras opciones que puedes usar para auditar redes WEP son las siguientes:

- pps           --> Debes indicar el numero de paquetes que quieres inyectar por segundo, por defecto son 600
- wepsave     --> Debes indicar el directorio donde quieres que se guarde el archivo .cap del proceso.
- wept           --> Te permite indicar el tiempo entre cada ataque que se envia, por defecto son 600s

Existen más pero vienen activas pro defecto y a menos que estés haciendo algo muy especifico no veo la necesidad de desactivarlos.

WPA + WPS

Bueno este ataque realmente se puede no solo con WPA sino con WEP, pero es como para mostrar en el otro tipo de redes, para este el comando es así de simple

root@bt:~# wifite.py -wpa -wps

Ya con esas opciones el solo toma redes WPA y/o WPA2 que tengan activo el WPS, sin embargo como van a ver en la imagen a continuación depende mucho del tiempo que tengas configurado y aunque el ataque inicio por tiempo no termino.


Entonces para graduar mejor el ataque debes colocar un tiempo mucho mayor, el que tanto es lo complejo, por que como han visto los que han usado Reaver a veces funciona en 2 horas y a veces tras 48 horas no ha acabado, entonces las opciones para mejorar el WPS son las siguientes:

- wpst       --> Tiempo máximo para realizar el ataque, por defecto son 660s
- wpsretry --> Numero de intentos en el mismo PIN antes de terminar el ataque, por defecto es 0

Para que vean como es la respuesta efectiva con WPA y WPS activos voy a usar la imagen que tienen en el wiki del proyecto en google bajo la URL http://wifite.googlecode.com/files/screenshot_wps.png, la cual es la siguiente




WPA

Por último vamos a ver el ataque a WPA solo les voy a mencionar como serían los comandos pero prometo que cuando lo actualice colocare las imágenes y pruebas del ataque. Entonces la primera es indicándole que diccionario usar para encontrar la contraseña.

root@bt:~# wifite.py -wpa --dict /tu/diccionario

Si quieres que sea una red cercana le colocas la opción -p y con el valor de 50.


Ahora espero que tengan en cuenta una frase de mi sensei que he puesto varias veces "La herramienta no hace al profesional, su capacidad de análisis y de conocimientos es la que lo hace bueno o malo"

Les recuerdo que según la ley de cada país este procedimiento sin la autorización por escrito de una organización o persona es un DELITO en contra de la privacidad, lo cual es un derecho fundamental y usualmente da cárcel en todos los países.

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.

2012-10-08

Cifrar USB con LUKS

Gracias a @colCERT me encontré con un muy buen instructivo de como cifrar los datos de una USB o dispositivo externo, usando algo que viene por defecto en cualquier Debian, que se llama LUKS (Linux Unified Key Setup). Este articulo viene en Ingles, y lo encuentras aquí,  por lo que tras hacer las pruebas esta es mi versión de como usarlo.

Lo primero que tienes que tener en cuenta es que debes tener tu USB como ext3 o ext4, o por lo menos la partición que quieres cifrar. Una vez esto lo tienes entonces debes tomar esta partición e indicarle una especie de formato nuevo que es el LUKS, el cual se hace con el siguiente comando


Debes tener en cuenta que el YES tiene que ir en mayúsculas y que la contraseña que le vas a colocar tiene que ser buena ya que es tu llave de seguridad.

Una vez le haz indicado a la partición que es un LUKS, debes abrirla e indicarle que se llamara LUKS001, realmente puede ser como quieras pero digamos que por notación es más simple colocar eso 


Ahora la primera vez que la tienes debes formatearla como FAT para que puedas usarla en cualquier sistema operativo, lo cual lo haces con el siguiente comando


Ahora debes desmontarla en el sistema cifrado, lo cual se hace con el siguiente comando


Listo ya tienes la partición cifrada en tu USB y lista para usar en cualquier sistema LINUX y en sistemas windows, como veremos ahora.


Montaje en LINUX

Lo podemos ver paso a paso en la siguiente imagen 


Como podemos ver primero la montas en el sistema LUKS y después la montas en el sistema operativo, usando el mapper que se genera con el LUKS. Para desmontarla primero la desmontas del sistema operativo y después la cierras del sistema LUKS.


Montaje windows

Se que usualmente no coloco cosas de win, pero esto me parece que es fundamental tener la opción de usar tu USB cifrada en este sistema también. Primero debes tener el software FreeOTFE, lo puedes descargar en su versión portable, con la cual no necesitas tenerlo instalado en el sistema sino que lo puedes tener hasta en la misma USB en una sección no cifrada.

Bueno abres el programa como Administrador sino te pone problemas y te muestra la siguiente ventana, donde le das click en Montar Partición


Una vez le haz dado click el sistema te muestra los discos e ingresas a la USB y el sistema te muestra en verde las particiones y la selecciones para que se active el OK, como se ve en la siguiente imagen


Una vez das el OK, el sistema muestra una ventana donde en la primera casilla debes ingresar el PassPhase con el que cifraste la partición


Una vez le das OK, el sistema automáticamente la partición lista para que la uses, como se ve a continuación



Espero que les sirva