jueves, 27 de junio de 2013

Hackeando Aviones - Planesploit




Bueno antes de empezar este post me gustaría hablar un poco hacerca de Hugo Teso, ustedes talvez diran ...¿Quien es este personaje.??...Pues esta persona es el experto en seguridad informática que ha demostrado que los sistemas de  radiodifusión y de comunicación en el direccionamiento de aviones, denominados con las sigas ADS-B y ACARS, pueden sufrir ataques informáticos a niveles críticos.Y bueno desde mi punto de vista me parece muy interesante el tema y  pues en este pequeño post, vamos a ver el procedimiento que nuestro colega ha preparado para realizar este tipo de ataque.


Entorno virtual



Todo comenzo en la conferencia Hack In The Box que se ha llevado a cabo en  Amsterdam - Alemanía. En el transcurso de su presentación  nuestro "colega" expone las vulnerabilidad a la que se encuentran expuestas los sistemas de aviones comerciales.

En su demostración nuestro colega opto por usar un entorno virtual que emula el sistema de comunicación y navegación de los aviones. Para lograr tal hazaña nuestro amigo tuvo que hacer una colisión de conocimientos y datos acerca de su experiencia en aviación y tecnologías de información para posteriormente crear un framework a quien le dio el nombre de SIMON. Posteriormente se enfocó en la creación de una aplicación a la cual le recibio el nombre de PlaneSploit, ya disponiendo de ambas herramientas su objetivo de poder obtener el control remotamente de dicho artefacto volador estaba muy cerca.




Poco a poco estaba mas cerca de poder tener el control completo del Sistemas de Gestión de Vuelo de dicho avión virtual.

Bueno ahora a continuación vamos a explicar de forma mas detallada como funciona nuestro dos amigos SIMON y PlaneSploit en dicho entorno.


Metodología de ataque.


En esta ocasión vamos a seguir la metodología de nuestro colega, la cual se expresa en el siguiente diagrama.


  • Discovery - Descubriendo.


En este módulo inicial se va a dar una pequeña introducción de los sistemas de navegación y comunicación para su posterior estudio, ya con teniendo como base lo anterior vamos a identificar aviones específicos que se adecuen a nuestro estudio.


  • Info Gather - Recopilando Información.


En este punto, tras haber enumerado y localizado objetivos específicos que estén a nuestro alcanze y que sean compatibles con nuestro enfoque de ataque, vamos a centrarnos en la recaudación de información que nos puede brindar nuestros objetivos, cabe mencionar que los ataques se sustentan en la información que hemos llegado a obtener. Una vez obtenido toda la posible información, nos a vamos a migrarla al nivel de explotación para su correcto uso.



  • Exploitation - Explotación 


En esta fase que personalmente me parece la segunda mas interesante posterior al recaudo de información, vamos a dedicarnos a explotar los sistemas, claro esta, teniendo como base  las potenciales vulnerabilidades explotables, ya sean local o a cierta distancia, con la finalidad de poder tener el control de dichos sistemas.




  • Post-exploitation - Explotaciones posteriores 

Ya para finalizar nuestro ciclo y tras haber comprometido de forma exitosa los sistemas, vamos a tratar de comprometer sistemas alternos asociados a nuestros sistemas que ya están bajo nuestro control. 

Ya para terminar solo faltaría recalcar que este proceso es de cierta forma cíclico ya que si logramos comprometer otro sistema, tendríamos que volver al inicio de nuestra metodología y comenzar una vez mas todo el trayecto.


Metodología de ataque.


1.- Discovery - Descubriendo.


ADS-B

Vigilancia dependiente automática-radiodifusión (ADS-B) es una tecnología de vigilancia para el seguimiento de las aeronaves como parte del Sistema de Transporte aéreo de próxima generación.Trabaja conjuntamente con otros sistemas con el objetivo de mejorar los sistemas de control de tráfico aéreo con las nuevas tecnologías.

Primeramente hay qye tener presente que ADS-B consiste en dos servicios diferentes: ADS-B y ADS-B In.




