Wireless Recon & Attack Visualization Techniques

Para realizar ataques efectivos y silenciosos es crucial realizar una extensa fase de recogida de información sobre el objetivo con el fin de identificar los vectores de ataque. En este hipotético ejemplo vamos a analizar la seguridad de redes wireless utilizando técnicas de visualización.

To execute effective and co vert attacks is crucial to perform an extensive information gathering phase of the target to identify the attack vectors. In this hypothetical example we are going to analyze the security of wireless networks using visualization techniques.

Para la fase de reconocimiento tenemos un amplio abanico de herramientas como son kismet, la suite de aircrack-ng, Netstumber, etc. Como siempre todas las herramientas tienen sus pros y sus contras y es una cuestión de gustos. Personalmente me gusta aircrack-ng y es la que vamos a utilizar para capturar la información en tránsito.

For the reconnaissance phase we have a wide range of tools such as kismet, aircrack-ng suite, Netstumber, etc. As always all tools have their pros and cons and it is a matter of taste. I personally like aircrack-ng and it is what we are going to use to capture the information in transit.

Partimos de que ya hemos capturado la información mediante airodump-ng y usamos una nueva herramienta llamada airgraph-ng incluida en la suite para visualizar la información. Para ello ejecutamos los siguientes comandos:

We assume that we have already captured information through airodump-ng and use a new tool called airgraph-ng included in the suite to display the information. To do this, we run the following commands:

img1_vwr

Primero ejecutamos el programa airgraph-ng con el parámetro “-i” especificando el fichero obtenido mediante airodump-ng y con el parámetro “-g” con la opción “CAPR” que significa “Client – AP Relationship”, la relación entre clientes y AP.

Y éste es el resultado:

We first run the program airgraph-ng with the parameter “- i” specifying the file obtained from airodump-ng and with the parameter”- g” using “CAPR” which means “Client – AP Relationship”, the relationship between clients and AP.

And this is the result:

img2_vwr

En la imagen podemos apreciar 2 Access Point (AP) protegidos mediante WEP ;) y cada uno tiene un cliente asociado respectivamente. De forma rápida podemos analizar la información obteniendo número de AP, clientes, seguridad, canales y nombres de los AP.

Ahora hagamos lo mismo pero cambiando el parámetro “-g” por CPG que significa “Common Probe Graph”, para identificar los SSID que están buscando los clientes.

In the image we see 2 Access Point (AP) WEP protected ;) and each has a customer associated respectively. Quickly we can analyze the information and grasp the number of AP, clients, security, channels, and names of the AP.

Now we do the same but changing the parameter “-g” to GPC which means “Common Probe Graph” to identify the SSID that clients are probing for.

img3_vwr

Y ahora podemos ver lo siguiente:

And now we can see the following:

img4_vwr

Los círculos blancos son clientes y los círculos azules son SSID. Si observamos la imagen podemos ver clientes que apuntan al mismo SSID, seguramente el AP al que están asociados, pero también podemos extraer más información interesante como dónde ha estado una persona por los SSID ya que revelan información geográfica. Podríamos empezar a crear un perfil del objetivo.

Airgraph-ng utiliza diferentes colores para los AP en función del método de encriptación como amarillo para WEP y rojo para AP abiertos.

The white circles are clients and the blue circles are SSID. If we look at the image we see clients targeting the same SSID, surely they are associated to that AP, but we can also draw more interesting information such as where a person has been by the SSID that reveal geographic information. We could begin to create a profile of the target.

Airgraph-ng uses different colors for the AP depending on the encryption method as red for open AP and yellow for WEP.

img6_vwr

En la imagen podemos ver 6 AP y 7 clientes. Uno de los AP esta en rojo que significa que el AP está abierto y además vemos un cliente asociado ;)

Los fans de Maltego están de enhorabuena, ya que incorpora la capacidad de realizar análisis visuales de redes wireless en conjunto con aircrack-ng. Os mostramos el gráfico anterior mediante Maltego.

In the image we can see 6 AP and 7 clients. One of the AP is in red which means that the AP is open and we also see a client associated ;)

Maltego fans are in luck because it incorporates the ability to perform visual analysis of wireless networks in conjunction with aircrack-ng. We are using the previous graphic with Maltego.

img8_vwr

