Altdns 是一款 DNS 侦察工具,能够发现符合特定模式的子域名。Altdns 接收可能出现在域名子域名中的单词(如 test、dev、staging),以及已知的子域名列表。
在将这两个列表作为输入提供给 altdns 后,该工具会生成一个 庞大的 "变更"或"变异"后的潜在子域名输出。它会保存此输出,以便随后可供你喜爱的 DNS 暴力破解工具使用。
或者,可以向 altdns 传递 -r 标志,这样在生成输出后,该工具可以(多线程)解析这些子域名并将结果保存到文件中。
Altdns 在处理大型数据集时效果最佳。拥有 200 个或更多子域名的初始数据集,通过生成的变更应能筛选出一些有效的子域名。
有关攻击方法论及本工具发布的更多信息,请参见:https://docs.google.com/presentation/d/1PCnjzCeklOeGMoWiE2IUzlRGOBxNp8K5hLQuvBNzrFY/
Python 2:
pip install py-altdns==1.0.0
Python 3:
pip3 install py-altdns==1.0.2
# altdns -i subdomains.txt -o data_output -w words.txt -r -s results_output.txt
subdomains.txt 包含已知的组织子域名data_output 是包含大量变更和排列组合后的子域名的文件words.txt 是你想要与当前子域名进行排列组合的单词列表(例如 admin、staging、dev、qa)——每行一个单词-r 命令解析每个生成的排列组合子域名-s 命令告诉 altdns 将已解析的排列组合子域名的结果保存到哪里。results_output.txt 将包含最终找到的有效且有 DNS 记录的排列组合子域名列表。-t 命令限制解析器同时使用的线程数-d 1.2.3.4 覆盖系统默认 DNS 解析器,使用指定的 IP 地址作为解析服务器。将其设置为目标域名的权威 DNS 服务器可能会提高解析性能
如果您觉得此工具在 DNS 侦察阶段对您有所帮助——我们很乐意知道。欢迎对此工具提出任何建议或想法,只需在推特上 @infosec_au 或 @nnwakelam,我们会进行处理。