読者です 読者をやめる 読者になる 読者になる

さわっても熱くない花火

ちょっとした驚きを食べながら生きています

近頃の国内キャリア版Xperiaはrootが取れないのん ~対策を考えよう~

Android Hack Android全般

はい。あけましておめでとうございます。yanoshiです。計算が終わりません。
さて新年早々ガジェットネタです。

f:id:yanoshi:20160106152833p:plain
(Chainfire Releases Systemless Root For Android 6.0)


Xperia X10の頃はrootを取って改造しないとマルチタッチすらできませんでした(実話
しかしながら近頃はrootを取らなくてもテザリングもAPNの変更も出来てしまいます。
そんな実情を反映したのか(?)、年々rootは取りにくくなってきていました。


そしてXperia Z4以降のXperiaはついにroot奪取がほぼ不可能になってしまいました。
ということでXperia好きとしては何かしら対策を考えなくてはなりません。
そんなお話。


「rootを取る」とは

Androidには良く出来たサンドボックスが構築されています。各アプリはそれぞれの専用ユーザーを持っておりその権限上で動作します。
一般で販売されているAndroidはsuが殺されており、管理者権限になることが出来ません。
これによって我々は安心してアプリを実行できるわけですが…それ故に不便な面も多々あります。

そんなこんなで色々とAndroidのシステムを弄る回すために、suを復活させる作業が所謂「rootを取る」と呼ばれる行程です。

海外版のXperiaでは…

suが初めから入っているカスタムROMを導入する事が、一番簡単なroot取得方法です。
ですがXperiaのKernelには細工がされてまして、公式ROM以外が動作しないようになっています。
ということでカスタムROMを導入するにはカスタムカーネルを導入する必要があります。

それにはBootloaderをアンロックする必要がありますが、海外版のXperiaではこのBootloaderアンロックが公式機能として提供されているので割と容易にカスタムカーネルの導入が可能です。
Unlockbootloader - Developer World

おかげでカスタムROMの開発も盛んです。
forum.xda-developers.com

日本のキャリア版Xperiaでは…

残念ながら国内キャリア版XperiaにはBootloaderアンロック機能が提供されていません
携帯補償サービス等を考慮した結果なのかなぁと邪推していますが、なんにせよ提供されていないのでカスタムROMを導入することは不可能です。

Xperia Z3以前のXperiaでは…

国内の素晴らしいスーパーハッカーの方々がシステムのセキュリティホールを突いて様々な方法でroot奪取に取り組まれてきました。
何度お世話になったことか…
yanoshi.hatenablog.jp

Xperia Z4以降のXperiaでは…

しかしセキュリティホールが存在することはよろしくありません。
セキュリティホールを通じてrootになれるということはすなわち、意図せず悪意のあるアプリがrootを取って悪いことが出来てしまうわけです。
ということでSonyXperiaのシステム書き換え防止機能を刷新してきました。
これまでもシステム領域を書き換えると強制再起動されるロジックが組まれていたのですが、それはAndroidOS上で司られていました。しかし新しいセキュリティシステムはカーネル上に存在しており、これはもはや突破できないのではないかとされています。

Xperiaはもうroot化不可能?キャリア版Xperia Z4,Z5のRoot化事情
www.mirucon.com

rootを失い、我々は何を失うか

さてrootが今後も取れない雰囲気がしてきたので、これからどうやって生きていくかを考えることにします。

アプリのバックアップ

これまでTitaniumBackupを利用してアプリ等を設定からまるごと移行してきました。しかしそれは諦めざるを得ません。
私の思うTitaniumBackupの最も素晴らしい利点は、Android_ID*1を引き継げる事です。
一部のアプリ(LINE)ではAndroid_IDを利用してユーザーデータを管理*2してらっしゃるようでして、これが引き継げないとトーク等のデータが吹き飛んでしまいます。

残念ながらrootを失った今、「楽々データ移行」は出来なさそうです。

adb backupを利用して移行

最も単純な解決策はadb backupを利用する方法です。
Android 4.0以降、公式のアプリバックアップ機能が提供されており、それがadb backupです。
しかしながら前述したAndroid_IDの引き継ぎは当然やってくれないのでLINEのデータは引き継げません。*3

LINEの問題をどうするか

調べてみましたが良さげな情報は出てきません…
LINEの改造版apkもある(?)ようなのですが、それに私が望む便利機能が実装されているわけでもなく。
どなたか御存知でしたら教えて下さい><

カメラ音を消す

残念ながら標準アプリのカメラ音すらも消せなくなってしまいそうです。悲しい世の中ですね。

しかしながらアプリ導入でこれは解決できそうです。
カメラ ICS - Camera ICS - Google Play の Android アプリ
カメラ ICS+ - Camera ICS+ - Google Play の Android アプリ
A Better Camera - Google Play の Android アプリ


今時は画面サイズ以上の解像度で撮れる無音カメラアプリがあるのですね。(私の常識が古かっただけかもしれませんが)
もしかしたら最新Xperiaのカメラアプリapkを改造してくれる猛者が出てくるかもしれないと淡い期待を抱きつつ、とりあえず適当なアプリで生活していこうかと思っています。

まとめ

一応何とかなりそうなのかもしれませんが、そろそろカスタムROMの導入が可能なグローバル版のXperiaも1台くらい欲しいなぁと思う今日この頃です。

*1:OS初期化時に決まる個体識別番号的な奴

*2:Android_IDを利用して暗号化してたりするのかな?分からないけど

*3:正確にはデータ自体は持っていけるがアプリが起動しない。