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.

lunes, 12 de septiembre de 2016

Como aprender Hacking - Roberto Garcia y 1GbdeInfo

Cuando queremos empezar en el mundo del hacking y la seguridad informática siempre tendemos a hacernos le eterna pregunta de ¿Cómo puedo empezar? o ¿Cómo aprendo hacking?.
Sin duda una de las mejores formas que conozco y con la que coincido con todo el mundo que hablo dentro del sector, es  la de ser una persona muy autodidacta y proactiva, intentando aprender por cuenta propia e intentando poner en práctica todo lo que se vaya aprendiendo.
Por este motivo es que me considero muy fan de esas personas que de alguna manera u otra publican sus conocimientos a través de blogs, papers, conferencias, etc. Pienso, personalmente, que el conocimiento está para compartirlo y no para guardarlo como secreto. En este sentido, la información de la que disponemos en internet puede ser muy "amplia", por decirlo de alguna manera. Es cierto que todo se encuentra en internet, pero en muchas ocasiones nos encontramos con dos situaciones completamente dispares; o bien encontramos excesiva información y por tanto seguimos igual de perdidos a la hora de intentar formarnos y aprender, o bien se encuentra muy poca información sobre lo que estamos buscando y nos quedamos exactamente igual. Esto a veces nos deja con la sensación de estar perdiendo muchas horas frente al ordenador para buscar algo que al final no encontramos.

Desde hace algún tiempo vengo siguiendo el Blog 1Gb de Info, de Roberto Garcia (@1GbDeInfo),  y he de decir que sus entradas relacionados con el hacking y la seguridad son una de las mejores formas de aprender.

Roberto Garcia es experto en seguridad y hacking dentro del departamento de hacking ético de InnoTec System. Posee certificaciones como la del CEH. Y le avalan más de 12 años de experiencia dentro del sector TI.
Por otra parte ha sido ponente en varias conferencias y se le han atribuido algunos reconocimientos  Hall of Fame por el reporte de vulnerabilidades. La más reciente en el sitio de VMware.
Además, su última contribución a la seguridad es como organizador del evento  EastMadHack.org.

En su blog, donde publica de forma regular y constante, podemos encontrar, además de sus continuas investigaciones y un sin fin de artículos muy detallados sobre como realizar ataques desde cero, como poner en práctica una técnica hacking o como aprender a utilizar una determinada herramienta para lograr un ataque.

Su trabajo y sus investigaciones son dignas de admirar. En sus últimas publicaciones, ha redactado una serie de WriteUp para distintos WarGames, donde explica muy en detalle como solucionar dicho reto hacking, desde el principio del juego hasta el final. Mostrando las adversidades con las que se encontró y como llegó a resolverlas.
Posiblemente una de las mejores formas de aprender sea así, primero leyendo estos WriteUp y después ponerlo en práctica hasta que se vaya cogiendo soltura.

Últimos WriteUp de 1Gb de Info:

Solución al reto The Necromancer
Solución al reto NullByte

Pero su blog, como indicaba antes, no se centra solo en la publicaciones de WriteUp o papers, sino que ademas tiene otra serie de entradas que explican y detallan el uso de herramientas y técnicas desde cero.

Por citar algunas, nombraré sus últimos artículos más interesantes relacionados con el hacking:

Hacking desde 0, hoy brute force (básico) 
Hacking desde 0. Hoy, file Inclusion (high level) 
Hacking desde 0. Hoy, file upload (medio) 
Hacking desde 0. Hoy, command injection Windows version (nivel medio) 
Hacking desde 0. Hoy, XSS high level 
Hacking desde 0. Hoy, SQLi medio (manopla style) 
Hacking desde 0. Hoy, command injection (parte 2, intermedio) 
Hacking desde 0. Hoy, command injection (parte 1, básico) 
Hacking desde 0. Hoy SQL Injection (manual)

Finalmente comentar que este blog, con una trayectoria de más de 4 años de antigüedad,  es una fuente de información fiable dentro del mundo de la seguridad informática y hacking. Sobre todo si lo que queremos es aprender y estar en constante evolución.