DNS隧道,在我看来,是最简单的数据渗出 方法。对于那些不熟悉的人,请参阅SANS的“检测DNS隧道”白皮书第3部分。 我们的移动应用程序实践主管Aaron Yaeger最近告诉我,使用Burp Collaborator进行DNS隧道是多么简单。像这样的渗透数据是手动执行的,时间很长,所以我开始在所有环境中自动执行此任务。我通过使用内置Burp Collaborator API为Burp Suite创建扩展,通过私有Burp Collaborator服务器来解析传入的DNS请求并重新创建隧道数据来自动化此任务。使用此扩展的两个主要方法是: 有Burp Suite的环境下: 在这个神奇而不可思议的环境中,测试人员可以访问Burp Suite两端,并安装此扩展。在这种情况下,测试人员将访问其本地框上的扩展,启动侦听Collaborator实例,并输入Burp Collaborator地址,并将数据在被泄露的Box的Burp实例上进行渗透(有关完整的说明,请参阅此处)。 在windows和linux环境下: 然而,在大多数环境中并没有Burp Suite,但脚本引擎通常是可用的(Powershell / Bash)。对于这些环境,我已经编写了Bash和Powershell脚本来将数据传输到Collaborator。这些脚本将基于32编码,块和使用数据执行DNS查询。测试者的执行链如下所示: 1. 将隧道文件复制到受感染的盒子 2.在他们要渗透数据的框上的DNS隧道扩展名上单击“开始侦听”(注意协作者服务器地址) 3.在受感染的盒子上启动脚本,将Collaborator服务器地址和文件名复制到exfiltrate,然后单击go 4.发送数据后,点击接收机上的“立即轮询”,数据将出现 这是我看到最接近的点对点的DNS隧道,这使我希望它能让渗透测试工程师使用一个可能比以前使用起来更复杂的工具。隧道的另一个很好的选择是dnscat2,所以一定要检查一下,看看它是否符合你的需要。由于我是蓝色团队的粉丝,我将参考我在最初发布的文章,用于检测Greg Farnham的DNS隧道。我应该指出,这个扩展只适用于私有的Burp Collaborator服务器,因为Burp Suite(正版的)不希望自己的域被标记为恶意,当此扩展发送数百个请求时。 投稿合作 今天发布的是该工具的第一修订版。因此,这意味着一切都是以我的想要的的方式完成的。如果您认为有更好的方法可以实现,请随时在Github上发出提取请求或创建问题。 你可以在: https://github.com/NetSPI/BurpCollaboratorDNSTunnel. 上下载该工具 PyU7ghxTHWJwI%3D&wechat_real_lang=zh_CN