注:本文仅供学习参考
=============
0x01 Collaborator的用途
0x02 Collaborator的原理
0x03 Collaborator的实践
0x01 Collaborator的用途
在我们进行渗透测试的时候,可能会遇到这种情况,测试xss的时候插入了脚本,无法立即触发,例如提交反馈表单,需要等管理员打开查看提交信息时才会触发,或者是无回显的ssrf,无回显的xxe,盲打 XSS 这种。比较难判断是否存在这个漏洞。那如何判断这类漏洞是否存在呢?
解决方法: 我们需要一个外部的独立的服务器,可以通过域名 url 进行访问。然后在测试这些无回显的xss,ssrf,xxe时带上这个服务器的地址,如果存在上述的这些问题,那么目标服务器就会去访问我们自己的服务器,我们自己服务器要做的就是记录别人访问自己的信息,记录其发送内容相应内容等,因为目标服务器不会给前台返回任何信息,而在和我们外部服务器交互时,我们外部服务器会记录其交互的过程和内容,从而有利于我们判断漏洞的存在。这个外部独立的服务器可以通过Collaborator实现我们的需求
0x02 Collaborator的原理
知道功能后,我们来了解Collaborator的原理。首先,我们来看下平时测试的流程图
平时测试时,我们会向服务器发送信息,而服务器响应给我们相关的 response 信息。大家都叫它带内攻击,也就是整个测试过程或者说是交互过程,中间没有其外部的服务器参与,只有自己和目标服务器,那么就叫带内。
那么 Collaborator 服务器用来测试各种盲的漏洞的话,则需要我们外部的独立服务器,也就是带入了外部的服务器,我们叫它带外攻击。如果站点存在漏洞的话,会向我们的Collaborator服务器发送信息,当看到对方服务器发送信息到我们服务器的话就可以存在漏洞。如下图流程所示
0x03 Collaborator的实践
首先打开Collaborator
点击copy to clipborad来复制其提供的 payload url,number to generate 是生成的数量,
这里以webug3.0的靶场做演示
将生成的payload url 粘贴到可能存在漏洞的地方
发送请求,然后我们来看看我们的服务器是否收到了请求
可以看到,我们的服务器成功收到了请求,可以确认存在SSRF漏洞
总结
对于平时测试中的一些盲问题,例如盲 xss,盲 xxe,盲 ssrf 等,如果不能看到一些回显信息,无法判断是否存在漏洞时,可以使用 burp 的 collaborator 来进行尝试。
本文分享自微信公众号 - 黑白天(li0981jing)。
如有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。