miércoles, 5 de abril de 2017

El libro de macOS Hacking - Ismael González D. y Daniel Herrero C.

Algunas de las personas que me conocen o que conocen mi blog saben perfectamente lo mucho que me gusta el mundo Apple. Desde hace ya algún tiempo vengo utilizando de forma habitual sus equipos y sistemas. Tanto como uso personal como profesional, ya que hasta la fecha no he tenido ninguna limitación en cuanto a hardware o software y que gracias a que la base de sus sistemas es un BSD (certificado a partir de la versión 10.5 como UNIX 03)  permite que se pueda utilizar un mac para casi cualquier cosa. Incluyendo la seguridad y el hacking.
Un día pensé que sería buena idea escribir un libro que tratara sobre hacking pero utilizando los sistemas operativos de mac, ya que existe muy poco material en español sobre este tema.

Hoy, después de mucho tiempo redactando, el libro ya se encuentra a la venta a través de la editorial de 0xword, a la cual quiero agradecer el trato recibido desde el inicio del proyecto hasta la publicación final del libro.

Imagen 1: Portada del libro macOS Hacking
 He de decir que después de mucho trabajo realizado es muy gratificante ver el resultado final. Cuando uno se pone escribir piensa que puede hacerlo de continuo y a un ritmo constante, la realidad es otra, hay días que estás más inspirado que otros, días en los que no tienes el suficiente tiempo de escribir pero tienes que escribir,  otros días que lees las páginas anteriores y decides rehacerlo todo porque no te encaja, ideas nuevas que van surgiendo, sistemas y programas que no dejan de actualizarse, o capítulos que no sabes como o donde parar porque a veces una temática da como para hacer 3 libros. Ha sido un  fuerzo que sin duda ha merecido la pena, y  del que he tenido el honor de compartir junto a mi compañero Daniel Herrero C. (@danielherrero_c). Co-Autor también de este libro macOS Hacking, que desde el minuto cero que le comenté la idea estuvo a pie de cañón sin dudarlo.

Imagen 2: Libro macOS Hacking
El libro recoge cosas como la utilización de mitm proxy, weevely, sqlmap, macports, homebrew, k0sasp, la creación de una interface virtual para capturar tráfico de un dispositivo iOS, csrutil, xattr, y mucho más. En este blog ya se han podido ver pequeñas pincelas de algunas de estas cosas.
A continuación os dejo el índice del libro.


El libro comienza haciendo un recorrido por toda la trayectoria de Apple, en concreto del sistema operativo mac. Desde sus primeros inicios como System Software hasta el más reciente macOS.

Con más de 300 páginas en las que poder tener una referencia sobre qué y cómo utilizar un mac para la seguridad.

Comprar libro macOS Hacking

martes, 8 de noviembre de 2016

BruteXSS - Identificación de Cross-site Scripting

BruteXSS desarrollada por Shawar Khan, es una herramienta escrita en python (que sólo necesita de dos dependencias Colorama y Mechanize) y que permite identificar de forma automatizada inyecciones de tipo Cross-site Scripting. Esta herramienta es posiblemente una de las más sencillas en cuanto a manejo y uso para la explotación de estas vulnerabilidades. Se trata de una herramienta que facilita el ataque a través de un asistente pudiendo parametrizar si los payloads XSS serán enviados por método GET o POST y si se utilizará el diccionario de payloads por defecto que tiene, o uno propio.

Ejemplo GET
COMMAND:  python brutexss.py
METHOD:   g
URL:      http://www.site.com/?parameter=value
WORDLIST: wordlist.txt

Ejemplo POST
COMMAND:   python brutexss.py
METHOD:    p
URL:       http://www.site.com/file.php
POST DATA: parameter=value&parameter1=value1
WORDLIST:  wordlist.txt

Img 1: BruteXSS - Ataque de Cross-site Scripting iniciado. Método POST.
La lista de payloads que tiene por defecto cuenta con un total de 25 tipos de XSS. Algo más que suficiente para realizar ataques de XSS.

