实战 | 记一次有趣的客户端RCE+服务端XXE挖掘
2022-2-5 09:30:0 Author: mp.weixin.qq.com(查看原文) 阅读量:18 收藏

文章来源 :HACK学习呀

0x01 起因

朋友给某甲方做渗透测试,奈何甲方是某知名保险,系统太耐艹,半天不出货

兄弟喊我来一块来看,于是有了本文

0x02 客户端RCE一处

朋友把靶标发给我看了下,除了两个下载链接啥也没有

链接下载下来的东西如图,看了下目录里面还有JRE,那么很显然,这客户端exe就是个JAVA启动命令执行套壳

随后打开program文件夹,逆了一下里面的Jar

full_path前面定义为用户更新时输入的路径

那么很简单了full_path可控,诱导用户安装更新时路径出输入注入命令即可

D:\software  && ping hacker's IP

0x03 发现Webservice Soap接口

光这一个水来的客户端RCE肯定是不够的,接下来继续挖掘服务端

看了看没别的功能点,我就简单FUZZ了一下这个系统三级目录

最后FUZZ出来了一个webservice接口

http://****.xxxxxx.cn/xxxx/service

拼接出其wsdl接口

http://****.xxxxxx.cn/xxxx/service/BusinessService?wsdl

但导入SoapUI或AWVS的调试模块进行调试时却发现其导入失败

仔细看了下WSDL返回的信息。。。妈的WSDL Import Location和Soap Address Location都是内网域名

不过幸运的是,该系统的外网域名拼接路径后也可以访问到这个WSDL接口

但是自动化的Soap接口调试工具是“看见什么就import什么”,这可让人犯了难

0x04导入SoapUI

思考了一会,突然想起来BurpSuite可以把RequestBody和ResponseBody的值进行替换,hhh,那我们就有办法导入了

在Burpsuite的Porxy Option中增加Match&Replace规则

将WSDL Import Location和Soap Address Location处对应的内网域名都替换为外网域名

随后在SoapUI中设置Proxy

打开代理,再次添加WSDL,ResponseBody的内网域名成功被替换,WSDL导入成功~

0x05 XXE挖掘

导入接口后,发现有参数为dataXML,心中暗喜XXE估计是送上门了

直接BurpSuite中利用XXE OOB测试

OOB成功,XXE到手,收摊~

0x06 总结

坚持一下,守得云开见月明,漏洞就在眼前~

侵权请私聊公众号删文



文章来源: http://mp.weixin.qq.com/s?__biz=MzAxMjE3ODU3MQ==&mid=2650533012&idx=2&sn=3cda168457ccf4b05de17b55907d7114&chksm=83ba8970b4cd006631a8526a4f35668f25cb9055e635dab75920ed3f60dc08303883b2c22b2a#rd
如有侵权请联系:admin#unsafe.sh