Starbucks、モバイルアプリのぜい弱性を速やかに修正

StarbucksのiOS向けモバイルアプリに、個人情報の漏えいの恐れがあるバグが含まれていると報じられました。しかしStarbucksは、このぜい弱性をいち早く修正しています。

starbucks

先日、StarbucksのiOSモバイルアプリをダウンロードした顧客の個人情報が、アプリから漏えいする恐れがあると報じられました。Starbucksの名誉のために(特に同社がIT企業でないことを考慮して)断っておくと、同社は1月17日、アプリのぜい弱性を修正する更新をリリースしています。

もちろん、Starbucksは決して資金難にあえぐ企業ではありませんが、このぜい弱性は12月のある時点で報告され、1月に修正されました。セキュリティ修正という点に関しては、迅速な対応であると言えます。ぜい弱性の発見と修正に関しては多くの場合、ベンダー側が否定し、重箱の隅をつつくような議論が始まり、他者を巻き込むといったことが起こり、解決までに何か月もかかることもあるからです。

したがって、何よりもまず、iPhoneやiPadなどのiOSデバイスにStarbucksのモバイルアプリをダウンロードした人は、できるだけ早くApp Storeにアクセスして更新をインストールする必要があります。

難解な技術については詳しく説明しませんが、このぜい弱性は同アプリの1月16日時点の最新ビルド、iOS向けバージョン2.6.1に存在していました。先述のとおり、同社はその後バージョン2.6.2をリリースして、このぜい弱性を修正しています。繰り返しますが、更新はAppleのApp Storeでダウンロードできます。

このぜい弱性は12月のある時点で報告され、1月に修正されました。セキュリティ修正という点に関しては、迅速な対応であると言えます

Threatpostのクリス・ブルック(Chris Brook)のレポートによると、この更新を適用していないと、氏名、住所、デバイスIDといったさまざまな重要情報のほか、各種位置情報データも流出してしまう恐れがあります。

コーヒーチェーン大手Starbucksのアプリでは、こうした情報がすべて平文でログファイルに保存されており、暗号化されていませんでした。このログファイルは他社製で、Crashlyticsというボストンの企業が開発したクラッシュ保護ソリューションの一部です。

このバグを発見した研究者で、Open Web Application Security Project(OWASP)のメンバーであるダニエル・ウッド(Daniel Wood)氏は、このぜい弱性は基本的に、Starbucksがアプリのセキュリティに関するベストプラクティスに従わなかったことが原因だとしています。

特にウッド氏は、出力の際にデータを選別して不適切な部分を削除し、「これらのデータ要素がCrashlyticsのログファイルに保存されないようにする必要があり、保存するとしても平文は避けるべき」と述べています。

Crashlyticsはモバイルアプリメーカー向けにクラッシュレポートのソリューションを開発しています。Starbucksはアプリにこの企業の技術を使用したようですが、少なくとも部分的に、適切に実装できなかったのかもしれません。

Crashlyticsの共同創業者ウェイン・チャン(Wayne Chang)氏は、Threatpostのクリス・ブルック宛のメールで、今回の問題は同サービスの平文のログ機能の1つに関係があるようだと述べています。さらにチャン氏はThreatpostに対し、Crashlyticsがユーザー名やパスワードを自動的に収集することはないと述べました。このCLSLogという機能は、「開発者が追加情報の記録に使用するためのオプション機能」だとしています。

Starbucksアプリに興味がある人のために説明しておくと、このアプリでは、Starbucksカードとスマートフォンを接続して、PayPalやクレジットカードからお金をチャージでき、世界のStarbucks店舗でスマートフォンをモバイル決済手段として使用することができます。

モバイルバンキングアプリ

iOSバンキングアプリのセキュリティホール