Donde vemos un AP abierto (verde), varios AP encriptados con WEP (azul) y clientes (marrón). Maltego proporciona un entorno ideal para realizar análisis de grandes cantidades de información y combinarlo con técnicas de Open Source Intelligence (OSINT). Haciendo un zoom podemos ver la imagen con mayor detalle.

We see an AP opened (green), several AP encrypted with WEP (blue) and clients (Brown). Maltego provides an ideal environment to perform analysis of large amounts of information and combine it with techniques of Open Source Intelligence (OSINT). Making a zoom we can see the image in greater detail.

img9_vwr

Como podemos ver en el artículo las técnicas de visualización nos ayudan a ser más efectivos y reducir el tiempo de análisis significativamente. Ahora ya contamos con una visión de los vectores de ataque y podemos optar por diferentes estrategias como:

  • Atacar el AP abierto
  • Atacar alguno de los AP encriptados con WEP
  • Atacar cualquiera de los clientes
  • Meter un AP malicioso
  • Interferir la comunicación entre AP y cliente

 Una vez comprometido el AP o cliente podríamos continuar la intrusión combinando otros ataques de redes y sistemas para conseguir nuestro objetivo.

¿Qué técnicas de visualización y herramientas te gusta utilizar para tus análisis?

As you can see in the post visualization techniques will help us be more effective and significantly reduces analysis time. Now we already have a view of the attack vectors and we can choose different strategies such as:

  • Attacking the open AP
  • Attack any of the AP encrypted with WEP
  • Attack any of the clients
  • Put a malicious AP
  • Jamming AP-client communications

Once the AP or client is owned we could continue the intrusion by combining other network and system attacks to achieve our objective.

What visualization techniques and tools do you use for your analysis?

— Simon Roses Femerling

Posted in Pentest, Security, Wireless | Tagged , , , , , , , , , , , | Leave a comment

Source Conference: Boston Agenda & Barcelona CFP

Si estas en US no te pierdas la conferencia SOURCE con su increíble agenda: http://www.sourceconference.com/index.php/boston2010/sb2010-schedule

Y si estas por Europa pues te interesa venir a SOURCE Barcelona: http://www.sourceconference.com/index.php?option=com_rsform&formId=18&Itemid=99999

Nos vemos!!! :)

If you are in US don’t miss the SOURCE Conference with its incredible schedule: http://www.sourceconference.com/index.php/boston2010/sb2010-schedule

And if you in Europe you should come to SOURCE Barcelona: http://www.sourceconference.com/index.php?option=com_rsform&formId=18&Itemid=99999

See you around!!! :)

— SRF

Posted in Conference, Security | Tagged , | Leave a comment

Attack Surface Analysis Infinitum

En cualquier revisión de seguridad ya sea un test de intrusión, revisión de una aplicación web o de código fuente el Attack Surface Analysis (ASA) es una poderosa metodología que podemos utilizar para identificar los vectores de ataque del sistema. Personalmente siempre realizo este ejercicio en cualquier proyecto para determinar los puntos vulnerables y luego otro ejercicio llamado Attack Surface Reduction (ASR) para evaluar y mitigar los vectores de ataque.

In any security review whether is a pentesting, a web application or source code review Attack Surface Analysis (ASA) is a powerful methodology that we can use to identify the system attack vectors. Personally I always do this exercise in any project to determine the vulnerabilities and then another exercise called Attack Surface Reduction (ASR) to assess and mitigate attack vectors.

Por lo que podemos definir ASA como un análisis sistemático del sistema para identificar los vectores de ataque y ASR como el proceso de validación y mitigación de los vectores de ataque.

We can define ASA as a systematic analysis of the system to identify attack vectors and ASR as the process of validation and mitigation of attack vectors.

Las organizaciones tienen multitud de vectores de ataques desde sus redes corporativas, aplicaciones, personas, etc. que pueden ser explotados. Los atacantes solo necesitan encontrar un vector de ataque que les permita conseguir su objetivo mientras que los defensores deben identificar todos los vectores de ataques y realizar un ASR.

Organizations have many attack vectors from their corporate networks, applications, people, etc. that can be exploited. Attackers just need to find a single attack vector that enables them to achieve their goal while defenders must identify all attack vectors and perform an ASR.

Como dice un proverbio chino “Si das pescado a un hombre hambriento, le nutres una jornada. Si le enseñas a pescar, le nutrirás toda la vida”, veamos algunos ejemplos prácticos de ASA. 

