- 会員限定
- 2013/06/21 掲載
スマートフォンアプリの実行パーミッション、安全性をどう評価すべきか
データベース構築のアプローチ
もちろん、このような考えは筆者が初めてというわけではないが、スマートフォンアプリの脆弱性や安全性を評価したデータベースを作ろうとした場合、いくつかの方法が考えられる。まず、クローラーなどのプログラムによって自動的にアプリを評価する方法が思いつく。Google Playなどのアプリマーケットで公開されているアプリをひとつずつチェックして、その結果をデータベース上に保存する。人手ではまず不可能なのでプログラムによる自動化を考えるわけだ。
しかし、この方法には問題がある。Google Playの利用規約に次のような一節がある。
3.3 ユーザーは、Googleと別段の合意がある場合を除き、Googleが提供するインターフェース以外の手段でGoogle Playにアクセスしない(またはアクセスを試みない)ことに同意するものとします。ユーザーは、自動化された手段(スクリプト、クローラー、および類似の技術を含む)でGoogle Playにアクセスしない(またはアクセスを試みない)ことに明確に同意し、Google Playウェブサイト上のすべてのrobots.txtファイルに設定されている指示に従うものとします。
この規約の目的は、ボットによる不要なトラフィックの増加を防ぐ目的、攻撃者による不正なスキャニングを抑止する目的、さらに、派生的な無断サービスを乱立させないビジネス戦略上の意図もあるものと思われる。
しかし、プログラムでGoogle Playのアプリを自動的にチェックしていけば安全性評価データベースができる」と思った人は、この規約によりその実現を断念することになるだろう。ただし、規約には「別段の合意があれば」となっているのでGoogleとの交渉の余地がないわけでもないが、あくまで「場」を提供している立場であるGoogleとしては、アップロードされている個別アプリの評価や内容について責任を伴うようなことに積極的に協力、または許可を出すとは思えない。
自分のアプリを評価するのは非効率的
クローリングによる自動処理は禁止されているが、評価処理そのものをプログラムによって自動化することは禁止されていない。自分がダウンロードしたアプリをプログラムによって評価するのは問題ないはずだ。現実に、独自にアプリを評価している、セキュリティ研究者も存在する。ただし、その目的はスマートフォンアプリの脆弱性の傾向や、安全性の傾向の分析、要求パーミッションの統計的な分析などであり、分析対象とするアプリは人手でコツコツ入手するか、開発ベンダーなどの協力を得ながら行っている。万人が、自分が利用しようとしているアプリは安全か? ということに指標を与えてくれるようなデータベースとは異なる活動といえるだろう。
仮に、セキュリティ研究者が自力で大量のアプリ評価を行い、その結果を公開したとしよう。この場合は、別の問題が発生するかもしれない。その情報の信ぴょう性や公平性はどのように担保すればいいのだろうか。アプリベンダーにとっては意図しない評価をされた場合、クレームのひとつも入れたくなるに違いない。
【次ページ】アプリのレーティング制度の問題点
関連コンテンツ
関連コンテンツ
PR
PR
PR