
IDNホモグラフ攻撃と検出のためのツール。
Ditto は、ドメイン名を入力として受け取り、ホモグラフ攻撃 のためのすべてのバリアントを生成し、どのドメインが利用可能で、どのドメインが既に登録されているかをチェックする小さなツールです。
PoC ドメイン
Docker Hub 上のイメージ はプッシュのたびに更新されます。以下のように実行するだけです。
docker run evilsocket/ditto -h
ソースからのコンパイルには Go コンパイラが必要です。これにより $GOPATH/bin にバイナリがインストールされます。
# Go モジュールが使用されていることを確認
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
1 時間ごとに変更を監視し続ける:
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 ライセンスの下で公開されています。