<20190814追記>
EV SSL証明書についてはブラウザ側の扱いが変わりつつあり、当エントリは古い情報ということで下記エントリを参照頂きたい。
</追記終わり>
どう考えても疑問なので色々調べてたら大作になったw(挨拶)。題名も大作w。
(2014/06/14追記)さらに題名が長くなった(´・ω・`)。Android版Chromeについて追記、iOS版Chromeについて加筆・訂正実施。補遺は【補遺】三菱東京UFJ銀行を騙るフィッシングサイトが例の「偽画面に注意!」そっくりらしいのだが、なんでURLをチェックするように指示してEV SSL証明書をチェックするように指示しないのか不明なので色々調べてみた。に記載したのでそちらもどうぞ。
ようこそ、バーボンハウスへ!三菱東京UFJの警告画面をコピーしたフィッシングサイト登場の巻(えふしん) - 個人 - Yahoo!ニュース を見て、一応BTMUに口座を持っている身としては完全には他人事ではないし、前から啓発方法が疑問だったので色々調べてみた。
ここからは色々それぞれの説明を入れながらなので長いが、結論は「利用者にはURLではなくEV SSL証明書をチェックさせろ」なのでよろしく。
フィッシング被害を避けるための前提知識
サーバサイドの技術者なら、https://のサイトを作るためにはサーバ証明書が必要であることを知っている。このサーバ証明書は、そのサーバが正しいことを証明するためのもの。サーバ証明書という名称ではあるがもちろん紙ではなく、証明するデータを格納する規格にしたがって作成されたデータのかたまり。
httpsを使用する理由は、サーバとブラウザで通信するときにhttpだと平文(暗号化していない)通信なのだが、httpsにすると暗号化できるため。インターネットバンキングだと、利用者は他人に知られたくない情報をやりとりするし、通信内容を途中で勝手に書き換えて意図しない先に振り込まれたりすると困る。そのためインターネットバンキングなどでは、暗号化はインターネットセキュリティの第一歩として必ず行われる。
サーバ証明書があるようにクライアント証明書というものもある。例えば保険会社が保険代理店(もちろん保険会社とは別会社)に保険会社の様々なシステムを使用させるために使っている。これはPC等のクライアント機器を特定でき、サーバ側だけでなくクライアント側も、非正規の接続者がシステムを不正利用する可能性を極小化するために役立つ。顧客情報を扱うわけで、そこいらのテキトーなPCとかからは接続させないために必要な措置。
サーバ証明書だが大きく分けると3種類ある。
- 第三者認証局がドメインの使用権、企業の実在性、Webサーバの関係・結び付きを確認して発行するサーバ証明書
- 第三者認証局がドメイン登録情報を確認して発行するサーバ証明書
- 独自の認証局を立てて発行するサーバ証明書
第三者認証局(CA:Certificate Authority)というものだが、一般には企業が運営していて、多くの政府機関・企業に信頼された第三者。できるだけ平易に説明するとこんな感じ。「公開鍵がどうたら」とかやると本題に入る前におなか一杯になる程度には色々面倒な説明が待っている。Wikipadia(日本)の説明はあんまり良くないので、詳しく知りたい人は実際に認証局を運営している企業の詳細な説明がいいだろう。
#3だがまずさっくり片づけておくと、一般にはオレオレ証明書とか自己証明書とかと呼ばれるもの。自分専用で認証局も作っちゃうから。オレなんかはあえて、インターネットに公開するhttpsのサーバを必要としているクソマジメな企業担当者に対しても、オレオレ証明書って呼んでた。「オレオレ」という言葉のイメージのお蔭で説明がしやすいから。これを使っているサーバにhttpsアクセスすると警告が出る。警告が出るので、猿でも怪しいということが分かる。ただ、社内などで使う場合など、有償のサーバ証明書を買うほどではない程度の用途には使っていい。警告を出ないようにすることも、サーバ証明書をクライアントの「信頼されたルート証明書」ストアにインストールすることで可能。
問題は#2の存在で、https://になっているサイトだからといっても、いい加減な確認で発行されているものがあること。その手前のドメイン作成も。例えば今回のBTMUの件だと、「偽画面に注意!」が偽画面だった……「三菱東京UFJ銀行」を騙るフィッシング - ライブドアニュースにあるようにBTMUが使いそうなドメイン名やURLを使っていたりする。mufgねえ( ゚Д゚)
メールは「http://www.jxdp.●●●●.cn/css/index.htm」「http://www.●●●●.com/Img/」「http://www.mufg.jp.snr.●●●●.com/ibg/dfw/APLIN/loginib/login.htm?_TRANID=AA000_001」などの偽サイトへ誘導する内容となっている。
ドメインの登録可否判断は認証局の仕事では無いので、いい加減なレジストリ(ドメイン領域のデータベース管理をする機関)・レジストラ(ドメイン名の登録を受け付ける組織)が、実在企業などと似たような名前を受け付けてしまうことを防ぐ手立てがない。日本の.jpの場合はJPRSが結構厳格に運営しているのであまりトラブルは多くないと思うのだが、世界中のレジストリが全て厳格なわけではない。
そういう意味ではフィッシング用のドメイン名は登録できるし、ドメイン部分ではなくてもそれっぽい文字列を入れ込んで来るのに、URLをチェックしろっていう啓発はアタマワルイ。フィッシングする側もフィッシングしやすい。
URLの構成については、以前書いた無粋だけどasahi.comの「トルコ、独自URLのttt検討 wwwやめて管理強化」の面白いポイントを説明するよから再利用。これ書くのも結構面倒なのよw。
http://digital.asahi.com/articles/ASG4N3SMDG4NUHBI00N.html
│←──────────── URL ──────────────→│
│←→│ スキーム(Scheme)
│←─────── パス名 ────────→│
#2(第三者認証局がドメイン登録情報を確認して発行するサーバ証明書)の問題を解消するために、#1をより厳格に運用することで発行されるサーバ証明書がEV SSL証明書。EV SSL証明書は正式にはExtended Validation SSL証明書。
いままでのサーバ証明書よりも通信相手の認証、つまり企業の実在性確認などの認証方法を厳格にし、業界内で統一基準を設けたサーバ証明書がEV SSL証明書。EV SSL証明書は厳格な認証をクリアした企業だけが導入可能。この厳格な認証をクリアした証拠としてEV SSL証明書では緑色のバーが表示され、従来のSSLサーバ証明書にくらべ、誰もが分かりやすい形で安全性の「見える化」が行われている。 ことになっている。
実際にEV SSL証明書をチェック
前段で『従来のSSLサーバ証明書にくらべ、誰もが分かりやすい形で安全性の「見える化」が行われている。 ことになっている。』というように表現した。EV SSL証明書をチェックできないブラウザも存在するので。ということで、Windows,Mac OS X,iOS,Androidで見ていく。操作性の都合もあるのでiOSはiPad Air、AndroidはThinkPad Tablet(初代のAndroidのやつ)で実施した。
チェックしたサイトは話題のBTMUのやつ(三菱東京UFJダイレクトのログイン画面)、比較対象としてfacebook。Facebookは通常のSSLサーバ証明書、TwitterはEV SSL証明書( `ー´)ノ
Windows:Internet Explorer 11
今回はWindows 8.1のIE11で確認した。IEの場合はOS,バージョン(もちろん現在サポート期間中のものであれば)によって、多少の見た目や操作性の違いはあっても大差ない。またEV SSL証明書をチェックできるブラウザという点では問題ない。
BTMUのログイン画面。ちゃんとURL欄は緑色。これだけでも信頼できるわけだが、鍵マークをクリックして証明書を見てみよう。
ポップアップするので<証明書の表示>をクリックする。
証明書のダイアログが表示されるので、各タブをクリックして表示させた。一番左の「全般」タブと一番右の「証明書のパス」タブにEV SSL証明書であることが掲示されている。
Windows:Chrome 32
ちょっとバージョンアップできなくて32のままのChrome。BTMUのログイン画面にアクセス。ちゃんとURL欄は緑色。これだけでも信頼できる。これも鍵マークをクリックしてみる。
BTMUであることが確認できる。「接続」タブをクリックしてみる。
EV SSL証明書であることが確認できる。ここで証明書情報をクリックすると、IEと同じ証明書ダイアログが出る。
IEと同じだけど一応。
で、代表でChromeでfacebookをチェック。ちょい違いが分かりにくいのだが、BTMUのEV SSL証明書のときはhttps://の前に薄く緑色に塗られていたEV SSL証明書の表示、facebookはEV SSL証明書ではないのでいきなりhttps://になっている。ここで判別する。これも一応証明書を見てみよう。
やはり通常のサーバ証明書なのでEV SSL証明書を示すものが無い。金融機関がEV SSL証明書を使っていないということは無いはずなので、このように判別すればURLの文字をチェックしていくよりも圧倒的にチェックしやすいうえ、チェックミスも無い。
Windows:Firefox 29
これもバージョンアップ前の29。BTMUのログイン画面にアクセス。ちゃんとURL欄は緑色。これだけでも信頼できる。これも鍵マークをクリックしてみる。
証明書情報概要が表示される。[詳細を表示…]をクリックする。
ページ情報ダイアログが表示される。[証明書を表示(V)…]をクリックする。
証明書ビューアが表示されるので確認してみる。[詳細(D)]をクリックするとEV SSL証明書というようになっている。
Mac OS X:Safari
OS XではまずApple謹製のSafariから。きちんと緑色表示になっている。これだけでも信頼できるわけだが、これも鍵マークをクリックしてみる。
ダイアログが表示される。[証明書を表示]をクリックしてみる。
EV SSL証明書であることがわかる。もっと詳細な情報もあるようだが、ここまで確認できればよいだろう。
比較対象としてfacebookにアクセス。これはわかりやすくhttps://がグレーに塗られている。
やはりEV SSL証明書ではない。
Mac OS X:Chrome
OS XにもあるChrome。このOS XにはChrome未インストールだったのだが、このチェックのためにわざわざ入れてみた。
問題はここから。きちんと緑色表示になっている。これだけでも信頼できるわけだが、これも鍵マークをクリックしてみる。でも動かない。スクリーンショットが撮れないので写真に撮った。こんな感じ。
ということで、一応EV SSL証明書であることは分かるのだが、証明書の中身は見ることができない。
Android:標準ブラウザ
まずはタブレット用ログイン画面。NortonのリンクはあるがURL欄は隠されている。Nortonのリンクで確認しろっていうことのようだが、それだとニセモノは簡単に作れる。セキュリティ上の意味は無い。
PC版もアクセスしてみる。これまたURL欄は隠されている。
ということで、Androidの標準ブラウザでは三菱東京UFJダイレクトでインターネットバンキングはやらない方がいい。URLさえチェックできない。手前の画面まではURLが表示されているのだが。これはBTMUが悪い。昔流行ったURLを隠すパターン。セキュリティ的に危険。オレならこの担当者は更迭する。あほか。
Android:Opera
続いてOpera。EV SSL証明書の切り分けは行われず。URL欄は見えている。多分OperaだとURL欄隠しの制御ができていないんだなw、幸か不幸か。まあフィッシングを避ける意味ではURLがチェックできるので幸い。
OperaではEV SSL証明書の判別はしてくれないので、使うなら自己責任で。URLチェックは可能。BTMUのお勧めパターンw。
Android:Firefox
FirefoxだとBTMUの赤faviconの右に緑色の鍵マーク。一応これがEV SSL証明書の証。鍵マークをクリックしてみる。
緑色の証明書の表示はあるが証明書の詳細情報は見ることができない。比較対象としてfacebookにもアクセスしてみる。通常のサーバ証明書だとグレーの鍵マーク。
Android:Chrome(20140614追記)
【補遺】三菱東京UFJ銀行を騙るフィッシングサイトが例の「偽画面に注意!」そっくりらしいのだが、なんでURLをチェックするように指示してEV SSL証明書をチェックするように指示しないのか不明なので色々調べてみた。にも記載した通りではあるのだが再掲。ログイン画面では緑の鍵マーク。タップしてみる。
SSLの情報が表示される。EV SSL証明書であることはこの時点で確認できる。証明書情報をタップする。
証明書ビューアが表示され証明書の詳細情報を参照できる。
比較対象としてfacebookのログイン画面。緑色の鍵マークが出ているのでタップする。
SSL情報は下記の通り。EV SSL証明書ではないことがわかる。一応、証明書情報をタップする。
iOS:Safari
iOSでもまずApple謹製のSafariから。きちんと緑色表示になっている。これだけでも信頼できるわけだが、これも鍵マークをクリックしてみる。
しかしこんな画面(´・ω・`)。これじゃあねえ。ぐぐったら(モバイルSafariで証明書を確認できない | raktn - 楽天ブログ)表示できない、OS X使ってね(・ω<)らしい。
iOS:Chrome
続いてChrome。きちんと緑色表示になっている。これだけでも信頼できるわけだが、これも鍵マークをクリックしてみる。
しかも証明書の情報も確認でき、、EV SSL証明書の状態もわかる。
比較対象としてfacebookのログイン画面。同じく緑の鍵マーク。
鍵マークをタップすると証明書情報を参照できる。EV SSL証明書ではないので、EV SSL証明書を示す情報は無い。
まとめ
というわけで色々見てきた。それぞれOSごとにまとめると下記の通り。
Windows
IEでもChromeでもFirefoxでも、きちんとブラウザがEV SSL証明書を判別し、なおかつ証明書の内容も十分に参照可能。この3ブラウザを使う限り、インターネットバンキング用の端末として必要十分な機能を備えている(安全かどうかは別問題なのでここでは論じない)。
OperaやSleipnirなどはインストールしてあるけど力尽きたのでテストしてない。シェアも低いし。どうしてもそのブラウザを使いたいという人はご自分でご確認頂きたい。
Mac
SafariはきちんとブラウザがEV SSL証明書を判別し、なおかつ証明書の内容も十分に参照可能。一方Chromeは証明書のチェックができない。ということでMacでインターネットバンキングをする人はSafariのほうがいい。
Android(2014/06/14加筆:加筆部分は太文字)
標準ブラウザ、Opera、Firefox、Chromeとチェックしたが、どれも合格点には達しない。標準ブラウザ、Opera、ChromeはEV SSL証明書を判別せず。標準ブラウザではURL欄が隠されるので、BTMUサイドでお勧めのURLチェックさえできない。FirefoxはEV SSL証明書を鍵マークの色で判別するので、とりあえずはFirefoxだったらちょっと安心というレベル。Chromeはhttp://とhttps://で色違いとなるが、一般のSSLサーバ証明書とEV SSL証明書で差異が無い。
Androidの場合は、金融機関によっては専用のインターネットバンキングアプリが提供される。このアプリの信頼性という問題は別途存在するが、Androidでインターネットをやりたい場合は金融機関提供のアプリを使うべき。アプリのインストール時にフィッシング物を入れないようにご注意。
iOS(2014/06/14加筆・訂正:加筆部分は太文字、訂正は消去線を使用)
モバイルSafariではEV SSL証明書を判別するが証明書のチェックはできない。ChromeではEV SSL証明書を判別でき、証明書のチェックも十分に可能。http://とhttps://で色違いとなるが、一般のSSLサーバ証明書とEV SSL証明書で差異が無い。証明書のチェックは可能。ブラウザでアクセスする場合はChromeを使うべき。どちらかも合格点に達しない。ユーザビリティ的にはSafari、証明書を確認したいときはChrome。
入院している時、手元にPCが無かったのでiPad Airで振込したのだが、たまたまChrome使ってた。ラッキーだぞ年末のオレw。
ちなみにApp StoreにはBTMUのアプリは無い(2014/06/13 16:20追記 iPhone用はあるそうです。ご指摘頂きました)。みずほ銀行とか一部の銀行にはアプリがあるので、提供される銀行の場合はアプリをお勧めする。
おまけ
BTMUではRapportをお勧めしている。
中略。対象はWindowsとOS XでOperaを含まない主要ブラウザ。
PCやMacでインターネットバンキングをやるなら入れてもいいかも。ブラウザにプラグインされるようだ。
参照先:三菱東京UFJ銀行の無料フィッシング対策ツールRapportを入れましょう | しゅうまいの256倍ブログ neophilia++
ということでLinuxはまるっと無視してみた。まあ誰も困らないよね。
出典:12月OSシェア - Windows XPのシェア30%以下へ | マイナビニュース
疲れたがな(´・ω・`)。そしてタイトルの「三菱東京UFJ銀行を騙るフィッシングサイトが例の「偽画面に注意!」そっくりらしいのだが、なんでURLをチェックするように指示してEV SSL証明書をチェックするように指示しないのか不明」な部分は不明なまま。EV SSL証明書で必要十分じゃん。EV SSL証明書を判別できるブラウザを使うだけだもん。なんでだろーな(棒