Pentesting Thick Client Apps

October 13, 2013
Pentestes

El pentesting de aplicaciones de cliente densas no es un concepto nuevo, sino que las técnicas adoptadas son nuevas e interesantes. Me da un poco de pereza explicar qué son las aplicaciones de cliente complejas, consulte aquí para obtener más información. GTalk, Pidgin, Skype, MSN son algunos ejemplos de aplicaciones cliente complejas. En la actualidad, muchas instituciones financieras están adaptando la tecnología para realizar transacciones internas.

Los desafíos:

  • Las aplicaciones de cliente complejas típicas no se comunican a través de HTTP/HTTPS (algunas sí), por lo que no puedes interceptar el tráfico con las herramientas de proxy web normales
  • Modificación desconocida en los archivos del registro/sistema
  • Detalles técnicos desconocidos de la arquitectura
  • Manipulación de la comunicación cliente-servidor a través del cable
  • Técnicas de cifrado adoptadas por el software cliente
  • Solo lo usarán usuarios de confianza

La lista anterior solo menciona algunos desafíos a los que nos enfrentamos regularmente al evaluar a clientes importantes.


Camino a seguir:


Comprensión de la arquitectura - Las aplicaciones de cliente complejas suelen ser aplicaciones de 2 niveles, lo que significa que la solicitud se crea en el extremo del usuario (cliente) y se envía al servidor para su procesamiento. No hay servidores web ni tecnologías intermedias en el medio; se comunican directamente con la base de datos. Esto se puede identificar observando el tiempo transcurrido entre la solicitud y la respuesta o analizando el tráfico de comunicación en Wireshark.


La arquitectura también puede ser híbrida, es decir, escuchar tanto en HTTP/S como en cualquier puerto desconocido. En este caso, es posible que tengamos que usar la combinación de herramientas para interceptar y modificar la comunicación.


Interceptación y manipulación de la comunicación entre el cliente y el servidor - Las dos herramientas de código abierto más populares son EchoMirage e ITR. La herramienta que más prefiero es Echomirage, por su simplicidad. Se conecta directamente con el ejecutable de su cliente y comienza a interceptar el tráfico sobre la marcha. También hay una opción para conectar el exe de su cliente con su proceso asociado. A continuación te explicamos cómo puedes realizar los pasos anteriores:

Una vez que lo haga correctamente, se aplicarán todas nuestras comprobaciones de seguridad de las aplicaciones tradicionales. Si tiene suerte, es posible que vea consultas SQL pasando por nuestro interceptor Echomirage.Almacenamiento local de información confidencial


La información confidencial puede ser contraseñas en texto sin cifrar, configuración del servidor, detalles personales del usuario, detalles financieros del usuario, etc. Busque los archivos.ini, cfg, dat, .log en la carpeta de la aplicación para obtener información confidencial relacionada con la aplicación. Por lo general, encontrará la configuración del servidor en los archivos.ini.


Análisis de modificaciones de archivos y registro/ingeniería inversa - Otras dos herramientas más populares son Filemon y Regmon de sysinternals. Estas dos herramientas ahora están empaquetadas en una sola como Monitor de procesos. Estas herramientas identifican los archivos a los que se accede o se modifica el registro al hacer doble clic en los ejecutables de sus clientes. En este caso, debe buscar archivos interesantes e investigar más a fondo; el nombre del archivo puede indicarle qué archivo debe investigar. Ayudará en la ingeniería inversa de las aplicaciones.


Regmon muestra todas las entradas de registro a las que se accede al hacer doble clic en los ejecutables de sus clientes. Utilice la función de búsqueda en el registro para encontrar palabras clave, contraseñas e información confidencial.


¡¡¡Feliz lectura!!!

Share this post
Seguridad de Wordpress
Análisis de malware
Herramientas y técnicas
Pentestes
PTAAS
Suscríbase a nuestro boletín

Suscríbase a nuestro boletín hoy mismo y mejore sus conocimientos con información valiosa. ¡Es rápido, fácil y gratuito!

Be a Team Player
¡Gracias! ¡Su presentación ha sido recibida!
¡Uy! Algo salió mal al enviar el formulario.
Latest blogs

Latest updates in cybersecurity services

View All
Blacklock Blog Image