ADS-B difunde periódicamente información acerca de cada aeronave, tales como la identificación, posición actual, altitud, y velocidad, a través de un transmisor de a bordo. ADS-B proporciona controladores de tráfico aéreo con la información de posición en tiempo real que es, en la mayoría de los casos, más precisa que la información disponible con los sistemas basados ​​en radar actuales. Con la información más precisa, el ATC (control de tráfico aéreo) será capaz de posición y aviones independiente con una mayor precisión y la sincronización.




ADS-B In es la recepción por parte de las aeronaves de FIS-B (Información Flight Services-Broadcast) y los datos TIS-B (Información sobre el tráfico-Broadcast) y otros datos ADS-B como la comunicación directa de aeronaves cercanas. Con ADS-B, la información se envía a las aeronaves con ADS-B en, que muestra todas las aeronaves en la zona, incluso aquellos que no están equipados con la tecnología ADS-B.





ADS-B será la sustitución de radar como el método primario de vigilancia para el control de aeronaves en todo el mundo. El sistema ADS-B también puede proporcionar información de tráfico y ha generado el gobierno la información meteorológica gráfica a través de aplicaciones FIS-B TIS-B. ADS-B mejora la seguridad al hacer una aeronave visible, en tiempo real, a los ATC y para otras aeronaves ADS-B debidamente equipadas con la posición y la velocidad de transmisión de datos por segundo. Datos ADS-B se pueden grabar y descargar para el análisis post-vuelo.





ADS-B nos proporciona una mayor capacidad y eficiencia al apoyando a :


  • Una mejor gestión del flujo de tráfico ATC .
  • La fusión y el espaciamiento .
  • Auto-separación o estación mantener .
  • Aproximaciones visuales mejoradas.
  • Estrechamente espaciados aproximaciones paralelas.
  • Separación reducida en la aproximación final.
  • Reducción de separaciones aeronaves.
  • Las operaciones de superficie en condiciones de visibilidad inferiores.
  • Servicios de control de tránsito aéreo en el espacio aéreo mejorada no radar.





2.- Info Gather - Recopilando Información.


ACARS


Comunicaciones de aeronaves de direccionamiento e informe del sistema (ACARS) es un digital de enlace de datos para el sistema de transmisión de mensajes cortos, relativamente simples entre las aeronaves y las estaciones de tierra a través de la radio o por satélite. 

En la planta ACARS es utilizado por el ATC y líneas aéreas, principalmente. Por último, con el fin de enviar y recibir mensajes de los proveedores de servicios de tierra ofrecen una amplia cobertura mundial ya sea a través de comunicaciones VHF o satélite.





Una de las solicitudes iniciales de ACARS fue detectar automáticamente e informar sobre los cambios en las principales fases de vuelo a que se refiere como OOOI (Fuera de la puerta, de la tierra, en la tierra, y dentro de la puerta). Estos eventos OOOI están determinados por los algoritmos que utilizan aeronaves sensores (tales como puertas, freno de estacionamiento y sensores interruptores puntal) como entradas. Al inicio de cada fase de vuelo, se transmite un mensaje digital a la tierra que contiene la fase de vuelo, la hora en que ocurrió, y otra información relacionada, como la cantidad de combustible a bordo o el origen y destino del vuelo. Estos mensajes se utilizan para el seguimiento del estado de las aeronaves y tripulaciones.





Todo el procesamiento descrito anteriormente se lleva a cabo automáticamente por el ACARS MU y otros sistemas de aviónica asociados, sin la intervención del personal de vuelo.

Más tarde, las aerolíneas se inició la adición de nuevos mensajes para soportar nuevas aplicaciones (el clima, los vientos, las autorizaciones, los vuelos de conexión, etc) y sistemas ACARS se personalizaron para soportar aplicaciones aerolínea únicas y requisitos únicos informáticos tierra. Esto dio lugar a cada aerolínea tiene su propio ACARS única aplicación que opera en sus aviones.



Una persona o un sistema de a bordo puede crear un mensaje y enviarlo a través de ACARS a un sistema o usuario sobre el terreno, y viceversa. Los mensajes pueden ser enviados de forma automática o manualmente.



