dnsx |快速DNS查询追踪工具

dnsx |快速DNS查询追踪工具

dnsx简介

dnsx是一个快速且多用途的 DNS 工具包,允许使用retryabledns库运行多个探测器,它允许您使用用户提供的解析器列表执行您选择的多个 DNS 查询,此外还支持 DNS 通配符过滤,如shuffledns

特色

  • 查询 DNS 记录的简单而方便的实用程序。
  • 支持A、AAAA、CNAME、PTR、NS、MX、TXT、SOA
  • 支持 DNS 状态码探测
  • 支持 DNS 追踪
  • 以自动方式处理通配符子域。
  • 标准输入标准输出支持与其他工具一起工作。
dnsx |快速DNS查询追踪工具

下载地址

①GitHub:

②云中转网盘:

https://yzzpan.com/#sharefile=azZi3obV_19538
解压密码 www.ddosi.org

安装方法

dnsx 需要go1.17才能成功安装。运行以下命令以获取 repo –

go install -v github.com/projectdiscovery/dnsx/cmd/dnsx@latest

下载对应的安装包解压运行.

wget https://github.com/projectdiscovery/dnsx/releases/download/v1.0.7/dnsx_1.0.7_linux_amd64.zip
unzip dnsx_1.0.7_linux_amd64.zip
./dnsx

用法

dnsx |快速DNS查询追踪工具
输入: 
   -l, -list string 带有子(域)/主机列表的文件输入

查询:
   -a 查询 A 记录(默认)
   -aaaa 查询 AAAA 记录
   -cname 查询 CNAME 记录
   -ns 查询 NS 记录
   -txt 查询 TXT 记录
   -ptr 查询 PTR 记录
   -mx 查询 MX 记录
   -soa 查询 SOA 记录

过滤器:
   -resp 显示 DNS 响应
   -resp-only 仅显示 DNS 响应
   -rcode, -rc string 显示 DNS 状态代码(例如 -rcode noerror,servfail,refused)

速率限制: 
   -t, -c int 要使用的并发线程数(默认 100)
   -rl, -rate-limit int DNS 请求数/秒(默认禁用)(默认 -1)

输出: 
   -o, -output string 写入输出的文件(可选)
   -json 以 JSONL(ines) 格式写入输出

调试: 
   -silent 只显示输出结果
   -v, -verbose 详细输出
   -raw, -debug 显示 RAW DNS 响应
   -stats 显示正在运行的扫描的统计信息
   -version 显示 dnsx 的版本

优化: 
   -retry int DNS 重试次数(默认 1) 
   -hf, -hostsfile 解析系统主机文件
   -trace 执行 DNS 跟踪
   -trace-max-recursion int dns 跟踪的最大递归(默认 32767)
   -flush-interval int 输出文件的刷新间隔(默认 10)
   -resume 恢复

配置:
   -r, -resolver string 解析器列表(文件或逗号分隔)
   -wt, -wildcard-threshold int 通配符过滤器阈值(默认 5)
   -wd, -wildcard-domain string 通配符过滤的域名(其他标志将被忽略)

使用示例

./dnsx -l 1.txt -mx -v -resp

运行dnsx

dnsx可用于从从各种来源获得的被动子域列表中过滤无效记录,例如:-

subfinder -silent -d hackerone.com | dnsx -silent

a.ns.hackerone.com
www.hackerone.com
api.hackerone.com
docs.hackerone.com
mta-sts.managed.hackerone.com
mta-sts.hackerone.com
resources.hackerone.com
b.ns.hackerone.com
mta-sts.forwarding.hackerone.com
events.hackerone.com
support.hackerone.com

dnsx可用于打印给定子域列表的A记录,例如:-

subfinder -silent -d hackerone.com | dnsx -silent -a -resp

a.ns.hackerone.com [162.159.0.31]
b.ns.hackerone.com [162.159.1.31]
mta-sts.hackerone.com [185.199.108.153]
events.hackerone.com [208.100.11.134]
mta-sts.managed.hackerone.com [185.199.108.153]
resources.hackerone.com [52.60.160.16]
resources.hackerone.com [52.60.165.183]
www.hackerone.com [104.16.100.52]
support.hackerone.com [104.16.53.111]

dnsx可用于为给定的子域列表提取A记录,例如:-

subfinder -silent -d hackerone.com | dnsx -silent -a -resp-only

104.16.99.52
104.16.100.52
162.159.1.31
104.16.99.52
104.16.100.52
185.199.110.153
185.199.111.153
185.199.108.153
185.199.109.153
104.16.99.52
104.16.100.52
104.16.51.111
104.16.53.111
185.199.108.153
185.199.111.153
185.199.110.153
185.199.111.153

dnsx可用于为给定的子域列表提取CNAME记录,例如:-

subfinder -silent -d hackerone.com | dnsx -silent -cname -resp

support.hackerone.com [hackerone.zendesk.com]
resources.hackerone.com [read.uberflip.com]
mta-sts.hackerone.com [hacker0x01.github.io]
mta-sts.forwarding.hackerone.com [hacker0x01.github.io]
events.hackerone.com [whitelabel.bigmarker.com]

dnsx可用于探测给定子域列表上的DNS 状态代码,例如:-

subfinder -silent -d hackerone.com | dnsx -silent -rcode noerror,servfail,refused

ns.hackerone.com [NOERROR]
a.ns.hackerone.com [NOERROR]
b.ns.hackerone.com [NOERROR]
support.hackerone.com [NOERROR]
resources.hackerone.com [NOERROR]
mta-sts.hackerone.com [NOERROR]
www.hackerone.com [NOERROR]
mta-sts.forwarding.hackerone.com [NOERROR]
docs.hackerone.com [NOERROR]

dnsx可用于使用PTR查询从给定的网络范围中提取子域,例如:-

echo 173.0.84.0/24 | dnsx -silent -resp-only -ptr

cors.api.paypal.com
trinityadminauth.paypal.com
cld-edge-origin-api.paypal.com
appmanagement.paypal.com
svcs.paypal.com
trinitypie-serv.paypal.com
ppn.paypal.com
pointofsale-new.paypal.com
pointofsale.paypal.com
slc-a-origin-pointofsale.paypal.com
fpdbs.paypal.com

通配符过滤

dnsx 的一个特殊功能是它能够处理基于多级 DNS 的通配符,并且能够以非常少的 DNS 请求来实现。有时所有子域都会解析,这将导致结果中出现大量垃圾。dnsx处理这个问题的方式是它会跟踪有多少子域指向一个 IP,如果子域的数量增加超过某个小阈值,它将迭代地检查该 IP 主机的所有级别上的通配符。

dnsx -l airbnb-subs.txt -wd airbnb.com -o output.txt

备注

  • 默认情况下,dnsx检查A记录。
  • 默认 dnsx 使用 Google、Cloudflare、Quad9解析器
  • 可以使用r标志使用自定义解析器列表。
  • 消除通配符时必须输入域名。
  • 使用通配符过滤时不能使用 DNS 记录标志。

项目地址

GitHub:https://github.com/projectdiscovery/dnsx

转载请注明出处及链接

Leave a Reply

您的电子邮箱地址不会被公开。 必填项已用 * 标注