用友GRP-U8 XXE到RCE

admin 2024年2月15日15:29:42评论12 views字数 892阅读2分58秒阅读模式

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

前言

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

用友GRP-U8 XXE到RCE

代码分析

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

用友GRP-U8 XXE到RCE

用友GRP-U8 XXE到RCE

用友GRP-U8 XXE到RCE

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

用友GRP-U8 XXE到RCE

用友GRP-U8 XXE到RCE

用友GRP-U8 XXE到RCE

漏洞复现

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

用友GRP-U8 XXE到RCE

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

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

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

获取绝对路径

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

用友GRP-U8 XXE到RCE

部署Service

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

用友GRP-U8 XXE到RCE

用友GRP-U8 XXE到RCE

写入哥斯拉webshell

用友GRP-U8 XXE到RCE

用友GRP-U8 XXE到RCE

参考文章

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

用友GRP-U8 XXE到RCE

用友GRP-U8 XXE到RCE用友GRP-U8 XXE到RCE

原文始发于微信公众号(backdoor):用友GRP-U8 XXE到RCE

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2024年2月15日15:29:42
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   用友GRP-U8 XXE到RCEhttps://cn-sec.com/archives/2190974.html

发表评论

匿名网友 填写信息