Saltar a contenido

Attacking Web Applications

Attacking Web Applications with Core Impact

Este tutorial se enfoca en atacar aplicaciones web con Core Impact, que es solo uno de los vectores incluidos en la solución. Querrás empezar creando un nuevo workspace dentro de Core Impact.

Core Impact Web Application RPT

Recolección de Información

Core Impact funciona con varias otras herramientas, incluidos los escáneres de vulnerabilidades. Por ejemplo, la solución puede ingerir datos de escáneres para una aplicación web para utilizar algunos de los detalles que has recolectado allí y mejorarlos en la fase de post-explotación. Para este tutorial, comenzaremos usando Core Impact para rastrear un sitio y hacer parte de la recolección de información nosotros mismos.

Core Impact Information Gathering RPT

Las páginas que atacaremos son MetaSploitable 2 con Mutillidae, que son buenas para practicar. El primer paso es rastrear el sitio usando el RPT en Core Impact. Puedes ingresar la URL del sitio web que deseas rastrear o seleccionar “interactive web crawling”, que te brinda un poco más de flexibilidad. Mantén el resto de la configuración del asistente de recolección de información en predeterminado.

Core Impact Crawling Mode Selections

Configuración de Proxy

Ahora se ha creado el escenario y albergará todas las páginas web. Cuando abras tu escenario, te pedirá que configures tu proxy. Necesitarás cambiarlo a localhost y activar tu servidor proxy para ponerlo en modo captura.

Core Impact Proxy Settings

SQL Injection

Lo primero que haremos es SQL injection en el sitio Mutillidae e intentar iniciar sesión. Después de hacerlo, puedes volver a Core Impact y detener el sistema de rastrear la aplicación web.

Mutillidae SQL Injection Screen

Ataque y Penetración SQL Injection

En este primer ejemplo, nos centraremos en SQL injection. Toma el “Attack and Penetration” RPT y arrástralo al escenario. Deselecciona todo excepto “A1 – Injection”. Queremos probar la información de la cookie, así que asegúrate de que esté seleccionada. Cuando se trata de SQL injection, Core Impact puede probar unions, blinds, y diferentes entradas en campos para diferentes capas de fuzzing.

Core Impact SQL Attack and Penetration

Una vez terminado, Core Impact comenzará automáticamente a atacar las páginas y podremos ver activamente lo que está sucediendo. Pudimos identificar fácilmente una vulnerabilidad de SQL injection y, como ahora tenemos un agente SQL, nos dará capacidades de post-explotación.

Core Impact SQL Agent

Post-Explotación del Agente SQL

Desde el agente SQL, podemos lanzar un Command Shell o un SQL Shell. Dentro de Core Impact, podemos hacer post-explotación y recolección de información local para mostrarnos información sensible que podemos utilizar. En la carpeta “Information Gather” y “Local”, arrastra “Check for Sensitive Information using SQL” sobre tu agente. Esto nos permite buscar números de tarjetas de crédito y números de seguridad social. También puedes arrastrar “Databases Schema” al agente para identificar tablas que pueden ser vulnerables y necesitan ser saneadas.

Core Impact Local Information Gathering

Ahora podemos usar los datos del esquema para ejecutar un SQL Shell y ver si podemos identificar los números de tarjetas de crédito reales. Haz clic derecho en el agente para ejecutar un “SQL Shell” e ingresa un simple comando para ver todos los datos vulnerables. En este punto, tenemos suficiente prueba para volver a la organización y mostrar qué información es vulnerable.

Cross Site Scripting (XSS)

Para nuestro próximo ejemplo, podemos hacer otro rastreo usando el mismo escenario de antes con un rastreo web interactivo. En el sitio de Mutillidae, seleccionarás Cross Site Scripting (XSS) y DNS lookup. En este ejemplo, intentamos con facebook.com. Después de hacerlo, puedes volver a Core Impact y detener el sistema de rastrear la aplicación web.

Mutillidae Cross Site Scripting Menu

Módulo de Cross Site Scripting

Ahora tenemos la URL capturada en Core Impact y podemos ir a la sección de “Modules”. Dentro de la carpeta “Exploits” hay una carpeta “Cross Site Scripting (XSS)”. Selecciona el “XSS Analyzer" y arrástralo al escenario. Esto puede tardar un poco en ejecutarse.

Core Impact XSS

Post-Explotación de XSS

Ahora que tenemos un agente XSS, podemos usar el módulo “XSS Exploit Generator” en los agentes que tienes. Puedes mantener la configuración predeterminada. Dentro del Module Log, verás una URL que puedes usar para atacar. Asegúrate de que la configuración de tu servidor proxy esté desactivada y pega la URL en un navegador.

Core Impact XSS Post-Exploitation

Agente del Navegador

Lo que esto hace es generar un agente del navegador. Entonces, si envías este enlace a un usuario y hace clic en él, deberías poder interactuar con el navegador dentro de Core Impact. Por ejemplo, podrías poner un keylogger en el agente del navegador y rastrear lo que el usuario está haciendo.

Core Impact Browser Agent

Ahora puedes mostrar a tu organización qué aplicaciones web son vulnerables y explotables, además de los riesgos que esto conlleva.


Transcripción del Video:

  1. Introducción:
  2. Gracias a todos por unirse. Soy James Adams, ingeniero de ventas en Core Security. En la sesión de hoy, repasaremos el ataque a aplicaciones web. En algunas de las sesiones anteriores, revisamos la recolección de información a través de los tres vectores.

  3. Descripción del Ataque a Aplicaciones Web:

  4. Core Impact trabaja con el OWASP Top Ten de 2017 y es solo uno de los vectores que tenemos como parte de la información o parte de nuestro ataque. Nos enfocamos en poder probar en diferentes silos: Red, lado del cliente, aplicación web.

  5. Configuración del Entorno:

  6. Abre el workspace, dale un nombre, y por razones de seguridad, encripta tu workspace. Core Impact permite moverse fácilmente entre red, lado del cliente y aplicación web.

  7. Recolección de Información:

  8. Core Impact trabaja con varias herramientas diferentes para ofrecer valor, incluyendo escáneres de vulnerabilidades. Si no tienes un escáner, puedes rastrear un sitio con Core. Para este propósito, usaremos MetaSploitable 2 y Mutillidae.

  9. Ejemplo de SQL Injection:

  10. Empezamos con SQL injection. Inicia sesión con un nombre de usuario y contraseña, luego usa el RPT de Attack and Penetration para enfocarte en SQL injection. Core Impact probará diferentes técnicas de fuzzing para SQL injection.

  11. Post-Explotación con Agente SQL:

  12. Una vez identificado el SQL injection, Core Impact desplegará un agente SQL para capacidades de post-explotación. Puedes usar Command Shell o SQL Shell para ejecutar consultas y buscar información sensible.

  13. Ejemplo de Cross Site Scripting (XSS):

  14. Realiza un nuevo rastreo y enfócate en XSS. Core Impact capturará la URL y usará el módulo XSS Analyzer para identificar vulnerabilidades. Genera un enlace malicioso y envíalo a un usuario para interactuar con su navegador.

  15. Post-Explotación con Agente del Navegador:

  16. Con el agente del navegador, puedes realizar post-explotación como keylogging. Muestra a tu organización los riesgos y las capacidades de explotación.

  17. Conclusión:

  18. Core Impact permite mostrar no solo que una aplicación es vulnerable, sino que también es explotable, lo que resalta el riesgo involucrado. Agradecemos su tiempo y esperamos expandir las capacidades en sesiones futuras.