Sistemas y Proveedores de punto a punto.


El papel del proveedor de servicios de enlace de datos (DSP) consiste en lograr entregar un mensaje desde el avión hasta el sistema de extremo de tierra, y viceversa.

Dado que la red ACARS sigue el modelo de la red de télex de punto a punto, todos los mensajes que llegan a un lugar de procesamiento central. A continuación, las rutas DSP el mensaje al sistema final apropiado usando su red de líneas terrestres y estaciones terrestres.





Actualmente hay dos proveedores de servicios principales de redes de tierra en el mundo (ARINC y SITA), aunque determinados países han puesto en marcha su propia red con la ayuda de cualquiera de ARINC y SITA. Hasta hace poco, cada región del mundo con el apoyo de un único proveedor de servicios. Esto está cambiando, y ambos ARINC y SITA están compitiendo y la instalación de redes que cubren las mismas regiones.




FMS 101 - Sistema de gestión de vuelo


Sistema de gestión de vuelo normalmente se compone de dos unidades:
  • Una unidad de computir
  • Una unidad de visualización control






Unidad de visualización de control (CDU o MCDU) proporciona la interfaz hombre / máquina principal para la entrada de datos y visualización de la información.

El sistema de gestión de vuelo tiene como objetivos :

  1. navegación
  2. planificación del vuelo
  3. predicción de la trayectoria
  4. cálculo de rendimiento
  5. dirección de vuelvo




Preparando entorno de explotación

  • Objetivo : Explotar el FMS (Sistema de gestión de vuelo)

  • Método :
  1. Usando ACARS para cargar datos FMS
  2. Muchos tipos de datos diferentes disponibles

  • Amplificación del método.

1.- Software Defined Radio

El software de DEG realiza todas las desmodulación, filtrado (tanto de radiofrecuencia y de frecuencia de audio) y la mejora de la señal (ecualización y presentación binaural). Los usos incluyen todos los modulación común de aficionados: Código morse, la modulación de banda lateral única, la modulación de frecuencia, modulación de amplitud, y una variedad de modos digitales como radioteletype televisión de exploración lenta y radio paquete.





2.- Proveedores de servicios de tierra

Consiste en los servicios que se brindan cada punto ya sea de la central con el avion en vuelo, el servicio consiste en la transferencia de información sensible por parte de los dos entes.

  • Camino hacia el objetivo.

Auditoría de código aircarft y búsqueda de vulnerabilidades (código real)





Caracterísiticas del FMS.

  • Existen muchos diferentes tipos de datos para cargar, esto permite la diversidad de opciones de ataques.
  • Hay muchos fabricantes de FMS, con diversos modelos y claro esta con diversas versiones.

  • El lenguaje empleado para estos sistemas es el Ada, dicho lenguaje se usa principalmente en entornos en los que se necesita una gran seguridad y fiabilidad como la defensa, la aeronáutica, la gestión del tráfico aéreo y la industria aeroespacial entre otros.

A continuación vamos a observar los sistemas necesarios en cada proceso de un vuelo comercial.




3.- Exploitation - Explotación 


SITA/ARINC


Societe Internationale deTelecommunications aéronautiques
  • Tiene como objetivo brindar servicios de telecomunicaciones a la industria del transporte aéreo.
  • Ocupa alrededor del 90% del negocio de las aerolíneas del mundo

Aeronautical Radio, Incorporated

Es el mayor proveedor de comunicaciones de transporte y soluciones de sistemas en Aviación, aeropuertos, defensa, gobierno, salud, redes, seguridad y transporte.



Es un estándar que determina las características que se precisan para llevar a cabo intercambios de datos dentro de muchos sistemas de aviónica de aeronaves comerciales y de transporte. ARINC 429 es el bus de datos predominante en aviónica.2 Define las interfaces físicas y eléctricas para una comunicación unidireccional mediante 2 hilos independientes (puertos Tx y Rx), además de un protocolo de datos para dar soporte a una red local aviónica en un avión.




