Powershell + Javascript para formar la JSRat

Hace unos años, Chema Alonso y Manuel Fernández trabajaron el concepto de la Javascript Botnet , exponiéndola en diferentes congresos int...

Hace unos años, Chema Alonso y Manuel Fernández trabajaron el concepto de la Javascript Botnet, exponiéndola en diferentes congresos internacionales. Poco después, en el libro de Hacking a dispositivos iOS se mostraba el cómo llevar a cabo esta prueba de concepto y se podía observar como las consecuencias eran fatales para cualquier dispositivo que navegase por la red. Este hecho tiene que ver con el artículo de hoy, ya que hoy en día tenemos diferentes soluciones para utilizar Javascript como un payload y poder utilizarlo para lograr el control de una máquina, dentro del contexto de pentesting en un proyecto de hacking ético.
El investigador Casey Smith, originalmente, desarrolló un prototipo de herramienta que utiliza Javascript como un payload y permite conectar contra un servidor web que se encuentra a la escucha. Un investigador de seguridad llamado 3gstudent extendió las funcionalidades de la herramienta de Casey Smith para que ésta trabajase con Powershell, añadiendo algo de funcionalidades extra. Existen más variaciones de la herramienta, por ejemplo, una en Python. En el caso de la herramienta en Powershell está basada en PoshC2.
La herramienta JSRat es un Command and Control o C&C, el cual utiliza Javascript y el protocolo HTTP para ejecutar payloads y tener comunicación entre el servidor y las máquinas comprometidas. Como comenté anteirormente, hay dos implementaciones, una en Powershell y otra en Python. Son totalmente embebibles en el Pentesting con Powershell y en el Pentesting con Python.

Jugando con JSRat y PoshC2 en Powershell
El esquema de JSRat y PoshC2 es sencillo. Tenemos un servidor, el cual será ejecutado en nuestra Powershell, con privilegios. Por otro lado, están los hosts que pueden haber sido comprometidos o que ejecuten el código Javascript desde cualquier parte del sistema.
En primer lugar, vamos a ejecutar en un Windows 10 el script JSRat.ps1. Esto nos deja el puerto 80 del equipo abierto para recibir las conexiones. Como se puede leer, obtenemos el estado de “Listening…”. Hay que tener en cuenta que la dirección IP del servidor viene “hardcodeada” en el código, por lo que es recomendable que se observe el código, se entienda y se cambie lo necesario.
¿Cómo se puede ejecutar el código para que se conecten las máquinas? Nosotros lo vamos a hacer desde la consola con el binario rundll32.exe, pero se podría utilizar una máquina comprometida con otros mecanismos para lograr ejecutar este tipo de código.
Como se puede ver en la imagen, en la máquina que será comprometida se utiliza rundll32.exe para ejecutar el código Javascript. Hay que indicar que este código tiene la dirección IP que hay que modificar, como ocurría en el servidor.


Cuando en el equipo se ejecuta el código se obtiene el control remoto. Obtenemos una pequeña shell con varias opciones. El script de JSRat nos proporciona las siguientes posibilidades:
·      Poder abrir una cmd, con la que se pueda ejecutar comandos.
·      Eliminar un fichero de la máquina comprometida.
·      Leer un fichero de la máquina comprometida.
·      Ejecutar un binario.
·      Descargar un archivo desde la máquina comprometida.
·      Subir un fichero hacia la máquina comprometida.
Si queremos eliminar un fichero o leerlo, podemos ejecutar delete o read, respectivamente, e introducir la ruta del fichero en cuestión. Realmente el uso del script es muy sencillo. Si, por otro lado, queremos subir o descargar un archivo es igual, salvo que en el caso de la subida debemos indicar la ruta local y no la ruta remota.
En el caso de ejecutar algo podemos utilizar el comando run. Una vez introducido la shell nos pedirá información sobre el binario que queremos ejecutar y sus argumentos. En este caso, y a modo de ejemplo, vamos a ejecutar rundll32.exe para ejecutar una DLL creada con msfvenom y que contiene un Meterpreter. Para ello, escribimos la instrucción rundll32 shell32.dll,Control_RunDLL [ruta DLL con Meterpreter].


Si hemos configurado un handler de Metasploit para recibir la conexión, la DLL nos otorgará una sesión de Meterpreter en nuestra máquina Kali Linux, tal y como se puede ver en la imagen. Realmente, esto es para simplificar que podemos ejecutar cualquier cosa con el comando run de JSRat, como se puede observar.

Una de las grandes ventajas que nos ofrece este Command & Control o C&C es que no necesita ser escrito en disco. Proporciona una comunicación vía HTTP rápida a través de un protocolo común. La detección de JSRat a través de Javascript es difícil, a no ser que, en este caso, rundll32 esté siendo monitorizado. Sea como sea, y de todos modos, habilitando y configurando AppLocker para denegar la ejecución de rundll32.exe se evita el ataque.
Nombre

2017,2,2018,2,2019,2,airdrop,3,android,1,antivirus,1,bitcoin,3,blockchain,3,bolsa,3,btc,2,casa,1,coins,3,crypter,1,cuentas,2,datos ilimitado,1,desde,1,dinero,2,dinero sin invertir,3,exploit,1,forex,4,free,3,freemoney,3,fud,2,ganardinero,1,ganedinerodesdecasa,1,gold,1,gratis,5,hack,3,hbo,1,ilimitado,3,indetectable,1,internt,1,ios,1,juego de tronos,1,linux,1,money,2,movistar,1,Netflix,1,orange,1,peliculas,1,pelis magnet,1,playview,1,plus,3,premium,2,rat,1,repelis,1,series,1,siempre,2,sin invertir,1,strangerthins,1,tarifa,1,top,1,troyan,1,usa,1,usd,1,vip,2,vmware,1,vodafone,1,
ltr
item
HAXOR PROJECT: Powershell + Javascript para formar la JSRat
Powershell + Javascript para formar la JSRat
https://1.bp.blogspot.com/-Cbyljg_vYaw/Wp-GtzCONnI/AAAAAAAAC0Q/yOcmQFxCQqcfVfsVF2Bq6lIjY9TcN0xrACLcBGAs/s640/0.png
https://1.bp.blogspot.com/-Cbyljg_vYaw/Wp-GtzCONnI/AAAAAAAAC0Q/yOcmQFxCQqcfVfsVF2Bq6lIjY9TcN0xrACLcBGAs/s72-c/0.png
HAXOR PROJECT
https://www.h4x0rproject.com/2018/03/powershell-javascript-para-formar-la.html
https://www.h4x0rproject.com/
https://www.h4x0rproject.com/
https://www.h4x0rproject.com/2018/03/powershell-javascript-para-formar-la.html
true
4488731047582517966
UTF-8
Loaded All Posts Not found any posts VIEW ALL Readmore Reply Cancel reply Delete By Home PAGES POSTS View All RECOMMENDED FOR YOU LABEL ARCHIVE SEARCH ALL POSTS Not found any post match with your request Back Home Sunday Monday Tuesday Wednesday Thursday Friday Saturday Sun Mon Tue Wed Thu Fri Sat January February March April May June July August September October November December Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec just now 1 minute ago $$1$$ minutes ago 1 hour ago $$1$$ hours ago Yesterday $$1$$ days ago $$1$$ weeks ago more than 5 weeks ago Followers Follow THIS PREMIUM CONTENT IS LOCKED STEP 1: Share to a social network STEP 2: Click the link on your social network Copy All Code Select All Code All codes were copied to your clipboard Can not copy the codes / texts, please press [CTRL]+[C] (or CMD+C with Mac) to copy