ホモグラフ攻撃

ホモグラフ攻撃（ホモグラフこうげき、）は、URLのホスト名の文字として、真正なサイトに酷似した、異なる文字（ = 見た目の形が紛らわしい文字）を用いて偽装し、偽のサイトに誘導するスプーフィング攻撃の一種で、同形異字語攻撃ともいう。

国際化ドメイン名を使用したホモグラフ攻撃はIDNホモグラフ攻撃 (あいでぃーえぬほもぐらふこうげき)と呼ぶと呼ばれる。

ホスト名（ドメイン名）に使用できる文字は、原則としてASCIIコード内のアルファベット・数字（A - Z、0 - 9）とハイフン(-)、ドット(.)だけであるが、国際化ドメイン名ではUnicodeほかの非ASCII文字をPunycodeによりエンコードして利用できる一方、ブラウザなどのユーザにとってはエンコードされた文字列は通常マスクされ、国際化ドメイン名の表記でそのまま利用できる。

この場合において、例えば ASCII文字 "C" に対し、ギリシア文字、（非ASCIIの）ラテン文字、キリル文字など、それぞれにおいて字体が異なる酷似した文字コードに割り当てられており、IDNホモグラフ攻撃は、アルファベットの大文字・小文字、全角・半角の文字記号など、これらの「見た目の形が紛らわしい文字」を用い、偽サイトのURLに割り当てることで人間の目を欺いて悪用する。

ASCII文字でのホモグラフ 

ASCII文字でのホモグラフ攻撃の一例：

正しいドメイン名
 GOOGLE.COM
 google.com
 microsoft.com
 apple.com
を、偽装したドメイン名の例は以下のようになる。

 G0OGLE.COM（半角数字の 0（ゼロ）を混ぜて偽装している）
 googIe.com（大文字の I（アイ）を混ぜて偽装している）
 rnicrosoft.com（r と n をくっつけ、 m に見えるよう偽装している）
 appie.com（小文字の i（アイ）を混ぜて偽装している）

IDNホモグラフ 
Unicode下では、主に半角のアルファベット（ラテン文字）と字形が酷似した以下のものなどが悪用される。
 ギリシア文字、
（非ASCIIの）ラテン文字
 キリル文字
 アルメニア文字
 アブジャド
 チェロキー文字
 ローマ数字、
 CJK互換用文字
 囲みCJK文字・月、数学用英数字記号、
アキュート・アクセント
 その他全角文字（マルチバイト文字）

ほかUnicodeにはゼロ幅スペース、ゼロ幅非接合子や双方向テキストに関する制御コードが定義されているが、これらはおおむね国際化ドメイン名に使用できない。

また、中国語使用者には繁体と簡体の漢字がシノニム的なホモグラフ文字として問題になる。一部のTLDでは、「繁体字表記」と「簡体字表記」の両方を同時にドメイン登録するように要求している場合がある。

IDNでのホモグラフ攻撃の一例：

正しいドメイン名
 wikipedia.org
 朝日.com

偽装ドメイン名
 wikipediа.org（全角の ａ（スモールエー）を混ぜて偽装している）
 wíkipedia.org（半角の i（スモールアイ）と酷似した、 í を混ぜて偽装している）
 朝曰.com（「日」と酷似した、「曰」で偽装している）

脚注

注釈

出典

関連項目 
 国際化ドメイン名
 Punycode
 タイポスクワッティング
 Unicode正規化
 ホモグリフ
 全角と半角
 大文字と小文字

ドメイン名
Unicode
コンピュータ・ネットワーク・セキュリティ
詐欺
難読化