Sus principales características técnicas son:
  • La transmisión se realiza en serie, en palabras de 32 bits más un tiempo muerto denominado “gap” y mediante un par de cables trenzados y apantallados en lazo abierto “open loop”.

  • La fuente y el destino deben estar conectados mediante un par de cables trenzados y apantallados. El apantallamiento debe conectarse a masa en ambos lados de la conexión y en todos los conectores intermedios del cableado.

  • Los mensajes se transmiten de 12,5 a 100 kbit/s a otros elementos del sistema de vigilancia que son el bus de mensajes. Las características del mensaje son:

  1. La información fluye desde una puerta de transmisión hasta una o varias puertas de recepción.
  2. En ningún caso la información puede llegar hasta una puerta destinada a la transmisión.
  3. La transmisión entre 2 computadores en ambos sentidos se realiza por buses independientes.




  • Clientes de correo electrónico
  1. SMTP / POP3
  2. Lotus Note
  • Aplicaciones de escritorio, conexión a través de :
  1. X.25 -  es un estándar ITU-T para redes de área amplia de conmutación de paquetes. Su protocolo de enlace, LAPB, está basado en el protocolo HDLC.
  2. TCP
  3. Serie MQ (IBM WebSphere)
  4. MSMQ (colas de Microsoft)
  5. MS SQL Database
  6. ORACLE Database
  • Aplicaciones Web

  • Movilidad
  1. Aplicación mobil
  2. Pager / SMS
  3. Impresora
  4. SDK
  5. Estaciones


Al comienzo de esta presentación mencione acerca del framework SIMON, pues a continuación voy a explicar con las palabras de nuestro colega Hugo, como va dicho framework.




Simon es un marco de código malicioso (Framework) que podría ser utilizado para atacar y explotar el software de seguridad aérea, comparte trabajo con la aplicación llamada Planesploit.


  • Carga por etapas
  • Funciona para controlar los ADS-B/ACARS.
  1. Sube atravéz de ADS-B/ACARS.
  • Trabaja de manera persistente.
  • Stealthness (No Rootkit)
  • Acepta e inyecta :

  1. FP / DB
  2. Las cargas útiles (script)
  3. Plugins (código)
  4. Comandos
  5. Mediante dos vías de comunicación.






Bueno creo que hemos llegado al final de este pequeño post, espero que puedan haber comprendido lo sensible que son algunos sistemas cuya importancia es vital para para nuestra vida real.






Bueno sin mas que decir me despido y sera hasta la próxima.











miércoles, 19 de junio de 2013

DroidSQLi - SQLi con Android.

Poco a poco nos acercamos mas al mundo de los móviles, y pues esta herramienta esta llevando al siguiente nivel la seguridad en mobiles. DroidSQLi es considerada comercialmente la primera herramienta de inyección MySQL automatizado para Android. Esta herramienta permite probar aplicaciones basados en MySQL contra posibles ataques de inyección SQL.

Descargar DroidSQLi : Download



Requisitos : 

  1. Sitio con vulnerabilidad SQLi.
  2. Un movil Android.
  3. Herramienta DroidSQLi.


Esta herramienta es compatible con las siguientes técnicas de inyección.

  • Time based injection  - Inyección basado en el tiempo
  • Blind injection  - Inyección a ciegas.
  • Error based injection - Inyección en base a error
  • Normal injection - Inyección normal o ordinaria.

Prueba de ensayo - Error en la validación de la variable id .


Objetivo : http://10.0.01/target.php?id=1
Output - Salida :  Lista de las Base de Datos.





Consulta de tablas  :  nna_portal_db 





Consulta de columnas :  user





Información en las columnas : User y Password 




Bueno creo que esto es todo por el momento, espero que este pequeña información, les sea de utilidad.Dicho post lo he realizado para dar a conocer como se esta invadiendo de herramientas  para realizar pruebas de ataques en el ámbito de los móviles, pues según dicen por ahí, este campo va ser el nuevo centro de batallas entre malware.

Bueno me despido y será hasta la próxima.







jueves, 13 de junio de 2013

Vulnerabilidad - Full Path Disclosure - FPD - Joomla 


