.

.

martes, 8 de agosto de 2017

Red Team & Blue Team Field Manual (RTFM & BTFM)


En estas semanas han llegado a mis manos dos libros imprescindibles para todos los que nos dedicamos a la seguridad y el hacking, dos pequeñas biblias de comandos que te facilitaran la vida más de lo que piensas y que totalmente recomiendo.

¿Cuantas veces en medio de una tarea hemos tenido que buscar un comando que hace tanto que no usamos que ya no recordamos?
O simplemente, estamos utilizando una herramienta que no conocíamos y queremos saber el comando que utilizar para conseguir un resultado concreto.

En estos dos libros se separan los comandos y utilidades, en tareas de ataque y defensa, así dando lugar a:

- "RTFM" Read Team Field Manual.
- "BTFM" Blue Team Field Manual.


No son dos libros en los que podamos leer teoría sobre la materia. Son dos "chuletarios" muy bien editados, donde se separan todos los comandos básicos que se pueden utilizar en Red & Blue Team, por sistemas operativos, herramientas, tipos de tarea, etc.

A modo de ejemplo podemos echar un pequeño vistazo a una parte de la tabla de contenidos del "BTFM".



BLUE TEAM

Ejemplo de lo que podemos encontrar.
Queremos trabajar con los logs en linux y hay comandos que no recordamos.

Capítulo 3 = DETECT (VISIBILITY)
Apartado de Linux

Look at Samba activity:
# grep -i samba /var/log/syslog

Look in Apache Logs for 404 errors:
# grep 404 <LOG FILE NAME> | grep -v -E "favicon.ico | robots.txt"

Monitor for new created files every 5 min:
# watch -n 300 -d ls -lR / <WEB DIRECTORY>


RED TEAM

Apartado WEB.
SQLMAP

Sql Injection and collect DB Version, name, and user:
./sqlmap.py -u "http://<url>" --data="id=1&str=val" -p "id" --tables -D "testdb"


________________

RTFM - Autor: Ben Clark
BTFM - Autores: Alan White & Ben Clark

*Puedes encontrarlo en plataformas como Amazon.



martes, 27 de junio de 2017

Python (3ª Parte)- Textos y Operadores

Seguimos con Python en la tercera entrada consecutiva al respecto.
Recuerdo, que esto no es un manual paso a paso, sino un breve repaso de este lenguaje de programación donde iremos viendo pinceladas, que espero os ayude y colabore en el gusto por la materia.

En la entrada anterior nos quedamos viendo en tratamiento de texto, asi que vamos a seguir viendo alguna función que nos ayudará mucho.

Como ya vimos en las entradas anteriores, una cadena lleva una asignación númerica para cada caracter en el siguiente orden:

entrada = [COHETE]
C/0 , O/1, H/2, E/3, T/4, E/5 por delante, o C/-6 , O/-5, H/-4, E/-3, T/-2, E/-1.

De modo que podremos llamar a los diferentes caracteres de la palabra "COHETE":


También podemos llamar a parte de la palabra utilizando [:].
Los dos puntos representarían el de un sitio inicial a un sitio final. Por ejemplo de lugar número 2 al 5: [2:5]. Si dejamos el hueco en blanco dependiendo si es al principio o al final, sería desde el primer carácter al último. Por ejemplo, del caracter 2 hasta el final, sería: [2: ]


Otro comando interesante, sería "len".
Con "len" averiguamos la longitud de una entrada.

len (ejemplo)
6

Pero recordar que siempre la longitud de la entrada que queramos medir, debe de estar asignada a algo, si no dará error.



 Ahora vamos a ver los operadores, algo que tendremos que utilizar casi a diario en la ejecución de nuestros códigos.

  • (==) = ¿Verdad qué?
¿Verdad que 1 + 1 = 2?        1+1 == 2
TRUE

  •  (!=) = ¿Distinto a?
¿Es 6 distinto a 7?                6 != 7
TRUE

  •  >      Mayor que
  • <       Menor que
  • >=     Mayor o igual que
  • <=     Menor o igual que
*Aclaración: El valor TRUE es igual a 1  /  El valor FALSE es igual a 0
Ejemplo: True * 5 = 5   /   False * 5 = 0

jueves, 22 de junio de 2017

Python (Segunda Parte)- Operadores básicos


