用友GRP-U8 XXE到RCE
2023-11-9 13:21:2 Author: backdoor(查看原文) 阅读量:92 收藏

免责声明:请勿利用文章内的相关技术从事非法测试,由于传播、利用此文所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,作者不为此承担任何责任。工具来自网络,安全性自测,如有侵权请联系删除。本次测试仅供学习使用,如若非法他用,与平台和本文作者无关,需自行负责。

前言

漏洞ufgovbank.class接口,可结合XXE+AdminService实现未授权RCE。

代码分析

这里首先判断传入的QYJM的值是否为1,如果是则reqData传入的值为Des加密后(由于加密后未打成功目前先跳过加密),接着当传入的QYNC参数值为adaptertest马上判断isTrans,从这段静态代码块可以看出isTrans是false从而进到else条件中实例化EbankReturnTest类调用AdapterTest方法并传入reqData和QYNC的值。

后续就很明显了,判断是否加密未加密就一路调用下去最后通过DocumentHelper.parseText(ReqData)造成XXE漏洞。

漏洞复现

访问http://xxx.xxx.xxx.xxx:8080/services接口

注意:成功部署Service目前需要解决两个问题 端口和路径

1、要使用XXE完成SSRF就要找到对应端口,一般情况下映射到外网开放的WEB服务端口即跟内网端口一样,实在不行就端口1-65000全跑一遍。

2、在这里部署的Service生成文件路径要用绝对路径,相当路径生成是生成在C:\Windows\System32目录下,但是绝对路径一般不固定所以下面提供一个寻找绝对路径方法。

获取绝对路径

访问u8qx/pubDownTemplate.jsp爆出绝对路径。

部署Service

如果打成果了这里部署了一个名为OpenTaske的service(有些返回包有点异常,不用管直接看services下有没有生成OpenTaske名字就对了)。

写入哥斯拉webshell

参考文章

Apache Axis1 与 Axis2 WebService 的漏洞利用总结


文章来源: http://mp.weixin.qq.com/s?__biz=MzI5MzkwMzU1Nw==&mid=2247485092&idx=1&sn=45096d11b097846a28ea9dbeade57442&chksm=ec6a4b0edb1dc218c39eb25337d1528b3e65afce509450b4e07533eda6e83b1dd7792008f791&scene=0&xtrack=1#rd
如有侵权请联系:admin#unsafe.sh