# Exploit Título   : Joomla Jcalpro Full Path Disclosure
# Exploit Autor   : Sky_BlaCk
# Versión           : 1.5,1.7
# Tested on        : Window and Linux
# Google dork    :  [inurl:index.php?option=com_jcalpro]


--------------------

#      ~ Explotación ~    #
-------------------------------


Concepto :

Full Path Disclosure (FPD) permiten al atacante ver la ruta de acceso al archivo webroot /. por ejemplo: /home/omg/htdocs/file/.Dicha vulnerabilidad nos puede ser muy  útil al momento de hacer un posible ataque LFI.


PoC :

http://www.sitio.com/index.php?option=com_jcalpro&Itemid=112&extmode=cal&date=2012-01-01

http://www.sitio.com/index.php?option=com_jcalpro&Itemid=112&extmode=cal&date=2012-01-01&lang= ca_ES


Recomendaciones : 

Asegúrese que la variable que intenta pasar exista y no es nulo primero. También debe asegurarse de que el nombre de la variable este escrito correctamente.

Se recomienda usar la función ($array), para asegurarse de que la variable que va a ingresar es de hecho un arreglo.









martes, 11 de junio de 2013

Redes DarkneT 


La topología de Internet esta en constante evolución y ha habido cambios dramáticos en cuanto a la accesibilidad, apareciendo periódicamente nuevos métodos en que el software malicioso se propaga y se detecta. Al mismo tiempo, los firewalls y dispositivos NAT diseñados para proteger los hogares y las empresas, están empezando a ser permeables a muchas de las amenazas a las que fueron diseñados para defenderse. En particular, los usuarios móviles actúan como portadores de programas maliciosos, puntos de acceso inalámbricos proporcionan puertas traseras a muchas redes, y aplicaciones complejas tiene agujeros abiertos a travéz de firewalls. El resultado final ha sido una proliferación de la actividad maliciosa sin ser detectados dentro de los perímetros de la red.


Una Darknet es una porción de una red personalizada y se encuentra en un determinado espacio enrutado de direcciones IP, en la cual no hay servidores ni servicios activos. Es decir, de manera externa ningún paquete debería estar dirigido contra ese espacio de direcciones. La elegancia de la Darknet es que reduce  considerablemente los falsos positivos en comparación a cualquier otro dispositivo o tecnología.


Arquitectura y Funcionamiento en una DarkNeT


El trafico malicioso generado por escaneos (Escaneo de vulnerabilidades) o la propagación de malware no utiliza nombre de dominio para localizar a sus víctimas, si no que selecionan un rango de direcciones y o escanean en busca de equipos vulnerables o ciertos exploits. Esta es justamente la wazon pro la cual se busca monitorear el tráfico de un segmento de red "Oscuro", esto es sin servicios hacia el exterior. Sim embargo, en este tipo de monitoreo tambien es posible detector tráfico correspondiente a equipos con configuracíon de red errónea, como por ejemplo mensajes de broadcast enviados a un segmente al cual no pertenece el emisor.

La arquitectura de la Darknet propuesta consiste en re-direccionar el tráfico de un cierto segmento de la red a un servidor recolector el cual interáctua con otros equipos internos, los cuales ejecutan las aplicaciones de administración, y procesamiento, en particular, clasificación / filtrado de datos y generacion de estadísticas.


Posibles Ataques Monitoreados


Existen un sinfin de ataques que se pueden realizar a los sistemas, tales como los famosos ataques DDoS ( Ataque distribuido de negación de servicio), ataques de Respuestas DNS, ataques directos a routers, escaneos de puertos mediante envio de paquetes ICMP y  ataques a servicios particulares tales como Web, Mail, SSH, FTP (archivos) entre otros. A continuación vamos hacer un pequeño recuento.

  1. Actividad sospechosa por puertos (diferentes protocolos, TCP, UDP, ICMP, etc).
  2. Tráfico relacionado con servicios específicos (SSH, WEB, DB, etc).
  3. Direcciones IP y dominios en lista negra.
  4. Ataques comunes a equipos de la red (fuerza bruta, escaneos, etc).
  5. Patrones generados por malware (escaneos, tráfico excesivo, baja de servicios).
  6. Flujo de tráfico (gusanos, virus, exploits automatizados, etc).
  7. Botnets dentro y fuera de la red.
  8. Posibles tráfico malicioso hacia redes externas (spam, phishing, etc).