世界的な大手銀行が提供し、幅広く利用されているiOS向けバンキングアプリの多くに、データの盗難や口座の乗っ取りの恐れのあるバグが含まれています。具体的には、豊富な知識を持つ攻撃者なら、中間者攻撃によってユーザーのふるまいを監視し、セッションハイジャック攻撃でユーザーの口座を乗っ取りメモリ損壊の問題を発生させることで、システムクラッシュやデータ漏えいを引き起こすことが可能です。こうしたぜい弱性によって、ユーザー認証情報を盗まれ、オンラインバンキングの口座に不正にアクセスされる可能性があるのです。 セキュリティ企業IOActiveに所属するアルゼンチンの研究者、アリエル・サンチェス(Ariel Sanchez)氏は、世界の大手銀行60行の40のモバイルバンキングアプリを対象に一連のテストを実施しました。テストでは、各アプリのデータ転送メカニズム、ユーザーインターフェイス、ストレージプロセスのセキュリティ分析が行われたほか、コンパイラやバイナリといった複雑なものも分析されています。 サンチェス氏は、エクスプロイトの恐れがある一連のぜい弱性を発見しました。 「相応のスキルを持つ者なら、この情報を使ってバグを見つけ出すことができるでしょう。そのバグを調べてエクスプロイトやマルウェアを開発し、影響を受けるバンキングアプリのユーザーを攻撃できるかもしれません。これはセキュリティの潜在的な脅威の第一段階と言えます。」(サンチェス氏) このぜい弱性は、銀行の開発インフラストラクチャにアクセスし、アプリをマルウェアに感染させるために利用される恐れがあります。それによって、アプリのすべてのユーザーに影響するほどの大規模な感染が発生することも考えられます IOActiveは、これらのぜい弱性を各行に報告したとしています。サンチェス氏によれば、現時点ではどの銀行からも、このセキュリティ問題にパッチを適用したという報告はないそうです。 各アプリのバイナリコードの静的分析で発見された最も憂慮すべき問題は、ハードコードされた開発認証情報がバイナリに大量に埋め込まれていることだとサンチェス氏は言います。つまり、ぜい弱性を抱えたさまざまなバンキングアプリ(アプリ名は公表されていません)に、マスターキーだとわかるようなものが含まれているのです。これらのハードコードされた開発認証情報は、開発者がアプリの開発インフラストラクチャにアクセスするためのものですが、攻撃者にも同じレベルのアクセス権を与えてしまう恐れがあります。 「このぜい弱性は、銀行の開発インフラストラクチャにアクセスし、アプリをマルウェアに感染させるために利用される恐れがあります。それによって、アプリのすべてのユーザーに影響するほどの大規模な感染が発生することも考えられます。」(サンチェス氏) この問題の一端は、多くのアプリが暗号化されていないリンクをユーザーに送信していること、あるいは、情報を暗号化するときにSSL証明書を適切に検証できていないことです。このようなふるまい(サンチェス氏は、アプリを開発した人の単純な見落としが原因としています)のために、顧客が中間者攻撃のリスクにさらされ、フィッシング詐欺の一環として悪質なJavaScriptやHTMLコードを注入される恐れがあります。 サンチェス氏が発見したこれらの問題をさらに悪化させているのが、分析対象となった銀行の70%が2段階認証を導入していないことです。 同氏は次のように述べています。「必要なのは、アプリのバイナリと、コードを復号するためのツール、コードを逆アセンブルするツールだけです。こうしたアプリのコードの復号化と逆アセンブルの方法について説明する文書は、大量に公開されています。特に専門知識がない人でも、ある程度時間をかければ簡単に読み進めていくことができます。」 IOActiveは、良い面と悪い面の両方について責任があります(ただし、ほとんどは良い面です)。良い面は、該当する銀行名と具体的なぜい弱性を公表しなかったことです。ぜい弱性についての詳細な情報が公開されれば、ユーザーの口座を狙うために必要な情報が攻撃者の手に渡ることになるかもしれません。悪い面は、どの銀行とアプリがぜい弱性を抱えているのかわからないため、誰を、あるいは何を信じていいのかわからないことです。 もちろん、極めて注意深い人は、これらの問題が確認されて解決されるまで、モバイルバンキングアプリの使用を控えるはずです。しかし、多くの人はそうしないでしょう。したがって当面は、銀行から2段階認証が提供されている場合は必ず設定するようにしてください。他にも、バンキングアプリのリンクを辿る際に注意し、フィッシングメッセージを警戒して、銀行口座に目を光らせる必要があります。

モバイルバンキングアプリ
ヒント