PasteJacker

El propósito principal de la herramienta es automatizar el ataque (PasteJacking/envenenamiento del portapapeles/como quieras llamarlo) recolectando todos los trucos conocidos usados en este ataque en un solo lugar y en un trabajo automatizado, ya que después de buscar encontré que no hay ninguna herramienta haciendo este trabajo de la manera correcta 😄
Ahora, debido a que este ataque depende de lo que el usuario pegará, implementé la idea del módulo web-delivery de Metasploit en la herramienta, de modo que cuando el usuario pegue en la terminal, obtendrás una sesión de meterpreter en su dispositivo 😄
Ver tutorial en YouTube
¿Qué es PasteJacking?
En resumen, Pastejacking es un método que los sitios web maliciosos emplean para tomar el control del portapapeles de tu computadora y cambiar su contenido por algo dañino sin tu conocimiento. De la definición de The Windows club
Así que aquí lo que hice es automatizar el ataque original y añadir otros dos trucos para engañar al usuario, usando HTML y CSS (hablaré sobre ello), luego añadí sesiones de meterpreter como dije antes.
Un escenario simple para aclarar las cosas:
- El objetivo abre una página HTML servida por la herramienta y esta página tiene algo que haga que el usuario quiera copiar de ella y pegar en la terminal. Ej: instrucciones de instalación de paquetes
- El objetivo copia algo de la página y luego, en segundo plano, se reemplaza rápidamente con nuestra línea.
- El usuario pega en la terminal y antes de que note que la línea que copió ha sido cambiada:
- La línea se ejecuta por sí sola en segundo plano (Sin presionar Enter)
- La terminal se limpia.
- El usuario ve que la terminal está usable de nuevo.
- Ya has obtenido tu sesión de meterpreter en este momento.
- Todo eso ocurre en menos de un segundo y quizás el usuario piensa que es un programa malo y no lo instalará 😄
Esta herramienta utiliza 3 métodos para engañar al usuario para que copie nuestro payload en lugar del comando que copia:
-
Usando JavaScript para enganchar el evento copy y reemplazar los datos copiados.
- Ventajas :
- Cualquier cosa que el usuario copie en la página será reemplazada por nuestra línea.
- El comando se ejecuta por sí solo una vez que el objetivo lo pega sin presionar Enter.
- Desventajas :
- Requiere que Javascript esté habilitado en el navegador del objetivo.
-
Usando el atributo style de span para ocultar nuestras líneas sobrescribiéndolas.
- Ventajas :
- No requiere que Javascript esté habilitado.
- Funciona en todos los navegadores.
- Desventajas :
- El objetivo debe seleccionar todo el texto de la página o las primeras dos palabras para asegurarse de que copia nuestras líneas maliciosas ocultas.
-
Usando nuevamente el estilo span pero esta vez para hacer nuestro texto transparente y no seleccionable.
- Ventajas :
- No requiere que Javascript esté habilitado.
- Desventajas :
- El objetivo debe seleccionar todo el texto de la página para asegurarse de que copia nuestras líneas maliciosas ocultas.
- No funciona en Opera y Chrome.
¿Qué payload copia el usuario?
PasteJacker te da la opción de hacer una de estas cosas:
- Generar un backdoor de msfvenom en nuestra máquina y la línea que el objetivo va a copiar descargará el backdoor en su máquina, mediante wget o certutil dependiendo del SO, luego lo ejecuta en segundo plano sin imprimir nada en la terminal.
- Servir una línea que te da una conexión reverse netcat en la máquina objetivo ejecutándose en segundo plano, por supuesto.
- Servir tu línea personalizada como el payload web-delivery de Metasploit, añadiendo algunos toques para ocultar cualquier posible salida.
Capturas de pantalla (No actualizadas)

Instalación y requisitos
- Python 3 y el módulo setuptools.
- Sistema basado en Linux o Unix (Actualmente probado solo en Kali Linux rolling y Ubuntu 16.04).
- Requisitos de terceros como msfvenom pero solo si vas a usar la opción de msfvenom, por supuesto.
- Librería de terceros ncurses-dev para Ubuntu (Gracias a @mhaskar).
- Acceso root.
Instalación
git clone https://github.com/D4Vinci/PasteJacker.git
sudo python3 -m pip install ./PasteJacker
sudo pastejacker
Actualizando el framework o la base de datos
- En Linux mientras estés fuera del directorio
cd PasteJacker && git pull && cd ..
sudo python3 -m pip install ./PasteJacker --upgrade
Referencias
Donación
Si esta herramienta te ha sido útil, siéntete libre de agradecerme comprándome un café o más ;)

Aviso legal
PasteJacker ha sido creado para ayudar en pruebas de penetración y no es responsable de ningún uso indebido o con fines ilegales.
Copiar código de esta herramienta o usarlo en otra herramienta es aceptado siempre que menciones de dónde lo obtuviste 😄.
Las pull requests siempre son bienvenidas :D