Conexión remota

MS SQL

Usamos la herramienta mssqlclient.py de Impacket:

python3 mssqlclient.py <username>@<target_ip> -windows-auth

Si la máquina atacante es Kali, el script se encuentra en /usr/share/doc/python3-impacket/examples.

Para ejecutar comandos, habilitamos xp_cmdshell:

enable_xp_cmdshell

Ya con esto, podemos ejecutar comandos de la siguiente forma:

xp_cmdshell whoami

SMB/Samba

Podemos usar la herramienta winexe para ejecutar comandos de forma remota en entornos Windows:

winexe -U '<username>%<password>' //<target_ip> cmd.exe

Si tenemos un usuario con permisos de administrador, podemos ejecutar el siguiente comando para obtener privilegios de SYSTEM:

winexe -U '<username>%<password>' --system //<target_ip> cmd.exe

Podemos usar pth-winexe en caso de que necesitemos hacer un pass-the-hash:

pth-winexe -U '<username>%<full_hash>' //<target_ip> cmd.exe

También podemos usar la opción --system para obtener privilegios de SYSTEM.

PsExec

Impacket posee un script en python que nos permite conectarnos a equipos Windows:

python3 psexec.py <username>:<password>@<target_ip>

Si la máquina atacante es Kali, el script se encuentra en /usr/share/doc/python3-impacket/examples.

Si tenemos un hash, podemos hacer un pass-the-hash con el siguiente comando:

python3 psexec.py -hashes <hash_ntlm> <username>@<target_ip>

CrackMapExec

Ejecución de comandos usando la contraseña:

crackmapexec smb <target_ip> -u <username> -p <password> -X <PS_command>

Si queremos hacer pass-the-hash, usamos el siguiente comando:

crackmapexec smb <target_ip> -u <username> -H <hash_ntlm> -X <PS_command>

WinRM (puerto 5985)

Podemos usar la herramienta evil-winrm para conectarnos al servicio WinRM.

Para instalar evil-winrm en Kali, usamos el siguiente comando:

sudo gem install evil-winrm

De la siguiente forma se puede obtener una shell mediante este servicio:

evil-winrm -u <username> -p <password> -i <target_ip>

Si tenemos el hash del usuario, podemos hacer pass-the-hash:

evil-winrm -u <username> -H <hash_ntlm> -i <target_ip>

RDP

Podemos usar xfreerdp para conectarnos a la máquina remota:

xfreerdp /v:<target_ip> /u:<username> /p:<password>

Podemos hacerlo usando pass-the-hash:

xfreerdp /v:<target_ip> /u:<username> /pth:<password>

Podemos usar las siguientes opciones para permitir copiar y pegar desde el clipboard, ajuste automático del tamaño de la pantalla, y anclar un directorio:

xfreerdp /v:<target_ip> /u:<username> /p:<password> +clipboard /dynamic-resolution /drive:<local_path>,<shared_folder_name>

SSH

Para conectarnos al puerto por defecto de SSH, usamos el siguiente comando:

ssh <username>@<target_ip>

Si el puerto es otro, tenemos que usar la opción -p:

ssh <username>@<target_ip> -p <port>

En caso de tener una llave de conexión, usamos la opción -i:

ssh -i id_rsa <username>@<target_ip>

Para pasar la contraseña junto con el usuario, debemos usar la herramienta sshpass.

Para instalar sshpass, usamos el siguiente comando:

sudo apt-get install sshpass

sshpass se usa de la siguiente forma:

sshpass -p 'password' ssh <username>@<target_ip>

Si necesitamos mandar comandos sobre SSH, estos deben ir al final del comando SSH:

ssh <username>@<target_ip> <command>

Last updated