vmware未授权任意文件读取漏洞分析

前言

任意文件读取漏洞是因为没有验证请求的资源文件是否合法导致的,这类漏洞在java中有很大的机率出现。

VMware vCenterServer 是一个提供了可伸缩、可扩展的平台,为虚拟化管理奠定了基础。VMware vCenterServer的存在任意文件读取漏洞,暂未分配CVE。

有人在twitter 平台上,发出VMware vCenterServer的任意文件读取漏洞POC,攻击者可以任意读取用户名和密码。

漏洞复现

poc:

windows:ip/eam/vib?id=/ProgramData/VMware/vCenterServer/cfg/vmware-vpx%5Cvcdb.properties

 linux:ip/eam/vib?id=/etc/passwd

漏洞分析

从整体的架构上看,用的是servlet和spring。

我们首先从web.xml查找poc泄露的路径信息,首先从url上判断先搜vib,找到servelt的名字叫 VibServlet。

扫描二维码关注公众号,回复: 12747282 查看本文章

通过vibServlet,找到对应的jar包,从而找到这个servlet对应的类叫FileServlet。

找到这个类过后,发现这个servlet只有doget方法,然后在第一行就进行了读取文件操作。

跟进

是FileService类型

只有一个实现类,我们找到serve()方法。

这里从url中获取了文件名

跟进FileServerEntryURLBuilder类型,找到filename方法

从url的id参数中直接获取,这里看到没有进行任何参数过滤,就直接读取文件的路径。

漏洞审计

猜你喜欢

转载自blog.csdn.net/Candyys/article/details/113683234