Burp之Collaborator使用技巧

注:本文仅供学习参考

=============

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源创计划”,欢迎正在阅读的你也加入,一起分享。

点赞
收藏

评论区

加载中...

相关推荐

MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1

文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s

Oracle 分组与拼接字符串同时使用

SELECTT.,ROWNUMIDFROM(SELECTT.EMPLID,T.NAME,T.BU,T.REALDEPART,T.FORMATDATE,SUM(T.S0)S0,MAX(UPDATETIME)CREATETIME,LISTAGG(TOCHAR(

皕杰报表之UUID

​在我们用皕杰报表工具设计填报报表时,如何在新增行里自动增加id呢?能新增整数排序id吗?目前可以在新增行里自动增加id,但只能用uuid函数增加UUID编码,不能新增整数排序id。uuid函数说明:获取一个UUID,可以在填报表中用来创建数据ID语法:uuid()或uuid(sep)参数说明:sep布尔值,生成的uuid中是否包含分隔符'',缺省为

手写Java HashMap源码

HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22

java将前端的json数组字符串转换为列表

记录下在前端通过ajax提交了一个json数组的字符串,在后端如何转换为列表。前端数据转化与请求varcontracts{id:'1',name:'yanggb合同1'},{id:'2',name:'yanggb合同2'},{id:'3',name:'yang

2020年前端实用代码段,为你的工作保驾护航

有空的时候,自己总结了几个代码段,在开发中也经常使用,谢谢。1、使用解构获取json数据let jsonData  id: 1,status: "OK",data: 'a', 'b';let  id, status, data: number   jsonData;console.log(id, status, number )

Burp之Collaborator使用技巧 - HelloWorld