
DNSTwist 使用指南
DNSTwist 是一款用于检测域名变体和可能的网络钓鱼攻击的工具。它通过生成多个域名变体并进行 DNS 查询来识别潜在的恶意活动,例如域名抢注(Typosquatting)、同形异义字攻击(Homoglyph Attack)、双字符替换(Bitsquatting)等。
1. 安装 DNSTwist
1.1 在 Linux 上安装
sudo apt update && sudo apt install dnstwist -y
如果官方仓库没有提供,可以使用 pip
安装:
pip install dnstwist
1.2 在 macOS 上安装
brew install dnstwist
1.3 在 Windows 上安装
安装 Python(建议 Python 3.6 以上)。
使用
pip
安装:pip install dnstwist
确保
dnstwist
命令可用,运行:dnstwist -h
2. 生成域名变体
DNSTwist 可以基于不同的策略生成域名变体,例如:
键盘误触(Typosquatting):键盘上相邻字母误输入。
字符替换(Homoglyph Attack):使用相似字符替换,如
о
(俄文 o)替代o
。双字符交换(Bitsquatting):对域名中的某个字符进行 bit 级别的微小修改。
插入/删除字符(Insertion/Omission):在域名中插入或删除某个字符。
子域名变体(Subdomain Mutation):生成子域名变体,如
secure.example.com
。
dnstwist example.com
示例输出:
Typo | Domain Name | DNS A Record
----------------------------------------------
Insertion | examp1e.com | 93.184.216.34
Omission | exampe.com | 192.0.2.1
...
3. 进行 DNS 解析和 IP 归属查询
可以启用 DNS 解析,以检查变体域名是否已被注册:
dnstwist -r example.com
添加 -g
参数还可以检查 WHOIS 信息,获取注册商信息:
dnstwist -r -g example.com
4. 解析所有 DNS 记录
-a
选项用于查询所有类型的 DNS 记录,如 A 记录、MX 记录、NS 记录等。
dnstwist -a example.com
作用:
A
记录:解析域名对应的 IPv4 地址。AAAA
记录:解析 IPv6 地址。MX
记录:获取邮件服务器信息。NS
记录:获取域名的权威 DNS 服务器。TXT
记录:获取域名的 TXT 记录(常用于 SPF、DKIM、DMARC )。
5. 结合 Virustotal 进行恶意检测
DNSTwist 可以使用 VirusTotal API 检查域名是否涉及恶意活动。
5.1 配置 VirusTotal API 密钥
需要先注册 VirusTotal 账号,并获取 API Key,然后设置环境变量:
export VT_API_KEY="your_api_key_here"
5.2 执行检查
dnstwist --virustotal example.com
6. 结合 URL 解析进行 Web 指纹识别
DNSTwist 可以扫描变体域名是否指向特定网站,并获取网站的指纹。
dnstwist --ssdeep example.com
如果要扫描网页内容并检查是否类似于原始站点:
dnstwist --ssdeep --mx example.com
7. 导出结果
DNSTwist 支持将结果保存为 CSV 或 JSON 格式。
导出为 CSV:
dnstwist -r -o result.csv example.com
导出为 JSON:
dnstwist -r -o result.json example.com
8. 免责声明
本文章仅用于技术研究与网络安全学习,旨在帮助用户提高安全意识,防范潜在的网络威胁。所有内容均基于合法合规的测试环境,任何组织或个人不得将其用于非法用途,否则由使用者自行承担法律责任。本文作者不承担因使用本工具导致的任何直接或间接后果。
如需授权、对文章有疑问或需删除稿件,请联系 FreeBuf 客服小蜜蜂(微信:freebee1024)