Creación de una DarkNeT


Para Crear una Darknet, se deben redireccionar paquetes y solicitudes a un computador en especifico para luego hacer análisis o interactuar con el atacante para obtener resultados verídicos.


Primer Paso :


Elegir una región o segmento de direcciones IPs de la red, las cuales serán enrutadas hacia la Darknet.





Segundo Paso :


Para configurar la arquitectura del sistema, se requiere utilizar un router o un switch layer-3. La idea es que transmita todo el contenido que entre a la Darknet. Ademas se necesitas un servidor que actue como recopilador de datos y un switch ethernet para interconectar el servidor y los equipos de la Darknet. Ademas seria deseable un sensor IDS o un analizador de protocolos. El router debe ser configurado para que reenvíe el tráfico destinado a la Darknet al servidor de recolección. Para facilitar la administración, es importante contar con una interfaz ethernet adicional en el servidor recolector. Estos equipos deben estas cuidadosamente segurizados, pues recibirán tráfico claramente malicioso en forma continua.




Tercer Paso :


El servidor de recolección de datos debe entender el protocolo ARP (Address Resolution Protocol). Ademas, se debe configurar el router de manera que canalice todo el tráfico destinado a la Darknet a una única dirección IP en la interfaz Ethernet en el servidor.




Ejemplo :

Si usa un router CISCO y una red /30, el punto entre el router y la interfaz de la Darknet puede ser 192.168.2.0/30, el router de la interfaz Ethernet 192.168.2.1/30 y el servidor recolector 192.168.2.3/30. Con ello, se deben realizar los siguientes comandos de manera que todo el tráfico destinado a la Darknet llegue a 192.168.2.2 (servidor recolector).




router# conf t
router (config)# ip router   [rango interno de IP]   [mascara subnet]   [IP recolector]
router (config)# ^Z
router# wr


Cuarto Paso :


Se debe tener una herramienta de análisis de archivo de registro sincronizada para el logging del firewall. Esta puesto que los firewalls pueden fallar o apagarse accidentalmente provocando que el tráfico de la Darknet puede pasar sin filtrarse. Por ello, debemos considerar agregar rutas nulas. Un ejemplo de ellos es:




route  add-net  10.0.0.0/3 127.0.0.1-blackhole


Observamos que dependiendo del hardware, de las opciones de software y del tamaño de la Darknet, el logging podría reducir el rendimiento de la Darknet.



Quinto Paso :


Ahora que ya se tiene la idea del Darknet, se necesita almacenar la información en un formato que sea útil ára el posterior análisis. Una buena idea sería utilizar archivos binarios con formato pcap ya que una gran cantidad de aplicaciones de análisis de red pueden operar con ellos. La manera mas fácil de hacer esto es mediante tcpdump (con su característica incorporada de rotación).

Un ejemplo de un comando de tcpdump para cumplir con la rotación necesitada sería:




tcpdump  -i  [interfaz a escuchar]  -n  -w  [archivo a escribir]  -c125 


En este ejemplo, el DNS está desactivado, el archivo se escribe cada 125 millones de bytes comprometidos, y n se incrementa para nombre de archivos únicos.




Conclusiones : 


La Darknet implementada se encuentra actualmente capturando un sinfín de datos y almacenándolos en archivos. Gracias a estos datos podemos podemos estudiar el comportamiento del tráfico actual que ocurre en nuestra red. También es importante porque podemos ver la mutación que esta ocurriendo hoy en día en el campo de la seguridad, ya sea por la diversificación de códigos maliciosos. Es importante la recopilación de estos archivos, ya que nos muestran los cambios que esta ocurriendo hoy en día en las redes.




Bueno creo que eso es todo por el momento, espero que este pequeño post les sea de utilidad al momento de querer montar una Darknet o al menos poder tener conocimientos básicos del proceso que ocurre en las Darknets.