As said by a Chinese quote “Give a man a fish and you feed him for a day. Teach him how to fish and you feed him for a lifetime”, let’s look at some practical examples of ASA.

ASA Corp. Network

El siguiente grafico es un diagrama de una red corporativo típico que podemos encontrar en muchas organizaciones.

The following graphic is a diagram of a typical corporate network found in many organizations.

visio%20diagram

http://oahucomputers.com/_library/images/visio%20diagram.jpg

 Realizando un ASA superficial algunos vectores de ataque podrían ser:

  • ¿Está el Firewall y/o routers correctamente configurados? ¿Tienen vulnerabilidades?
  • ¿Cuál es la relación de confianza de las oficinas remotas?
  • ¿Atacar el Access Point (AP) y/o a los clientes?
  • ¿Acceder a un ordenador portátil, PDA y/o Smartphone?
  • ¿Atacar a los clientes (navegador, ficheros malicioso, email, etc.)?
  • ¿La postura de seguridad de los servidores (parches, configuraciones, etc.)?
  • ¿Atacar la red?

Performing a superficial ASA some attacks vectors could be:

  • ¿Is the Firewall and/or routers properly configured? ¿Have vulnerabilities?
  • ¿What is the trusted relationship of remote offices?
  • ¿Can you attack the access Point (AP) and/or clients?
  • ¿Having access to a laptop, PDA or Smartphone?
  • ¿Can you attack clients systems (browser, malicious files, email, etc.)?
  • ¿What is the security posture of servers (patches, configurations, etc.)?
  • ¿Can you attack the network?

 Herramientas / Tools

ASA Web App

En este ejemplo realizaremos un ASA de una aplicación web.

In this example we will make an ASA of a web application.

web

Realizando un ASA superficial algunos vectores de ataque podrían ser:

  • ¿Es el usuario el usuario? ¿Puede el usuario realizar mas acciones de las necesarias?
  • ¿Hasta dónde llega el admin?
  • ¿Servidor web inseguro?
  • ¿Aplicación web desarrollado sin SDL-LOB?
  • ¿Comprometer la información en tránsito (MITM) y/o en reposo?
  • ¿Atacar la base de datos?
  • ¿Cómo gestiona la aplicación la información?

Performing a superficial ASA some attacks vectors could be:

  • ¿Is the user the user? ¿Can the user perform more actions than necessary?
  • ¿How far can the admin go?
  • ¿Insecure web server?
  • ¿Was the web application developed without SDL-LOB?
  • ¿Can you compromise information in transit (MITM) and/or rest?
  • ¿Can you attack the database?
  • ¿How the app manages information?

Herramientas / Tools

ASA Code Review

En una revisión de código fuente el ASA podría ser:

  • ¿Lee la aplicación de ficheros, sockets, registro, memoria compartida, etc.?
  • ¿Realiza algún tipo de autenticación y autorización?
  • ¿Encripta información? ¿Algoritmo de cifrado?
  • ¿Tiene código antiguo?
  • ¿Interactúa con otras aplicaciones?
  • ¿Qué permisos necesita para ejecutarse?
  • ¿Tecnologías que utiliza la aplicación?

For a code review source ASA could be:

  • ¿Reads the application from files, sockets, registry, shared memory, etc.?
  • ¿Does some kind of authentication and authorization?
  • ¿is information encrypted? ¿What encryption algorithm?
  • ¿Have the app old code?
  • ¿Does the app interact with other applications?
  • ¿What permissions it needs to run?
  • ¿What technologies is the app using?

Herramientas / Tools

Lo cierto es que me he quedado muy lejos de realizar un ASA completo pero como bien refleja el título de este post existen multitud de vectores de ataque en las organizaciones pero es un ejercicio que debemos realizar a consciencia y constantemente.

Para ello tenemos mucha documentación, metodologías (Attack Trees, Threat Models, etc.) y herramientas a nuestra disposición.

¿Y vosotros como realizáis un ASA en vuestras revisiones de seguridad?

The truth is that I’m far away for a full ASA but as reflected in the post title there are many different attack vectors in organizations but is an exercise we must perform consciousness and constantly.

We have lots of documentation, methodologies (Attack Trees, Threat Models, etc.) and tools at our disposal.

¿How do you do your ASA in your security reviews?

Links:

— SRF

Posted in Microsoft, OWASP, Pentest, SDL, Security, Threat Modeling | Tagged , , , | Leave a comment