ユーザーが十分に注意することでサイバー攻撃に対抗できる。このような思い込みは危険だ。例えば、正しいURLを入力したにもかかわらず、攻撃者の用意した偽サイトに誘導されてしまう攻撃が存在する。なぜこのようなことが起こるのか。今回はインターネットの仕組みを悪用して偽の通信を成立させたり、盗聴できたりすることを再確認し、現在実際に発生している事例を基に対策を考えていく。
偽サイトに接続させるような「フィッシング詐欺」にはどのように対抗すればよいのだろうか。
「画面に本物と違うところがないかどうか確認する」「正しいサイトかどうかURLをチェックする」など、利用者の注意力に頼った対策が古くから推奨されてきた。しかしWebサイトを構成するHTMLやCSSは簡単に複製ができるため、「Webサイトそのものを丸ごとコピーする」ことで、簡単に本物そっくりな偽サイトを作成できる。このことは読者の皆さんもご存じのことだろう。
URLはコピーできない。では偽サイトをすぐに識別できるかというと、話はそこまで単純ではない。ネットワークに詳しい方であれば、たとえURLが正しくても、だます方法があることをご存じだろう。
今回はインターネットの仕組みを悪用して偽の通信を成立させたり、盗聴できたりすることを再確認し、現在実際に発生している事例を基に対策を考えていく。
インターネットを支える基礎技術の一つがARP(Address Resolution Protocol)。TCP/IPネットワークにおけるイーサネットフレームを送受信するためのプロトコルだ。われわれが比較的理解しやすいIPアドレスから、物理アドレスであるMACアドレスを確認するためのものだ。IPアドレスとMACアドレスを変換するARPテーブルに基づいて動作し、もしARPテーブルからIPアドレスを引いた際にMACアドレスが存在しなかった場合、ARPリクエストを発して、MACアドレスを取得する。
この作業はOSがカバーするため、利用者はARPの動作を理解していなくても通信は可能だ。しかしこの仕組みを悪用すると、LAN内での盗聴が可能になる。
ARPテーブルにはIPアドレスとMACアドレスの組が記録されている。ARPリクエストに対して、正しい機器のものとは異なるMACアドレスを応答させたり、明示的に応答を送り込んだりする手法でARPテーブルを意図的に改ざんできる。これは危険だ。なぜなら特定のノードに通信を行った際に、攻撃者が用意したノードへと通信を横取りできるようになるのだ。さらに横取りした通信をそのまま正しいノードへも転送するようにすれば、盗聴が可能になる。このようなARPテーブル改ざんが、ARPスプーフィングと呼ばれる攻撃の正体だ。
正しいIPアドレスを利用していても、その内容を不正に取得できる上に、方法によっては通信が正常に行われるため、利用者が攻撃に気付きにくいというのが特徴だ。この方法を使われると「気を付ける」だけでは検知、対処は難しい。
このような手法が存在することを知ると、たとえWebブラウザに入力したり、表示されたりしたURLが正しかったとしても、攻撃者が用意した偽のサイトにつながる危険性があるということに気付くだろう。
URLはDNSによりIPアドレスに変換され、IPアドレスはARPテーブルによってMACアドレスに変換される。ARPスプーフィングは基本的にLAN内の変換に使われること、より簡単に偽サイトに誘導するには「DNSを狙うべき」だ――攻撃者の視点で考えれば、そんな結論に至るだろう。
DNSへの攻撃といえば、ダン・カミンスキー氏が発見した「DNSキャッシュポイズニング」が思い浮かぶ。それ以外にも、BINDの脆弱(ぜいじゃく)性のうち利用できそうなものを使うこともあり得るだろう。しかし、もっと単純に「エンドポイントのDNS設定を変更し、別のDNSを参照させる」ことができれば、正しいURLを開いたとしても偽のサーバーに誘導できる。
実はこのような方法が、実際の攻撃として続いている。しかも、家庭向け、アジア圏向けの攻撃として成立しているのだ。
Copyright © ITmedia, Inc. All Rights Reserved.