Img 2: Payloads por defecto.
Tras lanzar la aplicación contra la URL a la que atacar se irán probando cada uno de los Payloads hasta determinar si alguno de ellos fue explotado satisfactoriamente. Además si la URL tiene más de un parámetro irá probando los payload del diccionario de forma recursiva.

Img 3: XSS explotado con BruteXSS.

Img 4: PoC XSS explotado con BruteXSS

Al estar diseñado en "formato" asistente ni tan siquiera tiene opciones de configuración del tipo -h --help.  Esto ya hace entender que la ejecución de la aplicación se hace de forma muy intuitiva.
Esta aplicación aun no se se encuentra en Kali Linux, aunque no creo que tarde mucho en estarlo. Igualmente se trata de una herramienta ligada al  Netsparker.

BruteXSS: https://github.com/shawarkhanethicalhacker/BruteXSS

Prueba de concepto en video



lunes, 7 de noviembre de 2016

Ojo con tu privacidad cuando haces deporte

Aplicaciones como Runtastic, Strava, Nike+ y similares se han convertido desde hace ya algún tiempo en un compañero indiscutible a la hora de hacer deporte, ya que permiten tener un seguimiento del ejercicio realizado; Rutas GPS, tiempo, distancia recorrida, histórico, mediciones estadísticas, frecuencia cardiaca y un largo etcétera.

Personalmente cuando utilicé algunas de estas aplicaciones por primera vez me hacía siempre la misma pregunta, ¿Por qué requieren de un registro?. Los datos registrados por la aplicación se podrían sincronizar automáticamente con el dispositivo (Android o iPhone por ejemplo) sin necesidad de tener que registrarse en ningún sitio. Sin embargo entiendo que el registro se realizará por otras cuestiones de peso. Aun así cada una de estas aplicaciones guarda la información estadística del usuario, a la cual se puede acceder desde la web oficial de cada una de ellas.

¿Cuántos de nosotros no hemos compartido alguna vez en alguna red social la ruta que hemos realizado, la distancia que corrimos o la cantidad de horas en bici que hicimos? Seguros que todos lo hemos hecho alguna vez o al menos lo hemos visto compartido por otra persona en Facebook.

Todos a día de hoy de una manera u otra estamos más o menos concienciados con la seguridad en internet, pero en este caso se nos escapó por un momento pensar si la información que registran y guardan estas aplicaciones queda expuesta de alguna manera al público dejando al descubierto nuestra privacidad.

Haciendo una búsqueda sencilla en Google se pueden obtener un gran número de perfiles públicos.

site:runtastic.com/es/usuarios

¿Os imagináis salir a correr y que todo el mundo pueda saber qué lugar sueles frecuentar?

Img 1: Ruta de Runtastic. Sin privacidad.

¿Os imagináis que además puedan ver las fotos que publicáis de vuestras sesiones deportivas?

Img 2: Fotos del perfil de usuario de Runtastic expuestas todo el mundo. Sin privacidad.

¿Os imagináis que mostraran un calendario con el tipo de deporte realizado, el día, la fecha, el lugar...?

Img 3: Sesiones deportivas, estadísticas abiertas al público. Sin privacidad.
Img 4: Calendario y seguimiento de la actividad del usuario. Sin privacidad por defecto.

Los amigos también son expuestos, y pueden ser vistos por cualquiera, incluso en algunos casos es posible ver esta información sin necesidad de estar registrado. 

Img 5: Amigos del perfil de usuario en Runstastic. Sin privacidad por defecto.

Muchos de los usuarios que utilizan estas aplicaciones realizan el registro a través de su cuenta de Facebook por lo que sabiendo los amigos de esta persona podremos saber posiblemente su lista de amigos de Facebook. ... -Un trabajo fácil para un ataque de ingeniería social ...

Es difícil creer como compañías tan importantes como estas no pensaron en la privacidad del usuario y su importancia dejando todo el perfil al descubierto.

Img 6: Ajustes por defecto de privacidad de Runtastic.
Aunque los pantallazos que se muestran corresponden a Runtastic probé con otras aplicaciones como Strava y todas ellas publican por defecto todos los datos del usuario.

Ya me imagino una aplicación en python para buscar usuarios en estas redes sociales al estilo de Creepy, Tinfoleak o Maltego.