Convertir EXE a scripts Batch/PowerShell
Convertir EXE a scripts Batch/PowerShell
La herramienta exe2hex (a menudo referida como exe2hexbat) es una utilidad de Kali Linux diseñada para convertir archivos ejecutables de Windows (.exe) en scripts de formato Batch (.bat) o PowerShell (.ps1).
Su uso principal es el movimiento lateral y la exfiltración de datos durante pruebas de penetración. Permite transferir un binario a una máquina víctima incluso si solo tienes acceso a una consola de comandos limitada (donde no puedes descargar archivos directamente).
¿Cómo funciona?
El concepto es simple:
Convierte el archivo binario en una serie de comandos de texto (hexadecimal).
Crea un script que, al ejecutarse en la máquina destino, reconstruye el archivo
.exeoriginal utilizando herramientas nativas de Windows comodebug.exe(en sistemas antiguos) o PowerShell.
Instalación en Kali Linux
Si no la tienes instalada, puedes obtenerla fácilmente:
sudo apt update
sudo apt install exe2hexbat
Comandos y Uso Común
La sintaxis básica es: exe2hex -i [archivo_origen] -o [archivo_destino].
1. Convertir un EXE a un archivo Batch (.bat)
Este comando crea un script que utiliza el comando debug o redirecciones de eco para reconstruir el archivo.
exe2hex -i mibindario.exe -b mibindario.bat
2. Convertir un EXE a PowerShell (.ps1)
Esta es la opción más común y moderna, ya que PowerShell está presente en casi todos los entornos Windows actuales.
exe2hex -i mibindario.exe -p mibindario.ps1
3. Comprimir el archivo (Opcional)
Si el ejecutable es muy grande, puedes usar el flag -c para comprimirlo antes de la conversión, lo que reduce el tamaño del script final.
exe2hex -i mibindario.exe -p mibindario.ps1 -c
Ejemplo de flujo de trabajo
En Kali: Tienes un payload (ej.
shell.exe). Ejecutasexe2hex -i shell.exe -p script.ps1.Transferencia: Copias el contenido de
script.ps1(que es puro texto).En la Víctima: Pegas el texto en la terminal o creas el archivo. Al ejecutarlo, el script "escribe" el
shell.exeen el disco de la víctima.Ejecución: Ahora tienes el binario original listo para ser ejecutado en el sistema objetivo.
¿Por qué se usa?
Bypassing: Ayuda a evadir firewalls que bloquean la descarga de archivos ejecutables, pero permiten la entrada de texto plano.
Simplicidad: No requiere herramientas externas en la máquina víctima (usa lo que ya trae Windows).
Advertencia: Esta herramienta debe usarse exclusivamente para fines educativos y pruebas de penetración autorizadas.