
Una herramienta de acceso remoto basada en GUI para Linux de código abierto desarrollada en C# con un payload en Python, destinada a tareas legítimas de pruebas de penetración y reconocimiento.
Mientras desarrollaba EgoDrop y DuplexSpy, logré implementar un shell interactivo dentro de una aplicación GUI basada en C#. Entonces recordé uno de mis proyectos anteriores que había sido suspendido debido a mi limitada experiencia en desarrollo en ese momento. Por lo tanto, decidí retomarlo y completarlo.
La idea de este proyecto surgió cuando estaba aprendiendo pruebas de penetración web.
Al descubrir una vulnerabilidad de RCE (Ejecución Remota de Comandos/Código), normalmente la demostramos con comandos simples de Linux (p. ej., id, whoami, ls, cat /etc/passwd), y ahí suele terminar la historia. Sin embargo, si queremos realizar una post-explotación más avanzada, como pivotear hacia la red interna, a menudo recurrimos a herramientas de shell inversa como metasploit, nc u openssl. Aunque son potentes y ampliamente utilizadas, todavía tienen ciertas limitaciones en escenarios prácticos de pruebas de penetración.
Por lo tanto, decidí desarrollar una herramienta de acceso remoto basada en GUI que pueda aprovecharse después de lograr una RCE, estableciendo un canal robusto y seguro con un shell interactivo y un administrador de archivos.
Desarrollar y mantener esta herramienta por mi cuenta es un desafío debido al tiempo limitado, los recursos y la experiencia. Como resultado, el proyecto aún puede contener defectos o fallos de diseño no descubiertos. Si encuentras algún problema al usar esta herramienta, no dudes en abrir un issue.
Si encuentras esta herramienta informativa o útil, un estrella ⭐ será muy apreciada. Tu apoyo sería una gran motivación para seguir mejorando esta herramienta.
Eden-RAT es una herramienta de acceso remoto (RAT) ligera diseñada para la etapa inicial de las pruebas de penetración.
Proporciona una interfaz gráfica de usuario (GUI) con múltiples funciones para sistemas Linux, incluyendo un administrador de archivos y un shell interactivo.
El shell interactivo permite la ejecución completa de comandos, lo que permite a los usuarios ejecutar comandos como ssh, nc, apt, pip install, vim y otros programas interactivos.
Eden-RAT soporta comunicación cifrada usando cifrado híbrido AES/RSA o TLS.
La implementación pura de AES está adaptada de:
https://github.com/bozhu/AES-Python
Una vez que un payload se conecta exitosamente al servidor Eden, carga dinámicamente módulos adicionales entregados por el servidor. Estos módulos se ejecutan mediante exec() y sus instancias de clase se registran en un registro de clases interno basado en diccionarios.
La arquitectura general se ilustra a continuación:
Este proyecto fue desarrollado puramente con fines de investigación en ciberseguridad y educativos.
No debe en ningún caso ser utilizado para actividades ilegales o no autorizadas.
El autor no se hace responsable de ningún uso indebido o daño causado por este software.
Antes de iniciar el servidor C2, necesitas instalar pycryptodome:
pip3 install pycryptodome
Después de instalar el paquete, debes generar una clave privada SSL y un certificado:
openssl req -x509 -newkey rsa:2048 -keyout key.pem -out cert.pem -days 365 -nodes
Asegúrate de que los archivos se llamen exactamente:
key.pemcert.pemFinalmente, inicia el servidor C2:
python3 eden_server.py -lvvp 4444
El servidor Eden está en funcionamiento ahora.