このページの本文へ

前へ 1 2 次へ

モバイルマルウェアの脅威と対策 第3回

「ガラパゴススマートフォン」ならではの困難も?

Androidを守るセキュリティソフトの秘密

2011年05月06日 06時00分更新

文● 八木沼 与志勝/エフセキュア

  • この記事をはてなブックマークに追加
  • 本文印刷

セキュリティ側もAndroidの制限を利用

 もちろん対策がないわけではない。幸い、Androidのユーザーアプリケーションにおいては、インストールされない実行ファイル(exeのようなプログラム)を単体実行するような仕組みは取れない。つまり、何かを実行しようとすれば、アプリとしてインストールしないといけないわけだ。これは前述のサンドボックスの設計思想によるものだが、セキュリティソフトはこの仕組を応用するものが多い。

 すなわち、アプリケーション(apkパッケージ)をインストールする時にスキャンをするのだ。これがAndroid式「リアルタイムスキャン」の処理方式だ。また、アンチウイルスの定義ファイルの更新を受信した際に、ユーザーに定義ファイルの更新を知らせ、端末のスキャンを促すような仕組みでゼロデイ攻撃に対するリスク低減対策が実装されていることもある。

 ほかに、アプリが使うユーザーデータはSDカードなどのメモリ空間に保存されるので、このメモリ上のファイルのスキャンも忘れてはいけない。前述のように、Androidではファイルの単体実行はできない仕組みなので、メモリ上に保存されただけではアプリとしては動かない。このため、番犬のようにファイルが保存されるのを見張り続けるというのは必ずしも必要ではない。むしろ、危ないファイルをアップロードしたり、危ないインターネットサイトへのアクセスをブロックしたほうが効率がよい。

 そこで、メモリカードのスキャンは、Androidにメモリカードが読み込まれた時(マウントされた時)に実行するという仕様が多い。また、モバイルデバイスは基本的に常時インターネット接続できる環境ともいえるので、危ないサイトへのアクセスはURLレピュテーションを使って、アクセスそのものをブロックするような実装があればなおよい。

 Windows用のセキュリティソフトのような番犬型リアルタイムスキャンとは様相が違うが、Androidの処理の特徴を活かし、必要なタイミングでスキャンを実施し安全を守りつつ、モバイル端末の特徴を殺さない工夫の一端をご理解いただけただろう。各セキュリティベンダーで実装が違うので、詳しくは各社のWebサイトなどで確認して見てほしい。

システム領域を修復できない

 Android用セキュリティソフトを開発する上での問題は、もう1つある。前回、Androidの脆弱性を突いてシステム領域に侵入するマルウェアを紹介したが、セキュリティソフトはこのマルウェアを検出できても、駆除はできない。なぜなら、一般アプリケーションからはシステム領域のデータを一切変更できないからだ。

 もちろん、セキュリティソフトもOSの脆弱性を利用してシステム領域に入り込むことは、技術的に可能かもしれない。しかし、脆弱性の利用にはどのような副作用があるか解らず、これではセキュリティソフトもマルウェアも変わらなくなってしまう。

 また、マルウェアの入手経路も多岐多様であるというAndroidならではの特性があるので、攻撃手法も時々刻々と変わっていく。そういった多様性、多選択肢の中において、あくまでAndroid OSが定めるルールに則って、日々変わる攻撃者の非合法的な手口に対応しながら最高のセキュリティを提供するのは非常に悩ましい問題だ。残念ながら、本稿執筆時点(2011年3月)でも、画期的なソリューションは見つかっていない。

セキュリティ向上にはユーザーの意識も

 これまでに述べたように、Androidのセキュリティソフトには技術的なチャレンジがあるが、これらのリスクを最低限に留める方法がある。これはユーザーの意識だ。結局のところ、ユーザーがスマートフォン端末の紛失に気を付けたり、悪意のあるサイトを訪れなかったり、怪しいアプリケーションをインストールしなければ、そのスマートフォン端末の安全性は高いレベルで確保できるのである。

 末筆になるが、Androidスマートフォンを安全に利用するための注意点をいくつか挙げてみる。

Androidの最新版を速やかに適用

 OSの更新は機能の追加に併せて、何かしら問題の修正が含まれているものだ。早いうちに更新を行なうべきである。

Webブラウジングではサイトに注意

 場所を問わずに気軽に情報を入手したり、情報を送信できるため、スマートフォンでは危険なURLリンクを踏んでしまう確率も高くなる。自分がアクセスしようとしているサイトはどんなサイトなのか意識し、危ないと感じたらアクセスをやめるべきである。

アプリケーションは信頼できるソースから入手

 アプリを導入する際は、できる限りクチコミなどの情報を入手し、信頼のできるAndroidマーケットから購入したり、信頼できるダウンロード先を利用する。

インストールしないという選択も必要

 Androidマーケットなどに出品するためには、アプリケーションにリリース用の電子署名を入れる必要がある。この電子署名は、その作成者の印鑑のようなもので、作成者の確からしさの指標でもある。ただしAndroidでは、アプリケーションの署名がされていない場合でもアプリケーションを公開できるし、インストールもできてしまう。こういった未署名のアプリケーションは作成者が名乗り出ていないようなものであり、海賊版であることも多いだろう。したがって、マルウェア混入などのリスクは非常に高くなる。

 そこで、うっかりインストールを防止するために「アプリケーション設定」の「提供元不明のアプリ」のチェックは外しておこう(図5)。さらに、「個人情報」「料金が発生」などのような不安な項目に許可を要求するようなアプリケーションは、インストールを中止するべきである。

図5 「提供元不明のアプリ」のデフォルト設定は端末によって異なる。必ず確認し、チェックを外したほうがよい

セキュリティソフトを導入する

 セキュリティソフトを入れても危険はゼロではない。しかし、脅威の多くは回避できる。できる限りセキュリティソフトを購入し、インストールするべきである。セキュリティソフトの選択の際にはウイルススキャン機能だけではなく、Webサイトへのアクセスをブロックしてくれるような機能を持つものを選択したほうがよい。

筆者紹介:八木沼 与志勝(やぎぬま よしかつ)

エフセキュア株式会社 テクノロジー&サービス 部長
1972年生。UNIXプログラミングからIT業界に携わりはじめ、その後ITインフラを中心としたITコンサルティングからセキュリティ業界へ。エフセキュア入社は2006年で、法人/コンシューマの製品およびプリセールスなどのサービス全般を担当する。


■関連サイト

前へ 1 2 次へ

カテゴリートップへ

この連載の記事
  • 角川アスキー総合研究所
  • アスキーカード