Customize Consent Preferences

We use cookies to help you navigate efficiently and perform certain functions. You will find detailed information about all cookies under each consent category below.

The cookies that are categorized as "Necessary" are stored on your browser as they are essential for enabling the basic functionalities of the site. ... 

Always Active

Necessary cookies are required to enable the basic features of this site, such as providing secure log-in or adjusting your consent preferences. These cookies do not store any personally identifiable data.

No cookies to display.

Functional cookies help perform certain functionalities like sharing the content of the website on social media platforms, collecting feedback, and other third-party features.

No cookies to display.

Analytical cookies are used to understand how visitors interact with the website. These cookies help provide information on metrics such as the number of visitors, bounce rate, traffic source, etc.

No cookies to display.

Performance cookies are used to understand and analyze the key performance indexes of the website which helps in delivering a better user experience for the visitors.

No cookies to display.

Advertisement cookies are used to provide visitors with customized advertisements based on the pages you visited previously and to analyze the effectiveness of the ad campaigns.

No cookies to display.

Android端末の「データ全消去の脆弱性」について

Samsungの端末で「悪意のあるコード」にアクセスするとユーザに断りなく端末が初期化されデータがすべて失われるのだそうです。日本語だと下記のページにあります。(ICSアップデート後のSC-02Cは問題ありません)

http://www.lifehacker.jp/2012/09/120928android_hole.html

実際の動作としては、
・WEBページ、QRコードなどを通じて、tel: スキームのリンクを踏む
・Android端末のいくつかのダイアラー(電話アプリ)は tel: スキームを自動実行する
・Android端末のいくつかは、電話アプリからファクトリーリセットをかけるコードを入れることで初期化できる
ということです。

さらに詳しくはここが参照先になっているようです。

http://dylanreeve.posterous.com/remote-ussd-attack
http://dylanreeve.posterous.com/remote-ussd-attack-clarifications

tel: スキームというのは、携帯電話でSMSやWEBページを表示したときに電話番号がリンクになっていてクリックすると電話をかけることができますが、アレです。QRコードで読み取ることもできます。tel:リンクに #*#* XXXX #*#* というコードを入れておいてそれを電話アプリに実行させています。というか、電話アプリは電話番号だと思って処理しているだけですが。

そういう理由から、回避策としては、コードを自動実行してしまわないサードパーティのダイアラー(電話アプリ)を使うことが提案されています。もしくは、電話アプリがコードを実行する前に内容をチェックするアプリもあるようです。

https://play.google.com/store/apps/details?id=net.gicode.android.autoresetblocker
https://play.google.com/store/apps/details?id=org.mulliner.telstop

技術的な話をすると、これらのアプリは電話アプリと同じIntent Filterを持っているので tel: リンクを実行したアプリが Intent を投げるときに、電話アプリと上記アプリがリストとして出るようになります。常に上記アプリを実行するようにしておけば、電話アプリにコードを渡す前に上記アプリでチェックをかけることができます。安全な電話番号であることを確認したら上記アプリから電話アプリにデータを渡して実行させることができるようです。

今回の最初の指摘はSamsung端末だったようですが、#*#* XXXX *#*#というコードはたいていのAndroid端末に仕込んでありますから、いろいろ該当する機種が見つかっているみたいです。Samsung端末は初期化コードをはじめとしていろいろなシークレットコードを持っていますから、これらを勝手に実行されちゃたまりませんよね。

SC-02C Secret Code 一覧
うっかりGalaxy S2をFactory Formatしてしまった

今回はなぜかUSSDコードと呼ばれているみたいですが、本来のUSSDコードはモバイルのネットワークとやりとりしてサービスを受けるためのGSM規格ですので、今回のファクトリーリセット用のコードなどはちょっと違うものです。この点は http://dylanreeve.posterous.com/remote-ussd-attack-clarifications の中にも追記されています。

本来のUSSDコードの使い途としては、プリペイドSIMのチャージとか、残高チェックなどがあります。

Vodafone SIM を挿して SIM Application Toolkit アプリを動かしてみた

上記記事中に、SIM Application Toolkitのアプリメニュー画像を載せていますが、私の理解では、メニューの各項目を実行するとUSSDコードが送られてそれに応じてネットワーク側から情報が飛んできます。メニュー中にTop UpとかBalanceとかありますし、Sport、News&Weatherといった情報提供関連もそうだと思います。

もともとインターネット機能の無いフィーチャーフォン向けに存在したもので、いまどきのスマートフォンならアプリをダウンロードしてIPのレイヤで通信してしまえばよいので、そのうち無くなるのではないかと思います。

問題になっているコードは、USSDコードと同じ形式なのですがネットワーク側とのやりとりはありません。Android端末の場合は電話アプリがBroadcast Intentして、該当するアプリがそれを拾って実行する仕組みなようです。

PAGE TOP