Ditto 是一个小型工具,它接受域名作为输入,生成所有用于同形异义攻击的变体作为输出,并检查哪些可用、哪些已注册。
PoC 域名
Docker Hub 上的镜像每次推送都会更新,您只需:
docker run evilsocket/ditto -h
从源码编译需要 Go 编译器,这会将二进制文件安装到 $GOPATH/bin:
# make sure go modules are used
GO111MODULE=on go get github.com/evilsocket/ditto/cmd/ditto
仅转换字符串:
ditto -string google
对于域名:
ditto -domain facebook.com
使用更多并发工作线程以提高速度(警告:可能导致 WHOIS 服务器临时封禁 IP):
ditto -workers 4 -domain facebook.com
如果不想改变域名而是检查其他 TLD(为避免因短时间内大量请求被 WHOIS 服务器阻止,节流设置为 1 秒):
ditto -domain facebook.com -tld -throttle 1000 -limit 100
仅显示可用域名:
ditto -domain facebook.com -available
仅显示已注册域名:
ditto -domain facebook.com -registered
仅显示已注册且能解析到 IP 的域名:
ditto -domain facebook.com -live
显示 WHOIS 信息:
ditto -domain facebook.com -live -whois
保存为带有扩展 WHOIS 信息的 CSV 文件:
ditto -domain facebook.com -whois -csv output.csv
持续运行并每小时监控变化:
ditto -domain facebook.com -monitor 1h
同样操作,同时保存变化为 JSON 文件:
ditto -domain facebook.com -monitor 1h -changes /some/path -keep-changes
检测到变化时执行命令(参见本仓库中的示例 send-email-report.sh,已自动添加到 Docker 镜像):
ditto -domain facebook.com \
-monitor 1h \
-trigger "/usr/bin/send-email-report.sh {{.Domain}} {{.ChangesFile}} [email protected]"
更多选项:
ditto -help
遵循 GPL3 许可证发布。