美文网首页
子域名挖掘工具Aquatone安装以及遇到的坑

子域名挖掘工具Aquatone安装以及遇到的坑

作者: wantwo3 | 来源:发表于2018-07-18 19:42 被阅读0次

    Aquatone是一款子域名挖掘工具,Aquatone不仅仅只是通过简单的子域爆破,它还会利用各种开放的互联网服务和资源,来协助其完成子域枚举任务,这也大大提高了子域的爆破率。当发现子域时,我们还可以使用Aauatone来探测主机的公共HTTP端口,并收集响应头,HTML和屏幕截图,并能最终为我们生成一个报告,便于我们后续的分析利用。

    一、安装以及环境配置

    Aquatone作者建议使用Kali安装使用该工具,并且也只针对Kali使用过程中遇到的问题进行修复,所以这里使用最新版Kali进行安装。使用aquatone-gather命令需要用到Nightmare.js,所以需要安装npm、electron以及Nightmare。

    1.1 安装Aquatone

    gem install aquatone

    直接安装Aquatone,安装完成后如下图所示:

    图1

    1.2 npm快速安装

    从官网下载install.sh安装脚本

    https://www.npmjs.com/install.sh

    chmod +x install.sh添加执行权限

    ./install.sh执行安装程序

    安装完成后使用npm -v命令查看是否安装成功

    图2

    1.2 安装electron

    安装electron和nightmare首先需要进入aquatone安装目录,也就是

    /var/lib/gems/2.5.0/gems/aquatone-0.5.0

    (1)直接安装

    使用命令

    npm install electron

    直接安装,缺点是连接国外服务器网络不稳定,下载了好几次都不能完整下载,这个会引发aquatone使用时提示兼容性问题,后面会详细介绍。

    (2)使用淘宝镜像安装electron

    可以通过以下命令从淘宝NPM安装

    npm install -g electron --registry=https://registry.npm.taobao.org

    也可以使用淘宝NPM开发的cnpm进行package的安装

    //首先安装cnpm

    npm install -g cnpm --registry=https://registry.npm.taobao.org

    //使用cnpm进行安装,使用方法和npm相同

    cnpm install -g electron

    安装完成后如下图

    图3

    1.3安装nightmare

    electron是nightmare的依赖环境,安装完electron后便开始安装nightmare,步骤同1.2

    全部安装完成后目录如下

    图5

    遇到问题:

    在aquatone-discover以及aquatone-scan后,执行gather命令提示如下错误:

    Incompatability Error: Nightmarejs must be run on a system with a graphical desktop session (X11)

    这个错误根据国外大神分析是由于在Node.js Nightmare实例和Ruby之间进行通信时,Aquatone使用了一种错误的方法,导致输出被截断为512个字符,代码捕获所有错误并给出了不兼容的错误异常,原文在:

    https://github.com/michenriksen/aquatone/issues/63

    解决方案有两种

    一是国外大神修改了原Aquatone代码nightmare通信方式,可以在该问题下看到:

    https://github.com/michenriksen/aquatone/pull/94

    修改后源代码下载地址

    https://github.com/jolle/aquatone/tree/5fa327c525ee29ca71e8f6990b553c9081c6eac7

    下载该源码后将原安装目录文件替换即可

    左边为修复问题的代码,右边为存在问题代码,修复后使用Open3代替ChildProcess执行node命令

    另外一种方式则是使用xvfb-run运行gather程序,原文如下:

    https://gist.github.com/random-robbie/beae1991e9ad139c6168c385d8a31f7d

    首先需要安装xvfb-run

    apt-get install -y xvfb x11-xkb-utils xfonts-100dpi xfonts-75dpi xfonts-scalable xfonts-cyrillic x11-apps clang libdbus-1-dev libgtk2.0-dev libnotify-dev libgconf2-dev libasound2-dev libcap-dev libcups2-dev libxtst-dev libxss1 libnss3-dev gcc-multilib g++-multilib

    该作者提供了一个脚本可以直接执行扫描及收集等操作

    wget "https://gist.githubusercontent.com/random-robbie/beae1991e9ad139c6168c385d8a31f7d/raw/aq.sh" -O /bin/aq && chmod 777 /bin/aq

    执行aq + domain,等待程序执行完成即可

    或者可以在执行gather命令时使用

    DEBUG=nightmare xvfb-run -a aquatone-gather -d domain --threads 10

    若仍提示Incompatability Error: Nightmarejs must be run on a system with a graphical desktop session (X11)错误

    通过print获取错误信息

    vim /var/lib/gems/2.5.0/gems/aquatone-0.5.0/lib/aquatone/browser/drivers/nightmare.rb

    在27-28行之间添加如下命令

    可以打印json信息

    我这里就是由于网络原因导致electron安装不完整,出现此问题。

    相关文章

      网友评论

          本文标题:子域名挖掘工具Aquatone安装以及遇到的坑

          本文链接:https://www.haomeiwen.com/subject/kreapftx.html