2005年1月,米国ITメディアのいくつかが「pharming(ファーミング)」という言葉を使い始めた。オンライン詐欺「phishing(フィッシング)」の“進化形”と説明している。phishingがfishing(釣り)に基づいた造語であるのに対して,pharmingはfarming(農業,農場で栽培する)をもじったものだ(注1)

注1:「医薬品成分を含んだ遺伝子組み換え植物を栽培すること」「遺伝子組み換えによって医薬品成分を含んだ動植物を作ること」などもpharmingと呼ばれる。こちらは,「栽培する」のfarmと「薬学」のpharm(pharmacy)を組み合わせた造語。

 ただし言葉は新しいものの,ファーミングの内容自体は目新しいものではない。フィッシング“対抗”で無理やり作られた単語に思える。一部のセキュリティ・ベンダーがユーザーをあおるために作った感が強い。とはいえ,今後は国内メディアでも目にする機会があるかもしれないし,ベンダーのセールス・トークにも出てくる可能性も高い。

 そこで本稿では,ファーミングについて簡単に解説する。言葉自体はともかく,その手口と防御策は知っておいて損はないだろう。

偽サイトへ自動的に誘導

 IT Proで何度も解説している通り,フィッシングはオンライン詐欺の一種(関連記事)。ユーザーを正規のサイト(ショッピング・サイトや銀行/クレジット・カード会社のサイトなど)に見せかけた偽サイトへ誘導し,クレジット・カード番号やサービスのパスワードといった個人情報を入力させて盗む。

 このとき,ユーザーを偽サイトへ誘導するために使われるのが,そのサイトの運営企業から送られたように見せかけた偽メールである。偽メールには,もっともらしい文章とURLが記されている。そのURLをユーザーがクリックすると,偽サイトへ誘導されることになる。偽メールを餌にして,ユーザーを偽サイトに“釣り上げる”ことからフィッシングと呼ばれる。

 それに対してファーミングでは,フィッシングとは異なり,餌(偽メール)をまく必要はない。“種”さえまいておけば(仕掛けを施しておけば),えさをまかなくても“収穫”できるという。このため,ファーミングと呼ぶ。

 具体的には「ユーザーが“正規のURL”をブラウザに入力しても,偽サイトへ“自動的”に誘導される」——。これがファーミングである。「悪意のあるWebサイトへのリダイレクト」と説明される場合もある。例えば,ブラウザに「http://itpro.nikkeibp.co.jp/」と入力すると,IT Proサイトではなく,偽のサイトへ誘導されるという。そして偽サイトでは,フィッシング同様,クレジット・カード番号といった個人情報を入力させて盗む。

 もちろん,通常はこんなことはあってはならない。ファーミングを試みる人物(ファーマー:Pharmer)は,不正な手段を用いて偽サイトへの誘導を可能にする。その不正な手段(仕掛け)が,ファーミングにおける“種”となる。

 具体的には,(1)ウイルス(ワーム)などを使って,クライアントのhostsファイル[用語解説])を書き換える,(2)DNSサーバーに虚偽の情報をキャッシュさせる(これは「DNSポイズニング」と呼ばれる)——など。つまり,アドレス解決時にhostsファイルやDNSサーバーから偽のIPアドレスを返させて,偽サイトへ誘導するのである。

 首尾よく種さえまけば(細工さえ施せば),後は“実る”のを待つだけである。偽のメールをまかなくても,偽のURLをクリックさせなくても,ユーザーはそのサイトを本物サイトだと思ってやってくる。そして,そのサイトで入力されたパスワードなどは,すべてファーマーへと送られる。

 ユーザーとしては,「メール中のURLをクリックせずに,自分でアドレス・バーにURLを入力する」といった,フィッシング対策の一つを実施しているにもかかわらず,偽サイトへ誘導されてしまうのだ。ブラウザのアドレス・バーには,正規のURLが表示されているので,偽サイトだと見抜くのが難しい。