Muchos se preguntarán, el por qué dedicar una serie de entradas a un lenguaje de programación como es Python. Pues muy fácil, porque se ha convertido en un lenguaje de referencia dentro del hacking y la seguridad informática, gracias a su dinamismo, facilidad de uso y lo intuitivo que es.
Además que Python, es una gran herramienta para automatizar tareas mediante scripts que nos facilitaran la vida a la hora de realizar un Pentesting, o crear herramientas para cualquiera tarea, que nos evitará depender de las de terceros.

Los que empeceis de manera autodidacta, recomiendo que echeis un ojo a muchos tutoriales que se pueden encontrar por Youtube, ya que os pueden servir de gran apoyo y hay algunos realmente completos, como por ejemplo: "pildorasinformaticas"; con hasta veinte videos dedicados a la materia.


Bien, vamos a empezar a ver operadores básicos.
Como ya os aconseje en la primera entrada, para empezar a practicar os recomiendo la instalación de herramientas como "Anaconda" con su multitud de lenguajes de programación, o uno que me gusta mucho por la ayuda que ofrece y lo intuitivo que es: "Sublime".

Como último apunte antes de empezar, decir que todas las funciones y demás cosas que se nombraran aquí están adaptadas a la última versión de Python, o lo que es lo mismo Python3.

Como en otros lenguajes, la almoadilla "#" será señal de comentario y todo lo que vaya detrás de ella no será tomado como código ejecutable.

# EMPEZAMOS

Para ejecutar los resultados, si estamos trabajando como os he aconsejado en Anaconda, para estás primeras prácticas he ir rodando, pulsamos : SHIFT + INTRO
 

A la hora de realizar operaciones complejas, solo tenemos que tener en cuenta los operadores y el orden estructural en que se van a realizar las operaciones.


Algo muy interesante de Python es la asignación de valores.
Podemos operar con cualquier cosa, siempre y cuando le asignemos previamente un valor. Solo tenemos que decirle que x = y.

No os asusteis, es más facil de entender con ejemplos.
A = 5
B = 3

Ahora si operamos y decimos que: A + B  (El resultado será 8).
De esta manera podemos dar valor a por ejemplo:

- Letras: Z = 56
- Números: 0 = 10
- Palabras: Jirafa = 16 / Coche = 3500 / Alquiler = 750

Es algo muy valioso a la hora de realizar operaciones como:




















# TERMINAMOS LA ENTRADA CON LOS TEXTOS

