关于DNSObserver
DNSObserver是个功能强大的DNS服务 该工具使用Go语言开发 可以帮助广大研究人员轻松检测各种类型的盲注
漏洞。它可以监控渗透测试人员所搭建服务器的带外DNS交互信息 并通过Slack发送查询通知。DNSObserver可
以帮助我们寻找的漏洞包括操作系统给盲注漏洞 SQL盲注漏洞和XXE盲注漏洞等等。
工具安装
注册一个自己的域名;
搭建一台虚拟专用服务器来运行脚本我们使用的是Ubuntu 而且还没有在其他系统上进行过测试;
你自己的Slack工作空间和一个Webhook;
域名和DNS配置
如果你还没有自己的虚拟专用服务器 可以使用你熟悉的服务提供商创建一台新的Linux
虚拟专用服务器 并记录下其公网IP地址。
注册一个新的域名只要是允许设置自定义域名服务器和glue记录的都可以。
进入到新注册域名的DNS设置界面 找到glue记录设置选项 添加两个新的条目对应新的
域名服务器 并提供虚拟专用服务器的公网IP地址。
接下来 修改默认的域名服务器:
- ns1.<YOUR-DOMAIN>
- ns2.<YOUR-DOMAIN>
复制代码
服务器配置
使用SSH登录至虚拟专用服务器 然后执行下列操作:
安装Go环境;
确保默认的DNS端口53/UDP和53/TCP 已打开 然后运行下列命令:
- sudo ufw allow 53/udp
- sudo ufw allow 53/tcp
复制代码
获取DNSObserver项目源码并安装依赖组件:
- go get github.com/allyomalley/dnsobserver/...
复制代码
DNSObserver配置
域名【必须】
配置你的新注册域名。
IP地址【必须】
虚拟专用服务器的公网IP地址。
工具使用
现在我们就可以开始网络监听了。如果你想要在DNSObserver的运行过程中用你的虚拟
专用服务器做其他事情的话 请开启一个新的tmux会话。
首先 我们需要传递必须的参数和你的Webhook:
- dnsobserver --domain example.com --ip 11.22.33.44 --webhook https://h
- ooks.slack.com/services/XXX/XXX/XXX
复制代码
配置好之后 还需要引入一些自定义A记录查询请求 然后将参数添加进记录文件中:
- dnsobserver --domain example.com --ip 11.22.33.44 --webhook https://hooks.sl
- ack.com/services/XXX/XXX/XXX --recordsFile my_records.yml
复制代码
假设一切都已经配置正确 DNSObserver就可以正常运行了。如需确认工具是否运行成功可以
打开一个终端窗口 然后针对新注册域名执行下列查询请求:
此时 你将会收到一个Slack通知 并包含请求的详细信息。