10月30日、フィッシングサイトを開設したとして、不正アクセス禁止法違反で全国初の摘発が行われた。この件を機に、筆者が常々推奨したいと考えていた2つの対策を提案したい。
2012年5月1日に、一部改正された「不正アクセス行為の禁止等に関する法律(略称:不正アクセス禁止法)」が施行された。この改正では、いわゆるフィッシングサイトの開設・誘導を処罰の対象とした「識別符号の入力を不正に要求する行為の禁止等」が追加された。
識別符号の入力を不正に要求する行為の禁止等
アクセス管理者になりすまし、その他アクセス管理者であると誤認させて、次に掲げる行為をすることを禁止するとともに、その違反者を処罰することとする。
ア アクセス管理者が利用権者に対し識別符号を特定電子計算機に入力することを求める旨の情報を、電気通信回線に接続して行う自動公衆送信(公衆によって直接受信されることを目的として公衆からの求めに応じ自動的に送信を行うことをいい、放送又は有線放送に該当するものを除く。)を利用して公衆が閲覧することができる状態に置く行為
イ アクセス管理者が利用権者に対し識別符号を特定電子計算機に入力することを求める旨の情報を、電子メールにより利用権者に送信する行為
そして10月30日、早くも全国初の検挙があった。それも中学生による犯行だった(2012年10月31日時点の情報によると、フィッシングサイトの開設は2012年6月で、不正アクセス禁止法違反(フィッシング行為)の非行内容で近く書類送検する見通し)。さらに、このフィッシングサイトを作成するためのプログラムは、別の未成年によって作成されたものだった(不正指令電磁的記録提供の非行内容で補導し、児童相談所に通告)。
作成されたプログラムやフィッシングサイトがどれほど高度であったかということについては、いまのところ情報が少ないため(これから出てくるとは限らないが)、筆者には測りかねる。
昨今、さまざまな不正アクセス行為に対し、すぐに「高度」だとか「巧妙」といった枕詞が付けられることが多いが、すべてがそうではないと筆者は考えている。このような言葉で恐怖をあおったり、システムが侵害されたことへの免罪符にしてはならないとも考えている。
従って、この件は年端も行かない子供が行った不正アクセス行為というだけであり、その行為の程度がどうであるかについての評価は差し控えたい。
今回はこの事件を機に、認証情報を盗もうとするフィッシングサイトにどのように対抗すべきかについて、筆者なりに提案したい。ここで提案する対策は、フィッシングのみならずそれ以外の脅威についての対策にもなり得ると考えている。ぜひとも一考し、実施していただければ幸いだ。
前回の記事を読んでいただければ、フィッシングサイトの構築自体はいかに簡単であるかがご理解いただけるだろう。まだお読みになっていない場合は、ぜひ、この先を読み進める前にご一読いただきたい。
【関連記事】
http://www.atmarkit.co.jp/fsecurity/rensai/dknight09/dknight01.html
知らないほうがいいのかもね? 人の脆弱性にハラハラ
ここでは2つの対策を提案したい。どちらか一方でも十分な対策になり得るとは思うが、両方の対策を講じることで、より広範囲な保護につながるだろう。
この2つの対策は、筆者が常々、多くの人に実施していただきたいと考えてきたものでもある。
きっかけが中学生による犯行であることを悲しく思うが、この記事が、皆さんがセキュリティについて考えるきっかけとなり、セキュリティレベルの向上につながれば、そして便利なサービスを安全に使える環境につながればと期待している。
Webサイトやサービスの認証に用いられる情報のほとんどは、「ユーザー名とパスワード」の組み合わせだ。中でも要は「パスワード」だろう。
パスワードについては、過去に「パスワードの定期変更という“不自然なルール”」という記事でも取り上げた。この記事では、パスワードの保護策としてしばしばいわれる「定期変更」は本当に効果があるのかを検証し、定期変更を行う中で起こりがちな「パスワード強度の低下」「パスワードの使い回し」の危険性について言及した。
それらの危険性を防ぐために、筆者は「パスワード管理ソフト(パスワードマネージャ)」の利用が非常に有効だと考えている。
パスワード管理ソフトでは、「マスターパスワード」や「キーファイル(パスワード管理ソフトの認証に使うファイル)」を用いて、複数のサイトのユーザー名とパスワードなどを一元管理できる。つまり、パスワード管理ソフトを使えば、暗記することが難しい“長くて複雑なパスワード”を、“サイトごと”に、容易に設定・利用できるのだ。
1カ所にすべての情報を集中させることの危険性を指摘する向きもある。だが、強度の弱いパスワードを設定してしまったり、複数のサイトでパスワードを使い回す場合と、マスターパスワードなどをしっかりと管理し、守るべきポイントを1カ所にする場合とで、果たしてどちらが危険だろうか。加えて、パスワードを忘れては再発行、問い合わせなどをしなければならない手間も考えれば、セキュリティと利便性をバランスよく向上、維持する有効な手段だといえる。筆者自身もパスワード管理ソフトを愛用している。
ここでは、いくつかお勧めのパスワード管理ソフトを紹介しよう。一口にパスワード管理ソフトといってもいくつか種類がある。その中から、無償で利用できるものと有償のものを紹介しよう。
まずは、無償のものからだ。
このパスワード管理ソフトは利用者も多く、オープンソースであることも手伝ってか、数多くのプラグインや拡張がリリースされている。
インストール方法も簡単で、公式サイトで配布されている日本語言語パックを導入することで日本語化も可能だ。解説サイトもたくさんあるため、ここでは導入方法の詳細は割愛し、インストールおよび日本語化が完了している前提で、どのように使用すべきかを紹介する。
まずは、パスワードを管理するためのデータベースの作成からである。メニューの[ファイル]→[新規]から、新規のパスワードデータベースファイル(.kdbx)を作成する。このファイルにはすべてのパスワードが保存されるため、扱いには注意が必要だ。また、不慮の事故に備えてバックアップをとっておくことを強く推奨する。
パスワードデータベースファイルを新規作成・保存したら、次に復号マスターキーの設定を行う(日本語化した場合、ソフトウェア上では「復号」ではなく「複合」と表示されるが、おそらく表記ミスだろう)。
ここで設定する文字列がマスターパスワードである。つまり、これから保存していくであろうパスワードへアクセスする際に必要となる文字列である。これさえ覚えておけば、複数の複雑なパスワードを記憶しておく必要がなくなる。逆にいえば、これを忘れてしまうと元も子もなくなってしまう。いわば、パスワード管理の要だ。
マスターパスワードには、長く複雑な強度のあるパスワードを指定し、しっかり記憶するなり、誰の目にも触れないところに書き残すなりして、自分の管理を徹底していただきたい。
「KeePass」では、マスターパスワードの代わりに任意のファイルをキーファイルとして用い、保存したパスワードにアクセスすることも可能である。キーファイルを利用したい場合には、[マスターパスワード]のチェックを外し、[キーファイル/提供元]にチェックを入れ、好きな画像や音楽ファイルなど任意のファイルを指定するといいだろう(キーファイルに何らかの更新を加えると別のファイルと識別されるため、注意が必要)。ちなみに[マスターパスワード]と[キーファイル/提供元]はどちらか一方の指定も可能だが、両方を利用することも可能である。
次に[データベースの設定]が表示されるが、こちらはデフォルトのままで問題ないので[OK]で進めばいいだろう(後ほど変更を加えたい場合は、[ファイル]→[データベースの設定]で可能である)。
ここまできたら、個々のパスワードを登録する。メニューバーの[編集]→[エントリーの追加]で登録を行う。ここでは「タイトル」「ユーザー名」「パスワード」「URL」を入力する。これらの情報はログインの際に使用するので、正確なものを入力する必要がある。
言うまでもないことかもしれないが、マスターパスワードをきちんと覚え、パスワードデータベースファイルがあれば、極端な話、個々のパスワードを覚えておく必要はなくなる。覚えられないような複雑で長いものを設定するといいだろう。入力が済んだら[OK]で保存され、メインウィンドウに項目が追加されているだろう。
パスワードを決めかねるという場合は、同ウインドウの[もう一度]の入力欄の右にあるボタンをクリックして、[パスワード生成画面を開く]から強固なパスワードを生成してもいいだろう。
前述のとおり、このソフトにはたくさんのプラグインがある。ここでは、フィッシング対策にもなり得る拡張、「KeeFox」を紹介する。名前からも分かる通り、これは「KeePass」をFirefoxから利用するための拡張だ。他のブラウザ用の拡張も公開されているので他のものについては別途見ていただきたい(IEではKeeFormなどがよいかもしれない)。
さて、このプラグインがなぜフィッシング対策になるのかを説明しよう。まずは、次の2つのスクリーンショットを見比べてほしい。一方は本物。もう一方は、前回の記事同様にSET(Social-Engineer Toolkit)を利用して数秒で作成した「偽物」である。
こうした記事を読んでいる冷静な状態ならば、どちらが偽物かはすぐに判別が付くだろう。だが、ここで問題にしたいのは、見抜けたか、見抜けなかったかではない。「KeeFox」がどのように反応したかを見てほしい。
本物のサイトにアクセスしている方は、鍵マークがアクティブになり、登録した情報のユーザー名が表示されている。一方、偽物サイトにアクセスしている方は鍵マークが非アクティブになり、グレーアウトしている。これで自分が登録しているサイトかどうかが一目瞭然というわけである。
また、鍵マークの横にある「Logins」と書かれたボタンは「ブックマーク」(お気に入り)のような役割をしており、ここから、ページへのアクセスとログインという一連の処理を行うことも可能である。普段からこの「Logins」からログインするという運用も可能だろう。
もし、メールなどを利用して誘導リンクが送られてきた場合でも、これらの機能を使っていったん正規のサイトにログインしてから、再度そのサイトを確認してみるという方法もある。この場合、あなたはもう正規のサイトにログインしているはずだ。なのに、フィッシングサイトは「ログインしてくれ」と口を開けて待ったまま。見分けるのは容易なはずだ。
続いて有償のソフトウェアだが、これは簡単な紹介にとどめる。
筆者が現在使っている「1Password」である。こちらは有償のツールだけあって、1つで複数のOS、デバイス(Windows、Mac、Android、iPhone、iPad)に対応し、複数のブラウザの拡張が公開されている(Internet Explorer、Firefox、Chrome、Safari)。
もちろん先ほどの「KeeFox」のような機能も付いている。下図はChromeで、先ほどと同様、本物と偽物のTwitterにアクセスしているところである。
ちなみに、これらはあらかじめ入力したユーザー名とパスワードなどの情報とアクセス先をひもづけることで実現させている。従って弱点がないわけではない。
例えば、利用サービスのDNSが乗っ取られてレコードが書き換えられた場合は、リクエストしたドメイン名がいつもと同じで見た目も同じでも、アクセスした先は、実はいつもと違うということが起こり得る。こうした場合は、これらパスワード管理ツールは無力となる。また、内部のネットワークでARPキャッシュポイゾニングなどが行われ、リクエストしたドメイン名に対してアクセスする先がいつもと異なるものに変更を加えられてしまうと、やはり無力となってしまう。
このようにパスワードマネージャも完全無欠ではない。だが、前述したケースが起こる確率はどれほどあるかを考えれば、そして仮にパスワードマネージャを使わなかったとしても同じような結果を招くことを考えれば、ほぼ問題のない対策といえるのではないだろうか。筆者もそう考えてこの仕組みを利用している。
Copyright © ITmedia, Inc. All Rights Reserved.