セキュリティdnstwistOSSWeb 担当者

dnstwist の使い方|OSS でブランド類似ドメインを網羅列挙する手順

ドメイン番人4 分で読めます
目次

この記事でわかること

  • dnstwist(OSS)の基本
  • インストールと基本コマンド
  • 結果の絞り込み・自動化
  • ドメイン番人ツールとの使い分け

dnstwist とは

dnstwistMIT ライセンスの OSS。Marcin Ulikowski 氏が開発し、Python で実装されている類似ドメイン列挙ツール。typosquat 検出のデファクトスタンダードとして研究機関・セキュリティベンダーで広く使われています。

特徴:

  • 11 パターンの類似ドメイン生成
  • WHOIS / DNS / HTTP / SSL の自動取得
  • IDN(Punycode)対応
  • JSON / CSV / XLSX 出力
  • 完全無料

インストール

macOS / Linux

pip install dnstwist

または Homebrew:

brew install dnstwist

Docker(推奨)

docker pull elceef/dnstwist
docker run -it elceef/dnstwist example.com

依存関係(Python ライブラリ)の差で環境構築に手間取る場合は Docker が安全。

基本コマンド

dnstwist 基本コマンド

最小構成

dnstwist example.com

11 パターンの候補を生成し、登録済みドメインを一覧表示。所要 1〜3 分。

よく使うオプション

# DNS レコード解決を含めて確認
dnstwist --registered example.com

# JSON 出力(後処理しやすい)
dnstwist --format json example.com > result.json

# MX レコードまでチェック
dnstwist --mxcheck --registered example.com

# Web スクリーンショット取得(要 Playwright)
dnstwist --phash --screenshots /tmp/shots example.com

TLD バリエーションも含める

dnstwist --tld dictionaries/common_tlds.dict example.com

dictionaries/ 内の TLD 辞書を使って 200+ TLD を試行。

結果の絞り込み

dnstwist の出力は数百〜数千行になりがちなので、絞り込みが必要:

# 登録済みかつ A レコードあり(実害可能性高)
dnstwist --registered --format json example.com \
  | jq '.[] | select(.dns_a)' > active.json

# MX 設定ありに絞る(フィッシング能力あり)
jq '.[] | select(.dns_mx)' active.json

自動化の組み込み例

cron で月次棚卸し

#!/bin/bash
# /etc/cron.monthly/dnstwist-audit.sh
DOMAIN="example.co.jp"
OUT="/var/log/dnstwist/$(date +%Y%m).json"
docker run --rm elceef/dnstwist \
  --registered --format json $DOMAIN > $OUT
mail -s "Monthly typosquat audit" admin@example.co.jp < $OUT

GitHub Actions ワークフロー

name: Monthly typosquat audit
on:
  schedule:
    - cron: "0 0 1 * *"
jobs:
  audit:
    runs-on: ubuntu-latest
    steps:
      - run: |
          docker run --rm elceef/dnstwist \
            --registered --format json example.co.jp > result.json
      - uses: actions/upload-artifact@v4
        with:
          name: typosquat-audit
          path: result.json

dnstwist とドメイン番人ツールの使い分け

dnstwist vs ドメイン番人

用途 dnstwist ドメイン番人
OSS / 自社環境で動かしたい
出力を細かく加工したい
即時に Web で確認したい
日本語 UI で結果共有したい
リスク 3 段階の自動分類 △(手動分類)
月次自動化

おすすめ運用:

  • 普段は ドメイン番人 類似ドメイン棚卸し で半年に 1 回スポット
  • 大規模ブランド管理 / 月次自動化したい場合は dnstwist を CI に組み込む

両方とも MIT ライセンス互換のロジックを使っているので 検出結果は概ね一致します。

まずは現状を把握しましょう

Web ブラウザだけで使える 類似ドメイン棚卸し 単発チェック で 30 秒で類似ドメインを網羅できます。

棚卸しの結果精査と DMCA / UDRP テンプレ提供は 類似ドメイン棚卸し+ブランド保護診断(5 万円〜)でご相談ください。

関連記事:

総合点検は 無料のドメイン診断 を、SSL 単独は SSL 単発チェック をご利用ください。

次の一歩は無料診断から。