¿Cómo y qué tipo de paquetes diseñados se utilizan en las pruebas de penetración?

Hay artesanía y artesanía.

Técnicamente, interceptar el tráfico HTTP GET / POST para modificar los valores internos antes de enviarlos al servidor es la creación de paquetes. En ese caso, podría usarse para verificar que la seguridad no solo se “imponga” en el lado del cliente. Si veo que el tráfico sale de mi navegador con una cookie o un parámetro que dice “admin = 0”, puede estar seguro de que lo intentaré con el administrador configurado en 1.

Ahora, crear paquetes desde cero (marco de ethernet, datos de IP, datos de tcp / udp, etc.) le brinda más granularidad. Es útil cuando quieres ver si las cosas se rompen cuando les hablas de una manera extraña. Supongamos que detecta un dispositivo de red que maneja el tráfico de Vlan. ¿Qué sucede si cambias la etiqueta? ¿Qué sucede si envía paquetes fragmentados de una manera extraña? Érase una vez que se podía pasar por alto un cortafuegos fragmentando los paquetes de tal manera que ninguna de las partes activaría las reglas, pero si juntaba ambas partes, la política debería haber bloqueado si se hubieran enviado en un solo paquete. También puede hacer su propio escáner web / exploit utilizando paquetes especialmente diseñados para verificar si los objetivos son vulnerables.

Otra cosa que se me ocurre es la exfiltración de datos y el sigilo general. Si trabaja asumiendo que su objetivo tiene un especialista en seguridad paranoico que mantiene su teléfono cerca y siempre está listo para entrar en caso de que su IDS / IPS comience a quejarse de que el enemigo está en la puerta (o ya está dentro), entonces quiere volar por debajo del radar. ¿Cómo haces eso? Puedes aprovechar el tráfico de otra persona (pero eso requiere una infraestructura ya existente) o puedes tratar de hacerte discreto al quedarte con la multitud. Si veo una gran cantidad de tráfico que sale de una subred específica durante el horario de oficina (por ejemplo, muchos desarrolladores navegan por el stackoverflow), entonces siempre puedo intentar ocultar algo de tráfico creando paquetes para que:

  1. Parece que provienen de la misma subred
  2. Parece que se ejecutan las solicitudes DNS de fábrica para algún subdominio stackoverflow o https.
  3. Contiene datos que quiero exfiltrar.

Ahora, dependiendo del tipo de arquitectura de seguridad, esto podría explotar fácilmente, por lo que podría querer usar algo completamente diferente. Tal vez…

¡Paquetes de ping hechos a mano!

Esos son bastante fáciles de hacer y le permiten enviar datos por cable mientras los oculta como tráfico ICMP simple.

Si controlo un enrutador, también podría interceptar y reescribir el tráfico SNMP para que el administrador no crea que algo anda mal (no, no he estado enviando 50 gigas de IP por el cable, sigue caminando, nada que ver aquí).

Esto no es más que una simple descripción de lo que se puede hacer y estoy seguro de que otras respuestas cubrirán muchas más posibilidades. La conclusión principal es que si puedes crear paquetes, obtienes acceso a muchas más cosas que pueden romperse o comportarse de una manera que no deberían. También puede mentirle al equipo de monitoreo, pero es mejor que mantenga sus mentiras consistentes, de lo contrario las cosas saldrán mal.

Depende de lo que busquemos lograr en las Pruebas de penetración.

Para pruebas de penetración de aplicaciones web:

Interceptamos las respuestas y solicitudes HTTP para lograr una variedad de exploits desde la manipulación de parámetros, secuencias de comandos de sitios cruzados, inyecciones SQL, etc.

Utilizamos “Proxies interceptores” como Burp, WebScarab, Paros, etc.

Burp Suite: interceptando y modificando solicitudes y respuestas HTTP

Para la pila TCP / IP general:

Si intento realizar secuestros de sesión, desbordamientos de búfer, DoS o incluso huellas dactilares, como soy de la vieja escuela, confío en HPING, que puede ayudarlo a elaborar paquetes con detalles minuciosos.

Para algunas pruebas, debemos inyectar paquetes mal formados con marcas o sumas de verificación incorrectas o manipular los encabezados para que podamos crear paquetes con una variedad de herramientas.

Ejemplo:

Consulte este enlace a continuación sobre cómo lograr DoS mediante la creación de paquetes utilizando HPING

DOS usando hping3 con IP de origen aleatorio en Kali Linux

TL: DR; La creación de paquetes es una de las cosas que debe aprender para cualquier Pen Tester decente y su aplicación se utiliza para una variedad de exploits y actividades de prueba.

Para comenzar en la creación de paquetes, uno debe estar bien versado con TCP / IP Stack.