公開日:2007年6月28日
独立行政法人情報処理推進機構
セキュリティセンター
本ページの情報は2007年6月時点のものです。
記載の資料は資料公開当時のもので、現在は公開されていないものも含みます。
偽ページは、あたかも正規のページのように振る舞いユーザを騙すことを目的としている。ユーザが偽ページを正規のページと判断してアクセスした場合、例えば、次のようなことが起きる可能性がある。
偽ページの主な手口には、次のようなものがある。
偽ページ対策としては、ユーザが偽ページに騙されないように本物か偽物かが判断できるユーザインターフェースになっていることが重要である。
偽ページ対策を次に示す。残念ながら、これらの対策すべてを行っていてもユーザが偽ページに騙されることが無くなるわけではない。以下は推奨する対策であるが、これ以外にもユーザが本物か偽物かを判断できる情報をすこしでも多く提供するように作ることが重要である。
ブラウザのアドレスバーを表示させ、正しいドメイン名であるかを確認しやすくする。
ステータスバー上には、リンクのURLが表示されるので、確認できるようにしておく。
右ボタンメニューの「ページの情報」を選択することで、そのページ自体のURLやページに含まれるリンクのURL等の情報がわかるため、常に使用できるようにする。
TLS(もしくはSSL)を導入して、本物のサイトであることをサーバ証明書によって証明できるようにする。
自前で発行した証明書は、偽造されるおそれがあるため、ブラウザが信頼済みとしている認証局から発行された証明書を使用する。
LocationヘッダのURLを組み立てる際に、外部からのパラメータを利用している場合、パラメータの改ざんにより、偽ページへ誘導されてしまうおそれがある。そのため、リダイレクト先URLの作成時には、外部からのパラメータをできるだけ利用しないようにする。
独立行政法人 産業技術総合研究所情報セキュリティ研究センターとヤフー株式会社は、2006年1月からインターネットにおけるセキュリティ強化技術の共同研究を進めている。
この成果として、ウェブでの利用に適したパスワード相互認証プロトコルを開発した。
これは、PAKE (Password Authenticated Key Exchange)と呼ばれる暗号・認証技術に基づいて、既存の通信プロトコルに対応するように改良を加えた認証技術である。この技術をクライアントとサーバの両方が利用することで既存のユーザがパスワードでサイトの真偽を確認でき、フィッシング詐欺を防止できる。
基本となるPAKEは、クライアント・サーバ間で相互認証とそれに基づいた秘密情報の安全な共有を実現する方式であり、電子証明書を用いずにユーザー固有のパスワードを用いた相互認証を可能としている。今までWebに適用して用いられていなかった。
PAKE方式による認証では、パスワードは暗号化した情報として送信されるため、ユーザが誤って偽サイトへ送信しても、パスワード自体を盗まれることはない。また、偽サイトが暗号化したパスワードを取れたとしても暗号化前のパスワードは判らないため、辻褄の合う情報をユーザーに返すことができず、認証は成功しない結果となる。これによりユーザはアクセスしたサイトが正規のサイトではないと判断することができる。
クライアント・サーバ間での相互認証方法は、現在もワンタイムパスワード等で利用されている。この方法では、中間者攻撃によるフィッシングの手口が問題となる。中間者攻撃とは、攻撃者がクライアントとサーバとの通信の間に割り込み、クライアントと攻撃者との間の通信を攻撃者とサーバとの間の通信として中継することによって正規の相互認証が行われているようにしてセキュリティを破る攻撃手法である。
この攻撃対策として、PAKE方式を使った新たな認証方式では、パスワードを暗号化する際に、通信相手となるサーバのドメイン名等の情報を使って加工するようにしている。これにより、通信相手のドメイン名等と暗号化されたパスワードの情報にあるドメイン名等が合わないと認証は成功しないことになる。
参考: