Transferencia de Archivos

Diferentes utilidades para las operaciones de transferencia de archivos en Linux.

Operaciones de Descarga

Codificación/Decodificación Base64

Máquina atacante

cat test.txt | base64 -w 0; echo
SGVsbG8gV29ybGQhCg==

Máquina víctima

echo "SGVsbG8gV29ybGQhCg==" | base64 -d > test.txt

Descargas web con Wget y cURL

Dos de las utilidades más comunes en las distribuciones de Linux para interactuar con aplicaciones web son wget y curl. Estas herramientas están instaladas en muchas distribuciones de Linux.

Para descargar un archivo usando wget, necesitamos especificar la URL y la opción -O para establecer el nombre del archivo de salida.

Descargar un archivo usando wget

wget https://raw.githubusercontent.com/rebootuser/LinEnum/master/LinEnum.sh -O /tmp/LinEnum.sh

Descargar un archivo usando cURL

cURL es muy similar a wget, pero la opción del nombre del archivo de salida es -o en minúscula.

Ataques sin archivos usando Linux

Descarga sin archivos con cURL

Descarga sin archivos con wget

Descargar con Bash (/dev/tcp)

También puede haber situaciones en las que ninguna de las herramientas de transferencia de archivos más conocidas esté disponible. Siempre que esté instalada la versión 2.04 o superior de Bash (compilada con --enable-net-redirections), el archivo de dispositivo integrado /dev/tcp se puede utilizar para descargas de archivos simples.

Máquina atacante

Creamos un servicor HTTP con Python.

Máquina víctima

Nos conectamos al servidor web de destino

Realizamos la solicitud HTTP GET

Imprimimos la respuesta

Descargas SSH

Linux: descarga de archivos mediante SCP

Web Upload

Podemos usar uploadserver , un módulo extendido de Python HTTP.Server módulo, que incluye una página de carga de archivos. Para este ejemplo de Linux, veamos cómo podemos configurar el uploadserver módulo a utilizar HTTPS para una comunicación segura.

Lo primero que debemos hacer es instalar el uploadserver módulo.

Iniciar servidor web

Ahora necesitamos crear un certificado. En este ejemplo, utilizamos un certificado autofirmado.

Crear un certificado autofirmado

El servidor web no debe alojar el certificado. Recomendamos crear un nuevo directorio para alojar el archivo en nuestro servidor web.

Iniciar servidor web

Ahora desde nuestra máquina comprometida, carguemos el /etc/passwd y /etc/shadow archivos.

Máquina Víctima (Linux)

Usamos la opción --insecure porque utilizamos un certificado autofirmado en el que confiamos.

Netcat

Máquina atacante

Máquina victima

Método alternativo de transferencia de archivos web

Linux: creación de un servidor web con Python3

Linux: creación de un servidor web con Python2.7

Linux: creación de un servidor web con PHP

Linux: creación de un servidor web con Ruby

Descargamos el archivo

Operaciones de Subida

SCP

Última actualización