> 本文由 [简悦 SimpRead](http://ksria.com/simpread/) 转码, 原文地址 [mp.weixin.qq.com](https://mp.weixin.qq.com/s/Sfrpwdhei1AoAMSb7YgQTg) ![](https://mmbiz.qpic.cn/mmbiz_png/OhKLyqyFoP9mJwX65uY3o0wwuMo2eWPeFuDIhxJlAjMcIicKFSYLVZ6fjicY0dNle24gfmiaVpwCcP2PeZuZyaRzw/640?wx_fmt=png)点击上方蓝字关注我们 概述 ------ 研究人员在 SolarWinds Serv-U FTP 服务器中发现了一个有趣的漏洞。尽管初始向量需要身份验证,但低权限用户能够创建可公开访问的 URL,当受害者访问该 URL 时将触发 XSS 有效载荷。 Serv-U 包含两个功能来发送和接收来自其他用户的文件,在测试 “请求文件” 功能时,研究人员注意到发件人电子邮件输入被放置在可公开访问的共享 URL 中时没有被编码。这意味着攻击者可以向受害者发送一个共享 URL 来触发 XSS 漏洞。 漏洞复现 ----------- 以下步骤是在 Serv-U 15.2.3 版本上测试的,通过身份验证后,用户可以转到 “请求文件” 选项卡以生成文件请求 URL,如下图所示: ![](https://mmbiz.qpic.cn/mmbiz_png/DQk5QiaQiciakZyfMueia95RLRx4SVY5gQx85HIGDwOSv0WweiaaAqfwlOLVhHsNGjH4sRTsw4pJmJEBDf7uAo4OZYg/640?wx_fmt=png) 使用虚拟数据并发送请求,会显示可公开访问的共享 URL: ![](https://mmbiz.qpic.cn/mmbiz_png/DQk5QiaQiciakZyfMueia95RLRx4SVY5gQx8mBWpwBt1nTFCI6eMpTZ8VX4myL45lVeROaCAIFfRnLJvYaoZQjhafw/640?wx_fmt=png) 检查生成的 URL 会显示文件上传表单。在此处上传的文件将被发送回链接创建者的 Serv-U 文件夹。 ![](https://mmbiz.qpic.cn/mmbiz_png/DQk5QiaQiciakZyfMueia95RLRx4SVY5gQx83RxzVRibnlibsibe0zAUb1c9OV8O36owIZoe8agVibQbZffvS3NjzznRVQ/640?wx_fmt=png) 现在,如果我们修改原始链接生成请求,并在 “SenderEmail” 字段中包含一个 XSS 有效载荷,例如 "'/>%40localhost.local。 ![](https://mmbiz.qpic.cn/mmbiz_png/DQk5QiaQiciakZyfMueia95RLRx4SVY5gQx8IZbiaNFqvPzarRE2rn4lFhtCcAteOvZZxf05apZQmknweXSeMeAbWHA/640?wx_fmt=png) 然后从响应中获取 “ShareURL”。 ![](https://mmbiz.qpic.cn/mmbiz_png/DQk5QiaQiciakZyfMueia95RLRx4SVY5gQx8YkSG61icibyVibveD6nlWR1tvsl4YhibMBAUNTFk4Tib7NmrPiaibuDAEzcxw/640?wx_fmt=png) 这样一来,就成功在可公开访问的共享 URL 上获得 XSS 了。 ![](https://mmbiz.qpic.cn/mmbiz_png/DQk5QiaQiciakZyfMueia95RLRx4SVY5gQx8YqSLEmrzCAFNz5IoGu1CHVZh3fjbdnibp2gicG8pSUe80tMSglwLBqTQ/640?wx_fmt=png) 漏洞利用 ----------- 由于漏洞利用使用了 Ajax 异步调用,因此我们需要稍作调整才能将文件正确上传到 Serv-U 同时发送出去。脚本可以简单地托管,然后使用