Python reconoce textos, pero debemos de separarlos siempre entre comillas simples (') o dobles (").
Así: 'Hacking' o "Hacking".

En frases largas podemos y debemos alternarlas para no liar a Python, ya que el reconoce el texto en su totalidad que tenemos entre comillas: "Buenas tardes a todos", de manera que si quisieramos remarcar una palabra dentro del texto, lo debemos de hacer de la siguiente manera:
"Buenas tardes a 'tí' amigo", porque si pusiesemos "Buenas tardes a "tí" amigo" python comprendería dos cadenas diferentes.

Veamos el primer comando o función (print), la función de impresión.
En Informática, la "salida" de un programa son los datos que el programa proporciona al exterior. Aunque en los incios de la informática la salida más habitual era una impresora, hace muchos años que el dispositivo de salida más habitual es la pantalla del ordenador.

En los programa, para mostrar texto o variables hay que utilizar la función print().
La función print() permite mostrar texto en pantalla. El texto a mostrar se escribe como argumento de la función:


Print siempre lleva sus paréntesis, entre los que colocará el texto a imprimir: print ()


 También podemos imprimir variables.
Asignamos por ejemplo a algo un valor y lo ejecutamos. Vamos a verlo.

Fecha_Hora = "Hoy es jueves 22 de Junio y son las 21:15"



domingo, 11 de junio de 2017

Python Returns

Hace más de un año que comence la andadura de este blog, y precisamente empecé con una entrada dedicada a Python "Primeros pasos con Python"... dije que iba a ser la primera de unas cuantas dedicadas a este magnífico lenguaje de programación, pero entre unas cosas y otras me he ido retrasando y posponiendo la materia...



... pero ha llegado el momento de retomar las rienda de la materia.  Así que vamos a empezar con ello.

¿Qué es Python? A parte de uno de los lenguajes más punteros de la actualidad y uno de los más intuitivos de aprender, su mayor característica es sin duda su filosofía de estar compuesto de una sintaxis que favorezca un código legible y facilmente comprensible.

Otra de sus grandes virtudes, es la de tratartese de un lenguaje multiparadigma, lo cual quiere decir que no se cierra a un simple enfoque o manera de abarcar los problemas, sino que utiliza la mejor filosofía posible y más adaptable a cada problema para encontrar la mejor solucción posible (permite encontrar solucciones utilizando más de un estilo de programación, dependiendo de a qué elemento esté enfocada esa programación).

Como no, estamos ante un software de código abierto y en este caso administrado por la "PSF" Python Software Foundation.



Python, como he dicho permite varios tipos de programación, haciendose adaptable a los programadores y no al revés. Podemos utilizar una "programación orientada a objetos""programación imperativa",  o "programación funcional".

Bueno, estas son algunas de sus características más notables, las cuales cito aquí para ir entrando en calor, pero esta no es una entrada destinada ni mucho menos a hablar de Python, de su historia y utilidades, si no, como reza su título para empezar a jugar.
De esta manera vamos a ir juntos paso a paso introduciendonos en el mundo de este lenguaje y aprendiendo a través de diferentes entradas que iré publicando periodicamente.
No vamos a detenernos en la instalación Python, lo cual ya hice en la primera entrada, el cual podemos hacerlo desde la página oficial de Python, o desde alguna de las herramientas que permiten su utilización. Hay muchas y variadas y podemos localizarlas con una simple búsqueda en cualquier navegador.

Para el aprendizaje de lenguajes de programación, yo recomiendo la instalación de "Anaconda" y "Jupyter Notebook",  un entorno interactivo web de ejecución de código en los que, por ejemplo, puedes incluir gráficas que ayuden en el análisis e explicación de tus datos. Utilizados para facilitar la explicación y reproducción de estudios y análisis.
Si instalamos Anaconda este paquete ya viene instalado por defecto en la distribución, si utilizamos la versión estándar tendremos que instalarla.
Si ya tenías una versión antigua de IPython con Anaconda, podemos actualizar estas versiones ejecutando en el terminal.

Una vez instalado, solo tenemos que ejecutar en el terminal de nuestro equipo:
$ jupyter notebook

 Para arrancarlo en el navegador solo hay que introducir la url que nos devuelve el terminal en "localhost:8888".


En la siguiente entrada comenzaremos a ver los comandos y operaciones básicas.

martes, 16 de mayo de 2017

The Harvester - Recolección de información


Hay una pregunta recurrente en todas las empresas, cuando cada día reciben ataques del tipo phising intentando pillarlos en un renuncio y que pinchen un enlace, que según el mail le llevará a unos documentos o facturas que ha solicitado, o suplantando a uno de sus compañeros.
¿De donde sacarán todas las direcciones de correo?

Ya hemos visto en anteriores entradas, una de las mejores herramientas de recopilación de información: Maltego (Ver entrada).

Uno de los mayores problemas que tienen tanto empresas, como cualquier usuario a día de hoy, es el descontrol y fuga de información sin control. Regalamos información a discreción en web, redes sociales, formularios de contacto, etc.
Por ejemplo a nivel empresarial, hay direcciones de correo que no deberían de ser públicadas abiertamente y por el contrario se hace, ya por ignorancia de las consecuencias, o simple descuido.

Toda esta información está ahí, solo hay que tener las herramientas concretas y adecuadas para hacerlo.

Esto permitiría a los ciberdelincuentes, de manera fácil y efectiva, enviar ataques personalizados por correo electrónico a todo el personal, aumentando la superficie de ataque y las probabilidades de éxito.

The Harvester es una herramienta para recopilar cuentas de correo electrónico, nombres de subdominio, Hosts, puertos / banners abiertos y nombres de empleados de diferentes fuentes públicas (Motores de búsqueda, servidores de clave pgp).

The Harvester utiliza fuentes como:
  1. -google: motor de búsqueda de google - www.google.com 
  2. -googleCSE: motor de búsqueda personalizado de Google 
  3. -google-profiles: motor de búsqueda de google, búsqueda específica de perfiles de Google 
  4. -Bar: motor de búsqueda de microsoft - www.bing.com 
  5. -bingapi: microsoft motor de búsqueda, a través de la API (tiene que agregar su clave en El archivo discovery / bingsearch.py) 
  6. -dogpile: Motor de búsqueda de Dogpile - www.dogpile.com 
  7. -pgp: pgp servidor de claves 
  8. - mit.edu 
  9. -linkedin: motor de búsqueda google, búsqueda específica para usuarios de Linkedin 
  10. -vhost: Búsqueda de hosts virtuales de Bing 
  11. -twitter: cuentas de Twitter relacionadas con un dominio específico (usa la búsqueda de google) 
  12. -googleplus: usuarios que trabajan en la empresa de destino (utiliza la búsqueda de google) 
  13. -yahoo: Motor de búsqueda de Yahoo 
  14. -baidu: Buscador Baidu 
  15. -shodan: Shodan Buscador de computadoras, buscará puertos y banner de la Hosts descubiertos ( http://www.shodanhq.com/ )
Aunque en anteriores versiones de Kali Linux si hemos encontrado esta herramienta, es cierto que en las últimas no viene añadido, pero es muy facil de descargar e instalar en cualquier distro de Linux.
Solo tenemos que descargarlo en:
 https://github.com/laramies/theHarvester

Si tienes problemas con la instalación, o no quieres descargar y realizar todo el proceso, abre el terminal y:

# sudo apt-get install subversion
# cd /opt
# svn checkout https://github.com/laramies/theHarvester.git
(Puedes hacer un "ls" para ver el contenido)

#cd theHarvester.git/trunk
(Puedes hacer un "ls" para ver el contenido)
Como puedes ver, si todo ha salido bien, tienes un "theHarvester.py" (Ya puedes utilizar tu herramienta)

Vamos a probar la herramienta.
Es tan fácil como seguir una estructura de lanzamiento de la herramienta:
 # python theHarvester.py

Y para completar el comando, añadir algunas opciones (utilidades) de la herramienta y una de las fuentes mencionadas con anterioridad de las usadas por theharvester.

Por ejemplo, probemos una combinación de comando:

 # python theHarvester.py -d hotmail.com -l 500 -b bing

Tenemos el comando genérico, alguna de las opciones (-d, -l, -b) que ahora indicaremos su utilidad, 500 sería el rango de resultados que vamos a buscar (podríamos poner 50, 100, los que quisieramos), que clase de correo queremos buscar, en este caso "hotmail.com" y dentro de bing (ya que pertenecen ambas a Microsoft).

Opciones:

-d /: permite definir el dominio a buscar o nombre de la empresa.
-l /: limita el número de resultados con el cual trabajar.
-b /: define la fuente de datos (google, bing, linkedin).
-f /: la cual guarda los resultados en un archivo HTML y XML. El archivo creado se visualiza con el navegador. Es necesario indicar a continuación la ruta en la que se guardará el archivo (Por ejemplo: -f /tmp/emails.xml)

 Resultado:



Vamos a ver guardando el informe:


Una vez lanzado el comando y ejecutado, solo tenemos que copiar la ruta donde hemos guardado el mismo (en este caso: /tmp/emails.html) y copiarlo en el navegador.


martes, 2 de mayo de 2017

Hacking Wi-Fi con Airgeddon - Parte 4

Creo que en los articulos dedicados al script Airgeddon, para hacer hacking en WiFi, habéis podido ver la cantidad de posibilidades que ofrece y el gran potencial que tiene este pequeño y la vez tan grande script. Realmente esta era mi intención.

El siguiente paso es instarlo en casa y que comenceis a hacer pruebas.

Para cerrar esta serie de artículos, voy a nombrar alguna de las opciones que no he nombrado con anterioridad y que sin embargo tienen mucho que aprovechar.


No pararé mucho en el siguiente apartado: Evil Twin, porque necesitaría otros tres artículos con solo este apartado y además es un tema ciertamente comprometido.
¿Por qué?

Evil Twin = El Gemelo Diabólico
Es un punto de acceso Wi-Fi fraudulento que parece ser legítimo, configurado para escuchar las comunicaciones inalámbricas.

 Digamos que es una suplantación en directo de un punto de acceso WiFi legítimo, con unas intenciones evidentemente no tan legítimas.

Para los que no lo entiendan veamos un ejemplo.
Imaginamos un restaurante cualquiera de comida rápida, por ejemplo un Macdonald, donde la gente se suele conectar a la WiFi gratuita, con un nombre como por ejemplo: Macdonald_GranVia_Free.
Ahora imaginemos que alguien pudiese llegar, sentarse fuera o dentro del restaurante y crear un punto WiFi con el mismo nombre: Macdonald_GranVia_Free, imitando cada uno de los aspectos de la red original, pero con la diferencia de que en vez de conectarnos al restaurante, nos estaríamos conectando al equipo de alguien con malas intenciones al que le estamos ofreciendo todos nuestros datos.
Eso es un Evil Twin.


Con Airgeddon podemos generar un Evil Twin utilizando diferentes técnicas.
Como en diferentes apartados que ya hemos tocado es muy intuitivo y fácil de utilizar y configurar.
Para realizar esta práctica se requiere el modo monitor en la tarjeta inalámbrica, tener un dhcp activo u hostapd dhcpd en alguna de las opciones.


Otra de las opciones y servicios que nos ofrece Airgeddon y que hará las delicias de muchos, es la posibilidad de realizar ataques WPS (Opción de menú número 8).

El WPS (Wi-Fi Protected Setup) de los dispositivos inalámbricos entre los que destacan routers y puntos de acceso, es una característica incorporada en el estándar 802.11N para facilitar la conexión de los clientes inalámbricos a estos equipos, sin necesidad de introducir largas contraseñas de acceso. WPS además permite sincronizar los equipos de forma automática durante 60 segundos con tan sólo presionar un botón en cada dispositivo (router o AP y cliente inalámbrico).

Hace un tiempo se descubrió una vulnerabilidad que permitía crackear el código PIN del WPS, por lo que cualquier atacante ya no necesitaría crackear una contraseña WPA o WPA2 con muchos caracteres, sino que simplemente podría realizar un ataque de fuerza bruta contra el WPS que tiene tan sólo 8 dígitos. Con una longitud de 8 dígitos el número de combinaciones es de 10^8, sin embargo, la arquitectura del PIN de WPS divide el PIN en dos subpines.
El PIN1 tiene cuatro dígitos y por tanto el número de combinaciones es de 10^4. El PIN2 varía dependiendo del fabricante, en el primer caso (y más común) se utiliza el último dígito como checksum, por lo que el número de combinaciones de este PIN2 es de tan sólo 10^3, en el segundo y último caso se usaría este último dígito como PIN también, en este caso el número de combinaciones sería de 10^4.

Airgeddon nos ayudará en todo esto con un amplio abanico de posibilidades:


 Como podemos ver la imagen, solo tenemos que elegir el target u objetivo, en el punto 4 del menú y una vez seleccionado este, solo hay que decantarse por una de las opciones ofrecidas.
Entre las opciones, fuerza bruta, ataques basados en BBDD conocidas para PIN, o podemos intentar una asociación por PIN personalizado.


jueves, 27 de abril de 2017

Hacking Wi-Fi con Airgeddon - Parte 3


Después de capturar el Handshake y guardar el fichero, vamos a proceder al siguiente paso.

¿Cuál es el siguiente paso? Pues descifrarlo sin duda, ya que si no es por esto, no nos servirá para nada. Pero no os preocupeis, ya que Airgeddon, como una completisima herramienta para el hacking Wi-Fi tambien nos ayudará en esto.

Volviendo al menú principal, vemos que nos hemos estado moviendo por el punto número 5, "herramientas Handshake", pero una vez capturado el handshake, en el orden más riguroso vamos a pasar al punto 6 "Menú de desencriptado WPA/WPA2 offline".


Pulsamos pues 6 y ENTER.


















Podemos observar como Airgeddon se apoya en las herramientas "aircrack" y "hashcat" para realizar esta tarea.

Como mi idea era enseñar esta herramienta y hacer ver lo intuitiva y útil que es, no me voy a entretener en enseñar como se hacen ataques de fuerza bruta o diccionario, solo quiero que os quedeis con el concepto general y posteriormente practiqueis en casa.

Podemos ver, que una vez que pulsemos cualquiera de las cinco opciones que nos ofrece el menú, lo primero que nos preguntará es si queremos usar el último fichero que hemos guardado, o por el contrario decimos que no y elegimos cualquier otro que hayamos guardado con anterioridad.


Si nos decantamos por un metodo con el que casi con toda seguridad vamos a coseguir descifrar el fichero (fuerza bruta), la espera se nos puede hacer eterna, a no ser que tengamos toda la suerte del mundo con nosotros o el dueño del router haya sido un despreocupado, o mejor dicho ambas.
El mismo Airgeddon ya nos está dando un consejo en la parte inferior del menú:
"... podrían pasar horas, días, semanas o incluso meses hasta conseguirlo ..."

Si aún así estais concienciados para tal empresa:
-Elegís cualquiera de las dos opciones de fuerza bruta que se ofrecen (En el ejemplo elijo 2 y ENTER).


En orden de menor a mayor, a la hora de elegir, cuanto más cerca del uno este la selección menos tardará en realizarse la operación y también menor será la posibilidad de conseguir un resultado favorable.

A la hora de hacer fuerza bruta siempre digo que hay que ser consciente de a que se la estamos haciendo. Después de este menú nos preguntará también por la extensión de la clave que queremos descifrar. Dicho esto me refiero a que si nos estuviesemos enfrentando a descifrar una password de una cuenta de email, os diría que empezarais probando con contraseñas de 6 caracteres en minúsculas/mayúsculas y seguro que alguna conseguíais sacar. Pero a lo que aquí nos enfrentamos son contraseñas (salvo en algún caso) de mayor longitud, por lo cual os aconsejaría que no perdierais el tiempo y comenzaseis por un rango mínimo de 12 caracteres, y eligiendo minúsculas y mayusculas por intentar ahorrar algo de tiempo en los que tengan un nombre que denote que han sido modificados por el usuario (WiFi de Antonio) y si no sale a la primera añadiría ya números.

En el caso de las que tienen pinta de no haber sido modificadas y están con sus parámetros de origen (aunque aquí siempre recomendaré ataque diccionario) empezaría en un mínimo de 15, metiendo mayúsculas, minúsculas y números.


Una vez configurado todo esto.
ENTER y a esperar.



martes, 25 de abril de 2017

Hacking Wi-Fi con Airgeddon - Parte 2


Seguimos donde lo dejamos en la primera parte de esta entrada (1ªParte).
Dentro de nuestro terminal, con la tarjeta de red conectada, situados en el directorio en el que hemos guardado el script: airgeddon.sh

En el terminal arrancamos el script
#airgeddon.sh

Una vez que arranque, la primera vez es normal que empiece a hacer actualizaciones, a hacer peticiones de actualización en las que pedirá nuestra aprobación, etc.

Bien ya tenemos todo en marcha.
Lo primero que veremos será el menú que ofrece la herramienta.


Aunque observando los genéricos, en un primer momento nos parezca poca cosa, no nos engañamos, ya que las posibilidades que nos ofrece airgeddon son muy completas , solo hay que navegar por los submenús y ver todo lo que podemos hacer.



Como ya adelante en la primera entrada, con este script con tener la tarjeta de red conectada es suficiente. Desde aquí podemos elegir la interfaz que vamos a utilizar y al seleccionar la tarjeta, podemos gestionar si queremos usarla en modo "managed" o "monitor".

Además ya podemos observar en una primera estancia que posibilidades generales vamos a poder tocar dentro de la herramienta:
-Ataques DOS.
- Herramientas para Handshake.
-Técnicas / Herramientas para desencriptado online de WPA/WPA2.
-Ataques Evil Twin.
-Ataques WPS.

Vamos a empezar viendo las herramientas de Handshake.
Por si alguno es nuevo en la materia y no ha escuchado nunca el termino, o para aquellos que queréis dar un pequeño repaso, rescato un fragmento de Wikipedia:




Hecho este repaso, paso a resumir, que lo que vamosa a tratar es de interferir en este proceso de handshake o apreton de manos, para intentar capturar un paquete que posteriormente intentaremos descifrar por algún método como por ejemplo fuerza bruta y que nos servirá para hacernos con las credenciales de red.

En el menú seleccionamos 5 y pulsamos enter.



 Encontramos diferentes opciones dentro, ante lo cual yo recomiendo que en casa vayais probando e investigando como funcionan y que hacen cada una de ellas.

Antes de lanzar ningun ataque, lo primero es seleccionar un objetivo.


 Podemos para el barrido con Cntrl + C cuando estemos seguros que tenemos todas las redes que necesitamos o la que buscabamos en concreto.


De todas las que nos quedan listadas, deberemos de seleccionar una que tenga usuarios conectados, que quedarán diferenciadas con un (*).

 Una vez elegido el Target, volvemos a los ataques de Handshake y elegimos el que vamos a realizar.

Yo en este caso, voy a decidirme de la que tira de la herramienta aireplay, la cual he probado en diferentes ocasiones y siempre me da muy buenos resultados.

Debo de aclarar que habrá veces en que consigamos el resultado que estamos buscando a la primera y otras que sin embargo deberemos de probar varias veces e incluso diferentes técnicas.

Pulsamos ENTER



La herramienta comienza a funcionar y realizar la operación.



Cuando termine el proceso, siempre nos va a preguntar ¿conseguiste el Handshake? [y/n]
Para saber si lo hemos conseguido, debemos de fijarnos en la imagen anterior en la parte superior derecha de la ventana, donde vemos que pone: WPA handshake: 02:B6:B7:19:A5:BB

Las veces que lo consiga, veremos lo mismo (cambiando el número claro está) y las que no, veremos exactamente la misma ventana, salvo que no pondrá nada de handshake en la parte superior derecha.
En este caso, podemos elegir por volver a lanzar el comando, seleccionar otra técnica, etc.

En mi caso actual, y en este ejemplo concreto, pues lo hemos conseguido a la primera.
Pongo [y] y Enter.



Finalmente, elegimos como guardamos el fichero conseguido.
Si pulsamos Enter aceptamos la propuesta de ruta para guardar, y sino solo tenemos que escribir la ruta elegída.

_______SEGUIMOS EN LA TERCERA PARTE_________

domingo, 23 de abril de 2017

Hacking Wi-Fi con Airgeddon - Parte 1

Banner

En la entrada de hoy os voy a presentar una herramienta que a mi me gusta mucho y sin duda en el campo del hacking Wi-Fi os va a facilitar mucho las cosas.

Esa herramienta se llama Airgeddon.
Es un script de bash multi-uso para sistemas Linux para auditar redes inalámbricas.

Desde luego, yo al menos desde el día que lo descubrí no he dejado de usarlo.

 Aquí tenéis sus características, tal cual se ven en GitHub, donde podéis descargar el script:


https://github.com/v1s1t0r1sh3r3/airgeddon 
 

 
 Una vez descargado el script, vamos a configurar el entorno con el que voy ha hacer la prática.
En mi caso, como trabajo desde entorno macOS, lo haré desde VirtualBox y mi máquina Kali Linux.
No os olvidéis de configurar debidamente la tarjeta de red (adaptador inalámbrico).

Si estais en mi caso y vais a utilizar un Mac, es facil, con entrar en la configuración de la máquina, en el apartado de "USB"y añadir el filtro específico para Mac: "Apple Inc. USB-C Digital AV Multiport Adapter" (como se ve en la siguiente imagen).





Todo esto es recomendable hacerlo con la máquina virtual apagada y una vez configurado todo volver a arrancar, sino puede que no detecte la tarjeta a la primera.

Una vez dentro de nuestro Kali Linux, solo hay que lanzar un "iwconfig" para ver si ha detectado la tarjeta, como se ve en la siguiente imagen.
Como se puede ver, en la wlan0 ha sido detectada.



Haciendo un poco de repaso, llegados a este punto, en cualquier caso para trabajar con ella y poder enviar peticiones y paquetes deberíamos de levantar la tarjeta y activar el modo monitor, con:
# ifconfig wlan0 down
# iwconfig wlan0 mode monitor
Comprobamos con #iwconfig

Y lanzaríamos:
# ifconfig wlan0 up
# tcpdump -i wlan0


Pero bien, en este caso todo esto no haría falta, ya que desde el script que vamos a utilizar también podemos entre sus servicios el activar y desactivar el modo monitor a nuestro antojo de una manera más rápida y sencilla.

Una vez bajado el Script "airgeddon.sh" solo tenemos que pasarlo a nuestro entorno de trabajo y tener controlado donde lo hemos dejado.
Yo lo he guardado para esta práctica en mi escritorio y ahí es donde haré la llamada:


Y aquí lo tenemos:


SEGUIMOS EN LA SEGUNDA PARTE ...