作者:欧根亲王号 所属团队:Arctic Shell
Jenkins是一款由Java编写的开源的持续集成工具,其本身具有执行脚本的功能
在Jenkins的说明信息中列出我们可以使用任意Groovy脚本并在服务器执行它,其命令格式为:
println(Jenkins.instance.pluginManager.plugins)
这是否意味着我们能否构造一些敏感的命令让他执行嘞?
尝试打印字符串
发现能够执行打印命令,那么构造一个能执行系统命令的语句让他执行看看能否被执行
尝试查看下IP配置信息
成功执行了ipconfig,由此猜想这个权限很高,很有可能为root,在这里不一定非得使用ipconfig,因为有些Linux不会对ipconfig这个命令进行支持!(嘿嘿~)
打印当前应用权限级别
不出所料,权限高的一批,那么直接打印pass和shadow这两个文件,爆出他的密码
读取出了root的密码密文,但在用John the Ripper来破解密码时却失败了
万般无奈中,突然想到创建用户,因为权限足够高,那么创建用户应该是没问题的
添加用户成功,但无法登陆
因为linux不允许明文登陆,于是通过密码查看出用户密码密文登录,但依旧不成功
因为权限够高,于是只好用nc来搞事情了
Nc反弹成功!
这个时候基本上可以想干啥就干啥了!