lunedì 29 marzo 2021

PowerShell: Riconvertire il file di testo in eseguibile (Parte 2)

Nell'articolo precedente (PowerShell: Convertire un file eseguibile in un file di testo) è stato mostrato come convertire un file eseguibile in un file di testo. L'operazione avrebbe poco senso se non fosse possibile eseguire l'operazione inversa e ritrasformare il file di testo in un file eseguibile. Anche in questo caso verrà utilizzato uno script PowerShell per certi versi simile a quello visto nell'articolo precedente.
Le istruzioni presenti all'interno dello script sono le seguenti:
    [CmdletBinding()] Param ( 
        [Parameter(Position = 0, Mandatory = $True)]
        [String]$FileTXT,
    
        [Parameter(Position = 1, Mandatory = $True)]
        [String]$FileEXE
    )
    
    [String]$dump = get-content -path "$FileTXT" -ReadCount 0
    [Byte[]] $temp = $dump -split ' '
    [System.IO.File]::WriteAllBytes($FileEXE, $temp)
    Write-Output "File convertito in $FileExe"

La prima parte riguarda la gestione dei parametri. In questo caso entrambi i parametri sono obbligatori e indicano il file di testo da convertire e il nome del file eseguibile che verrà creato. Nella seconda parte non facciamo altro che caricare tutto il contenuto del file di testo in una stringa. Successivamente dalla stringa estraiamo i byte (separati da un carattere spazio) e li carichiamo all'interno di un array di byte. Infine non resta che salvare i byte all'interno del file eseguibile con l'istruzione
[System.IO.File]::WriteAllBytes($FileEXE, $temp)

Dal seguente link è possibile scaricare lo script PowerShell Txt2Exe.ps1

Script PowerShell Txt2Exe
FIG 1 - Script PowerShell Txt2Exe





Nessun commento:

Posta un commento

I messaggi sono soggetti a moderazione da parte dell'amministratore prima della loro pubblicazione.