やばい!至急アンインストールすべきアプリ名が公開 - 電話番号を抜くことができるアプリを判別する方法

こんなニュースでてるけど。

(2/2)ニュース - マカフィー、電話番号を盗むAndroidチャットアプリを発見:ITpro (2/2)ニュース - マカフィー、電話番号を盗むAndroidチャットアプリを発見:ITpro

電話番号の詐取機能の実装にはJavaScriptが用いられているという。ブログを執筆したマカフィー Mobile Malware Researcherの中島大輔氏は、「ユーザーの個人情報を盗む多くのAndroidマルウエアと異なり、このアプリの情報漏洩コードはサーバーサイドでホストされているHTML/JavaScriptファイルで実装され、それがAndroidのWebViewの機能である独自JavaScriptインタフェース呼出を通じて電話番号取得APIを呼び出している」と解説している。

なんかこの記事を読むと、

実装方法が巧妙にばれないように実装されている。

てなかんじに思ったりするけど、それは本筋ではないと思う。

 

いまも公開されている。

完全無料 ランダムチャット (国産)~MachinChat~ - Google Play の Android アプリ

無料ランダムチャット ┃ 登録不要のON-LINE掲示板~ - Google Play の Android アプリ

インストール時に表示されるのこのダイアログ。

完全無料_ランダムチャット_(国産)~MachinChat~_-_Google_Play_の_Android_アプリ-2

無料ランダムチャット_┃_登録不要のON-LINE掲示板~_-_Google_Play_の_Android_アプリ-2

このパーミションを許すことですでにアクセスされてるのですよ、
その端末の電話番号に。

【端末のステータスと ID の読み取り】
許可すると端末の電話番号やシリアル番号、Gmailのアドレスなどが特定できる状態に。高額な架空請求を行うアダルト動画アプリの事件でも、この項目が悪用された。マルウェアにこのような情報を悪用された場合、「電話番号やメールアドレスを変えるしか手がない」(山城氏)という。

絶対に確認したい「アクセス許可」の項目と具体的な対策とは…!? 【Androidスマートフォン セキュリティ対策-第3回-】

Androidでアプリをインストールするときに、「端末のステータスと ID の読み取り」... - Yahoo!知恵袋

このパーミッションからみて、その端末のもつ情報のみがアクセスされている。
ともだちの電話番号とか電話帳の内容はアクセスされてはいないはず。

このサイトが分かりやすいです。

ぼくのかんがえたさいきょうのあんどろいど: 端末のステータスと ID の読み取りについてのまとめ

■READ_PHONE_STATE
◯カテゴリ「電話/通話」呼称「携帯のステータスとIDの読み取り」
◯正当な使い方
電話がかかっているかどうかを取得します
IMEI/IMSIといった端末のIDを取得し、一意の固有デバイスを特定します
◯危険な使い方
電話番号をぶっこ抜きます
◯安全に利用されるアプリの傾向
ゲームなどで電話がかかると音楽を止めたりします
・・・一見危険そうに見える権限で、電話番号をぶっこ抜けるのですが、割と安全に使われる権限です。なぜ、電話番号を抜けるパーミッションと、電話がかかってきたかどうかを判定するためのパーミッションが同じなのか全く意味不明。

すでにインストールしている場合、[設定]-[アプリ] から確認できます。

この晒されたアプリで見てみます。

20131122-194430

20131122-194724

しっかり「電話番号」とかかれています。

プログラム的には、数行です。

TelephonyManager telephonyManager = (TelephonyManager)getSystemService(TELEPHONY_SERVICE);
Log.d("TM", "Line1Number " + telephonyManager.getLine1Number());

TelephonyManagerを使って端末の情報を取得する « Tech Booster TelephonyManagerを使って端末の情報を取得する « Tech Booster

 

別にどっちでもいいや、などと、あたしとまわりのみんなは思ってるけど。

 

実際このパーミッションって、LINE も Simeji も Evernote も Facebook も Twitter も許可しないとアプリをインストールできないわけで。
20131122-202219

 

「javascript」とか「暗号化してどうの」とか「サーバーサイド」とかあんまり関係ないと思うよ、使ってるユーザーはそんなこといちいち分かんないし、javascriptから「直接」電話番号にアクセスできないだろうし、もちろん「アプリ内」での webview上での話だし。

webview上でjavascriptからjavaメソッドを実行する webview上でjavascriptからjavaメソッドを実行する

Androidアプリが取得できるあなたの情報はこれだけある Androidアプリが取得できるあなたの情報はこれだけある


関連ワード:  AndroidGoogleおすすめこれはひどいアプリセキュリティニュース便利な設定速報