分享一款用于创建DNS重绑定攻击的前端JavaScript工具包

注意:本软件仅适用于教育目的,请不要将其用于非法活动,工具作者和本站对用户个人行为不负任何责任。

今天给大家介绍的是一款名叫DNS Rebind Toolkit的工具包,这是一款前段JavaScript工具包,渗透测试人员可利用该工具来创建DNS重绑定攻击。

工具介绍

DNSRebind Toolkit是一款前端JavaScript框架,可用于对存在漏洞的主机或本地局域网服务进行DNS重绑定攻击,类似的服务包括Google Home、Roku、SonosWiFi扬声器、WiFi路由器、智能恒温器以及其他的物联网设备。在这款工具的帮助下,远程攻击者可绕过路由器的防火墙,然后直接与目标用户家庭网络内的设备进行交互,并提取出隐私信息,在某些情况下他们甚至还可以直接控制目标设备。

值得一提的是,渗透测试人员可利用该工具包创建自己的DNS重绑定攻击,该工具包在payloads/目录下提供了多种可用于现实攻击的Payload。

工具安装

克隆项目源码:

安装依赖组件

运行服务器:

API及工具使用

该工具包提供了两种JavaScript对象,可用于配合创建DNS重绑定攻击:

1. DNSRebindAttack:这个对象可以用来对包含漏洞的服务器进行攻击。它可以创建、管理并于多个DNSRebindNode对象进行通信,DNSRebindAttack所生成的每一个Payload都必须包含一个DNSRebindNode对象。

2. DNSRebindNode:这个静态类对象需要包含在每一个HTML Payload文件中,它可以对目标主机所运行的服务进行攻击,并与相应的DNSRebindAttack对象进行通信。

在对有防火墙保护的LAN主机进行攻击时,这两个脚本需要配合使用,基本的攻击过程如下:

1. 攻击者向目标用户发送一条指向恶意HTML页面的链接地址,并执行攻击。例如http://example.com/launcher.html,其中launcher.html包含了一个DNSRebindAttack实例。

2. 目标用户点击了恶意链接,并访问了恶意页面,其中http://example.com/launcher.html嵌入在一个iframe里面,页面此时便会触发攻击执行。

3. DNSRebindAttack此时会搜索目标设备的本地IP地址(例如192.168.10.84),并根据这个IP地址来确定目标网络的IP地址范围(例如192.168.10.0-255)。

4. launcher.html负责对目标子网的IP地址范围发动DNS重绑定攻击。

5. DNSRebindAttack会在launcher.html页面中嵌入一个包含了payload.html的iframe,每一个iframe中都包含一个DNSRebindNode对象,用于对IP地址范围内的每一台主机(端口8008)进行攻击。

使用样例

一次攻击需要三个脚本和文件协同合作:

1. 一个HTML文件,其中包含DNSRebindAttack实例(例如launcher.html)。

2. 一个HTML文件,其中包含攻击Payload(例如payload.html),该文件需要通过DNSRebindAttack并根据目标IP地址嵌入到launcher.html中。

3. 一台DNS Rebind Toolkit服务器(server.js),用于传递文件并提取数据。

launcher.html

下面给出的是一个launcher.html文件样本,你可以在项目目录的examples/launcher.html中找到完整代码:

payload.html

下面给出的是一个payload.html文件样本,你可以在项目目录的examples/ payload.html中找到完整代码:

server.js

这个脚本用来传递launcher.html和payload.html文件,并负责接收和保存工具从目标主机中提取出的数据:

项目结构

1. server.js:DNS Rebind Toolkit服务器;

2. payloads/:包含了多种可直接使用的HTML Payload文件,可用于针对存在漏洞的物联网设备进行渗透测试;

3. examples/:使用样例文件;

4. data/:提取出的数据信息将保存在该目录下(方法:DNSRebindNode.exfiltrate(…));

5. share/:存储了examples/和payload/目录中HTML文件共享的JavaScript文件;

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180719B15QUL00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。

扫码关注云+社区

领取腾讯云代金券