¿Por qué es tan importante hacer túneles en las pruebas con lápiz?

6

Tengo curiosidad por el motivo por el que la tunelización es tan importante en las pruebas con lápiz.

Si uno tiene el control de una máquina en una red, al usar esa máquina, puede ejecutar aplicaciones web y de nmap y tratar de descubrir vulnerabilidades.

Entonces, ¿por qué habría necesidad de usar túneles?

    
pregunta Mark Dioes 03.09.2012 - 07:36
fuente

3 respuestas

12

La tunelización es útil porque le permite conectarse a cualquier otra máquina en la red. Una vez que comprometa una máquina interna, puede usarla como plataforma para otros ataques. La simple instalación de herramientas como nmap en la máquina comprometida no le permitirá mucha libertad en términos de explorar realmente la red, más allá de los análisis preliminares.

Obtener una conexión VPN en una red es prácticamente el Santo Grial de los túneles. Es el equivalente lógico de estar realmente conectado a esa red directamente. Como tales, las herramientas que no se pueden ejecutar fácilmente sobre un proxy, o en un sistema remoto, se pueden ejecutar con relativa facilidad. La mayoría de los protocolos VPN funcionan como una abstracción de la capa de enlace, de modo que los protocolos de red arbitrarios se pueden traducir a la red remota. Esto es extremadamente útil para herramientas como la simulación de ARP, donde un proxy SOCKS normal no permite que se envíen paquetes arbitrarios. Esto hace que sea muy conveniente simplemente arrancar su instancia de BT5 (o cualquier caja pentesting que esté usando) y saltar directamente a la red. Además, el tráfico VPN está cifrado y es probable que sea ignorado por completo por un firewall.

Alternativamente, puede usar un proxy SOCKS o incluso un servicio oculto de Tor para facilitar sus necesidades de tunelización. Estos son más limitados, debido al nivel al que transmiten el tráfico, pero son más fáciles de configurar y más fáciles de personalizar para ocultar el tráfico de un firewall / IDS.

    
respondido por el Polynomial 03.09.2012 - 08:03
fuente
6

Yo diría que la tunelización es importante debido a la libertad que permite con los tipos específicos de pruebas. En realidad, esto solo se aplica a las pruebas externas, ya que si la prueba se inicia en el túnel de red interna es menos importante (aunque podría ser útil para sacar datos de la red).

En una prueba externa, es posible que encuentre un problema que permita la ejecución de comandos (por ejemplo, inyección de SQL o quizás un desbordamiento de búfer). Lo que puede hacer con ese problema puede ser limitado (ejecutar comandos de una línea y también es probable que solo pueda usar las herramientas que ya están instaladas en el servidor vulnerable). Por lo tanto, si el objetivo de la prueba es penetrar más en la red interna, una conexión más flexible y poderosa lo hace mucho más fácil.

En muchos casos, no podrá simplemente abrir un puerto en el servidor comprometido y conectarse a ese, por lo que en ese caso, conectar una conexión a su servidor es la mejor manera de obtener un shell interactivo completo en El sistema comprometido.

Por lo general, la mayoría de los cortafuegos permitirán el acceso de salida en el puerto 443 / TCP como ejemplo, por lo que es probable que se permita la creación de un túnel desde el sistema comprometido a su servidor a través de ese puerto. Esto puede proporcionarle una cáscara interactiva completa y facilitar la penetración de la red. También como un bono adicional si usa SSL para la conexión, puede ayudar a ofuscar su tráfico de cualquier Sistema de Detección de Intrusos que esté instalado.

    
respondido por el Rоry McCune 03.09.2012 - 09:54
fuente
2

Esto está bien cubierto anteriormente, pero intentaré resumirlo.

Un sistema no puede acceder directamente a todos los demás sistemas conectados a Internet. Los hosts internos con direcciones RFC1918 a menudo solo son accesibles a través de un túnel a través de un host que une la red en la que se encuentra actualmente con la red del host objetivo.

La tunelización es una técnica útil por varias razones:

  1. Proporciona acceso a sistemas, puertos y aplicaciones que de otra forma no serían accesibles directamente para usted / su sistema.
  2. Lo ayuda a evitar dispositivos de seguridad basados en la red (en lugar de en el host) como IDS + IPS / WAF / Inspección de paquetes.
  3. Proteger los datos a medida que viajan a través de la red. Tunneling sobre SSH significa que los hosts que están olfateando / mirando el tráfico que pasa a través de ellos no pueden leer los datos en la mayoría de los casos.

Tenga en cuenta que "hacer túneles" es un término que abarca, los otros carteles cubrieron este tema bien. En términos generales, solo significa encapsular su tráfico en alguna otra forma. Un VPN, un proxy, un túnel SSH o simplemente usar netcat para crear un túnel TCP entre sistemas son todos ejemplos, aunque solo está limitado por su conjunto de herramientas en cada host. Ptunnel sería un buen ejemplo para estudiar.

    
respondido por el jcran 09.09.2012 - 22:41
fuente

Lea otras preguntas en las etiquetas