Bashfuscator es un framework modular y extensible escrito en Python 3 para ofuscar Bash. A través de esta herramienta dispondremos de muchas formas diferentes de hacer que los one-liners o scripts en bash sean mucho más difíciles de entender. Esto se logra generando un código Bash aleatorio y enrevesado que, en tiempo de ejecución, se evalúa en la entrada original y la ejecuta. Bashfuscator hace que la generación de comandos y scripts Bash muy confusos sea fácil, tanto desde la línea de comandos como desde una librería de Python.
El propósito de este proyecto es dar a un Red Team la capacidad de evitar las detecciones estáticas en un sistema Linux, y el conocimiento y las herramientas para escribir mejor las técnicas de ofuscación de Bash. Aunque también este framework fue desarrollado teniendo en cuenta al Blue Team, ya que puede generar fácilmente miles de comandos o comandos ofuscados únicos para ayudar a crear y probar las detecciones de la ofuscación de Bash.
Soporte de payloads
Aunque Bashfuscator funciona en sistemas UNIX, muchos de los payloads que genera no lo harán. Esto se debe a que la mayoría de los sistemas UNIX utilizan utilidades basadas en BSD, y Bashfuscator fue construido para funcionar con utilidades basadas en GNU. En el futuro, se puede agregar el soporte de payload BSD, pero por ahora los que se generan con Bashfuscator deberían funcionar en sistemas GNU Linux con Bash 4.0 o más reciente.
Requisitos de instalación
Bashfuscator requiere Python 3.6+.
En una distribución basada en Debian, ejecuta este comando para instalar las dependencias:
sudo apt-get update && sudo apt-get install python3 python3-pip python3-argcomplete xclip
En una distribución basada en RHEL, ejecuta este comando para instalar las dependencias:
sudo dnf update && sudo dnf install python3 python3-pip python3-argcomplete xclip
Luego, ejecuta estos comandos para clonar e instalar Bashfuscator:
git clone https://github.com/Bashfuscator/Bashfuscator
cd bashfuscator
python3 setup.py install --user
Solo se admiten las distribuciones basadas en Debian y RHEL. Aunque Bashfuscator ha sido probado en algunos sistemas UNIX no llega ser todavía compatible.