[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
au携帯電話のバーコードリーダでジャンプ先URLが偽装される
- To: bugtraq-jp@xxxxxxxxxxxxxxxxx
- Subject: au携帯電話のバーコードリーダでジャンプ先URLが偽装される
- From: Hiromitsu Takagi <private2@xxxxxxxxxxxxxxxxxxx>
- Date: Fri, 15 Apr 2005 05:17:16 +0900
au携帯電話のバーコードリーダでジャンプ先URLが偽装される
=======================================================
以下は、JVN#9ADCBB12 http://jvn.jp/jp/JVN%239ADCBB12/ の事例について、
ユーザおよび開発者が知っておくべきと考えることがらについて、発見者の
立場からその発見内容および考察を公表するものである。
概要
----
au携帯電話の「バーコードリーダ」機能でQRコードを読み取り、そこに含まれ
るURLにEZwebでアクセスする際、特定のQRコードを読み取ると、画面上で選択
したのとは異なるURLにジャンプしてしまう。この挙動は、リアル世界で配布
される悪意あるQRコードによって、バーチャル世界で偽サイトに誘われてしま
うという、いわば「ユビキタスフィッシング」の危険性をもたらしている。
この挙動が生じないよう修正された「バーコードリーダ」BREWアプリの新バー
ジョンがKDDIより提供されているので、ユーザは最新版をダウンロードするこ
とでこの問題を解決できる。また、ダウンロードしない場合でも、以下に述べ
るとおり、この問題の原因を知って使い方に注意することで被害を回避できる。
履歴
----
2005年2月3日 IPA脆弱性情報届出窓口に届け出た。
2005年4月14日 JVNにて公表された。
対象
----
4月14日付の「auからのお知らせ」に、該当機種が記されている。
バーコード (2次元コード) リーダーご利用にあたっての注意点
http://www.au.kddi.com/news/information/au_info_20050414.html
「バーコードリーダ」BREWアプリの該当バージョンは不明であるが、少なくと
も、発見者は「BARCODE READER MEDIASEEK/KDDI Version 2.0.5h」と表示され
るバージョンにおいてこの現象を確認し、また、現時点で最新版の「BARCODE
READER MEDIASEEK/KDDI Version 3.0.1a」と表示されるものについて、この現
象が起きないことを確認した。
現象
----
以下の1行の内容をQRコードとして作成すると図1の画像が得られる。
MEBKM:TITLE:http://www.au.kddi.com/;URL:http://i.nttdocomo.co.jp/;;
図1: http://takagi-hiromitsu.jp/security/bugtraq-jp/20050415-1/fig/1.png
このQRコードを当該BREWアプリ「バーコードリーダー」で読取ると、携帯電話
は図2の画面となる。
図2: http://takagi-hiromitsu.jp/security/bugtraq-jp/20050415-1/fig/2.jpg
ジャンプ先として表示されている1つ目のものが「http://www.au.kddi.com/」
となっていることを確認しつつ、「選択」ボタンを押す。すると、メニューが
現れる(図3)。
図3: http://takagi-hiromitsu.jp/security/bugtraq-jp/20050415-1/fig/3.jpg
ここで「URLを参照する」を選択すると、「URLへ接続します。よろしいですか?」
という確認画面が現れる(図4)。
図4: http://takagi-hiromitsu.jp/security/bugtraq-jp/20050415-1/fig/4.jpg
「はい」ボタンを押すと、www.au.kddi.com ではなく i.nttdocomo.co.jp へ
ジャンプしてしまう。
問題点と原因
------------
一般に、携帯電話のWebブラウザにはアドレスバーがない。一部の携帯電話会
社のブラウザでは、メニューからURLを確認できるようになっているものもあ
るが、アドレスバーがないため、携帯電話のユーザは、今見ているページがど
このドメインのサイトであるかを普段意識せずに使うのが通例となっている。
特に、auのブラウザでは、メニューにも現在のURLを確認する機能が用意され
ていない。
現在の画面のアドレスを確認できない(確認しにくい)ことは、フィッシング
詐欺など、偽サイトに騙されやすくなる危険性をもたらしかねないところであ
るが、携帯電話では一般的に、メールはテキストメールである(HTMLメール機
能がない)ため、メールで誘われたジャンプ先はテキストとしてURLがはっき
りと見えるようになっているうえ、さらに、メールからWebサイトへのアクセ
スが発生する直前の段階で、ジャンプ先URLを表示させて、本当にここへアク
セスしてよいかを確認する機能が搭載されているのが通例である。
このように、携帯電話のWebブラウザでは、ジャンプ前にジャンプ先のサイト
のドメイン名を確認するという使い方をユーザに習慣付けることによって、偽
サイトへの誘導を防止しているのが現状であると言える。
しかしながら、「バーコードリーダ」の当該バージョンでは、図4 のように、
ジャンプ前の確認ステップは存在するものの、本当のジャンプ先URLが表示さ
れない。
また、図2 に示したように、QRコードを読取った直後の画面では、リンク先が
あたかも http://www.au.kddi.com/ であるかのように表示されているが、こ
の部分の本当のジャンプ先は http://i.nttdocomo.co.jp/ となっている。こ
のような現象が起きる原因は次の通りである。
今回使用したQRコードのデータは、
MEBKM:TITLE:http://www.au.kddi.com/;URL:http://i.nttdocomo.co.jp/;;
であるが、これは、NTTドコモの携帯電話用の書式にしたがって書いたもので
あり、冒頭の「MEBKM:」は「ブックマーク登録機能」を指す。
資料: NTTドコモのバーコード機能における「ブックマーク登録機能」
http://www.nttdocomo.co.jp/mc-user/i/barcode/s2.html#3_1_3
「TITLE:」以降に記述する部分は表題であり、「URL:」以降がジャンプ先の
URLである。これをNTTドコモの携帯電話で読取ったときの表示を図5に示すが、
このように、「TITLE:」で指定した部分はリンクとしてではなく、そのままテ
キストとして表示されるのが本来の挙動である。
図5: http://takagi-hiromitsu.jp/security/bugtraq-jp/20050415-1/fig/5.jpg
auの携帯電話のバーコード機能の仕様には、この「MEBKM:」の書式は存在し
ないが、当該ソフトウェア「BARCODE READER MEDIASEEK/KDDI Version
2.0.5h」は、NTTドコモ仕様の「MEBKM:」も解釈するように作られている。
資料: auのバーコード機能における書式
http://www.au.kddi.com/ezfactory/tec/two_dimensions/index.html
通常の使用においては、読み取り結果の画面は図6のようになる。これは、
「TITLE:」欄にURLでないテキスト「au by KDDI」を記入したQRコードを読取っ
たときの画面である。タイトル部分がリンクとなり、ジャンプ先は「URL:」欄
に指定したURLとなっている。
図6: http://takagi-hiromitsu.jp/security/bugtraq-jp/20050415-1/fig/6.jpg
しかしながら、タイトル部分がURL形式である場合においても同様に動作して
しまうため、図2 のように、あたかも www.au.kddi.com へのリンクであるか
のように誤認させる形で、i.nttdocomo.co.jp へのリンクを表示させることが
できてしまう。これは、PC用のHTMLメールで昨今横行しているフィッシング詐
欺の手口と同じ仕組みである。
またこのとき、図2のように、画面には偽のジャンプ先と、本物のジャンプ先
の2つが並んで表示されることになるが、この表示は、「MEBKM:」機能を使用
せずに、単に2つのURLが記載されているQRコードの場合と違わない表示形式で
あるため、「MEBKM:」により偽装されているのか、通常の2つのURLなのか、区
別がつかない。
したがって、ユーザがジャンプ先を誤認したままアクセスを許可してしまうお
それがある。
回避策
------
こうした挙動の事実を知っていれば、図2の段階で、2つのURLが表示されてい
るときには、2つ目のURLが怪しいアドレスでないかを目視確認することで、そ
のQRコードがジャンプ先偽装を企んだものではないかと疑うことができる。
また、図3の段階で、「URLを参照する」ではなく「アドレス帳に登録する」を
選択し、一旦アドレス帳に登録したうえで、アドレス帳からURLにジャンプす
るようにすれば、アドレス帳では本物のURLを目視確認できる。
修正内容
--------
4月14日にリリースされた最新バージョンでは、図2の部分が図7のように表示
されるようになった。
図7: http://takagi-hiromitsu.jp/security/bugtraq-jp/20050415-1/fig/7.jpg
つまり、NTTドコモの書式に非対応となった。これにより、TITLE:欄に記述さ
れたURLは、単独のURLとして解釈されることとなり、http://www.au.kddi.com/
として表示されるリンクのジャンプ先は http://www.au.kddi.com/ となるよ
うに改善された。
また、http://www.au.kddi.com/news/information/au_info_20050414.html に
記されているように、ジャンプ直前の接続確認画面に、ジャンプ先のURLが表
示されるように改善された。
脅威と考察
----------
今後、本格的なユビキタス社会が到来すれば、チラシ広告や街角のポスターな
どに記載されたQRコードから、携帯電話で目的のWebサイトへアクセスすると
いったことが日常化してくると考えられる。
このとき、銀行や著名なネットショップへのジャンプ用のQRコードを読み取っ
たつもりが、フィッシング詐欺用の偽サイトへと誘導されてしまうといった事
態が起きかねない。本物のポスターに偽サイトのURLを記したQRコードのシー
ルを貼られて誘導されるという恐れもあるので、QRコード画像が掲載された媒
体の物理的な真偽を見極めるという対処は現実的でない。
携帯電話ユーザの自衛策は、PCの場合と同様に、ジャンプ先のURLが信頼でき
るドメインのサイトになっているかを確認することに尽きる。
しかしながら携帯電話にはアドレスバーが存在せず、ジャンプ後ではなく、ジャ
ンプ前にURLを確認せざるを得ない。当該「バーコードリーダ」のこの挙動は、
ジャンプ前のURL確認を誤認させるものであるため、ユーザがそのまま偽サイ
トにパスワード等の重要情報を入力してしまうおそれがあった。
根本的な問題解決のためには、携帯電話のWebブラウザにアドレスバーを設け
るべきである。それが当面実現しないのであれば、それまでの間は、外部から
の入力によって指定されるURLにジャンプする機能を持つソフトウェアを作成
する際には、必ず、ジャンプ前にジャンプ先のURLを表示して、ユーザに確認
を求めるよう設計する必要がある。
この公表の必要性と妥当性
------------------------
auからの発表文「バーコード (2次元コード) リーダーご利用にあたっての注
意点」では、なぜこの事象に注意しなくてはならないのかが説明されておらず、
悪意ある第三者からの攻撃に対して弱いという性質を持つ問題点であることが
ユーザにわかりにくくなっている。QRコードを介したフィッシング詐欺のおそ
れがあることは、ユーザに伝える必要があると考える。
こうした種類の脆弱性は現時点では珍しいものであるため、こうした設計や実
装がこのような懸念を生じさせるものであることを、開発者に広く知らせるこ
とで、類似の脆弱性が今後再び生じないよう促す意義は大きいと考える。
この脆弱性が悪用されるには複数のプロセスを踏む必要があり、また、利用者
による能動的な操作が必要となるものであるので、現時点で直ちに攻撃の現実
性が高いものではないと考える。また、ユーザの現実的な回避策も存在する。
脆弱性を公表することによって生ずるリスクよりも、事実を公表することによっ
て将来の安全を確保する長期的なメリットの方が上回ると判断する。
以上
--
高木 浩光@自宅