新しい機能が加わった Android.Lockdroid.E の亜種が、2015 年の第 4 四半期に登場しました。Android を狙うランサムウェアはとどまることなく進化しており、これもその一環です。この亜種は、システムエラーの GUI でユーザーを脅迫し、デバイスのロックを解除するときに使われるパスワードをリセットします。デバイスを初期化せずにマルウェアを除去できたとしても、マルウェアによって設定されたパスワードを回避することはできないので、デバイスを使うことはできません。
マルウェアがパスワードをリセットする仕組み このマルウェアは、デバイスのロック画面で使われるパスワード(暗証番号またはパターン)を設定またはリセットするために、resetPassword メソッドを呼び出します(図 1)。このメソッドを呼び出すには、呼び出し側のアプリに管理者権限が必要です。
図 1. ロック画面のパスワードを設定またはリセットする Android.Lockdroid.E の亜種
Android Nougat における予防対策 コードネームが「Android Nougat」と決まった Android の次期バージョンでは、resetPassword API を呼び出してパスワードの設定はできるが、リセットはできないという制限が導入される予定です。
図 2. Android Nougat を搭載したデバイスで resetPassword() を呼び出しときに表示されるランタイムエラーメッセージ
このアップデートは、マルウェアがロック画面のパスワードをリセットできないようにするうえで効果があるでしょう。この変更は厳密に実施され、後方互換性もないので悪用できる抜け道もないからです。もし後方互換性があったら、マルウェアは新しいバージョンの Android でもロック画面のパスワードをリセットできてしまうところでした。今回の更新では、マルウェアが Android Nougat でロック画面のパスワードをリセットする手段は皆無になります。
駆除ツールも影響を受ける この更新で、マルウェアがロック画面のパスワードをリセットすることは防げますが、パスワードが設定されていなかったデバイスでパスワードを設定されるのは、防ぎようがありません。
新しい機能は、スタンドアロンの駆除ユーティリティにも影響します。駆除ユーティリティも、resetPassword() API を利用しているためです。駆除ユーティリティは、デバイスがマルウェアに感染したユーザーのために設計された自動ツールです。駆除ツールは、マルウェアを除去するだけでなく、感染の過程でマルウェアによって設定された任意のパスワードをリセットする必要もあります。Android Nougat より前には、駆除ツールも resetPassword() API を呼び出してこの機能を実行していましたが、Android Nougat で制限が導入されると、駆除ツールがこの API を呼び出す機能も使えなくなります。割合は少ないかもしれませんが、駆除ツールを使っているユーザーに影響する可能性があります。
対処方法 モバイルを狙う脅威から身を守るために、以下のベストプラクティスに従うことをお勧めします。
保護対策 シマンテックとノートンの製品は、このブログでお伝えした脅威を以下の定義で検出します。
* 日本語版セキュリティレスポンスブログの RSS フィードを購読するには、http://www.symantec.com/connect/ja/item-feeds/blog/2261/feed/all/ja にアクセスしてください。
【参考訳】