※root化はバージョン01.00.09以下で可能です。また、01.00.10でも可能みたいです。
なお、穴が塞がれる可能性があるので自動更新を切っておくことをお勧めします。
詳しくは
FAQの「■root化が可能なis01のバージョンは?」を参照。
■root化アプリ配布元
※01.00.10の場合
MobileHackerz #IS01 の01.00.10 でroot取りたい人は、
http://j.mp/eDMRnU このページの一番下にあるtest版で
su使えるようにはなります。起動後毎回Step1,2実行する
必要はありますが。(※Step2実行後リブートしろと言われ
るが無視してそのまま使うこと
※「is01rooter」アプリを使わない方法は、このページの下の「■root化(01.00.10)」を参照のこと。
■rootまとめ
■root 1
おー、見覚えのあるSuperuserアプリが動いている!
■root 2
- リブートすると消えちゃう
- adb shellはrootにならない
だけどね。
724
一応/systemをすげ替えて中が弄れるようになったような?
自分はあまりAndroidとかLinux詳しくないから判断できないんだけど。
基本的には>>630氏のまとめの通りで、最後のすげ替えのとこで
// 「/」を読み書き出来るように再マウント
# busybox mount -o rw.remount /
// /systemをコピーしたsystem.imgを/system2にマウントする
# busybox mkdir /system2
# busybox mount -o loop -t ext3 /data/ext/system.img /system2
// /systemをアンマウント
# busybox umount -l /system
// /systemをリネーム(多分削除でもいいんだろうけど念のため)
# busybox mv /system /system.org
// system.imgをマウントした/system2へのシンボリックリンクとして/systemを作成
# busybox ln -s /system2 /system
出来れば直接/systemにsystem.imgをマウントするべき何だろうけど、
busyboxのmountだとなぜか「cannot setup loop device」って言われるんですよね。
長文失礼しました。
■root 3
ただ、ADBからはつながんなかったりするんで
TerminalEmulatorで弄繰り回すくらいしか出来ないけどね。
792
>>622 の言うとおりadbでもroot取れた。
一応確認のため俺がやった手順を書いてみる。
俺の妄想混じりなのでこれダメだろってのがあったら適当に指摘してくれ。
・ rageagainstthecage-arm5.binを適当なディレクトリに放り込む
(俺は例に倣って/data/local/tmp/に入れた。)
・ rageagainstthecage-arm5.binに実行権をあたえる。
・ ./data/local/tmp/rageagainstthecage-arm5.bin とか打って適当に実行。
・ なんか文字が流れてプロンプトに復帰する
(そのまましばらく待つとForked うんたら~と出るので再実行する必要はないのかも
・ exitの後戻るボタンでターミナルを落とす。
・ ターミナルを再起動すると#になってる。(再起動しなくても一回タスク切り替えるなりでアプリをBGに移すと何故か#になってる。再接続された?
・ このままだとrageagainstthecってプロセスが鬼のように走ってるので実行したコマンド名で pkill -f '実行時のコマンド'ってやってプロセスを殺す
(殺した後、ターミナル再起動くらいではrootを維持できる。この状態でfirst rebootみたいなシステム系プロセスを再起動させるアプリを使うとrootから通常に戻った。
・ adb 経由でexploidを適当に転送
(例によって/data/local/tmp/に入れた。
・ adb shell で 入れたとこに移動して実行権限を与えて実行、手順どおりにwifiONOFFやる。
・ exloidによって作られたrootshellを叩く。
と、exploidについては多少端折った。.わからんってやつはIS01 rootとかで適当にググればいいと思う。
俺は解析組みの戦力にはなれないからとりあえずroot化に関していろいろ試してみた。何かの役に立つと幸いだ。
まぁ、ほとんどは既に判明してることの確認程度でしかないが。ちなみに今出てる最新バージョンのIS01でやった。
823
>>792
プロセス殺さなくてもできた
IS01のターミナルでrageagainstthecage-arm5.binを実行してちょっと待ってForkedが出るまで松
でたらexitして戻る押す。で、ターミナル起動してroot状態でexploid送って実行、固まったけど強引に切ってWiFi付け直し
これで01.00.09でadbでrootできた
多分プロセス切ったら固まらないんだろうけど
■root (これが基本)
231
おぉ。すげえ簡単だw
1. TerminalEmulator上でrageagainstthecage-arm5.bin実行。
2. ***.forked って言われたら再実行。
3. cannot forkって言われるからexit→[戻る]でTerminalEmulator終了。
4. TerminalEmulator再起動。
5. プロンプトが#に。
■root 補足
888
RageAgainstTheCage.zipにexploidのソースが入ってたんで見てみたら
rootshellってただのshをsuidしただけだった。
rageagainstthecage-arm5.binでルートとったら
# cat /system/bin/sh > /sh_tmp/rootshell
# chmod 04711 /sh_tmp/rootshell
しておけば
余計なrageagainstthecage-arm5.binプロセスは消してもいつでもルートに
戻れる。adbからもOK。
ただ、adbで認識させるのにルート権限がいるようになったかも?
$ sudo adb start-server
じゃないと認識できない。
891
>>888
今やってみたらとてもお手軽にadbのshellでrootになれた。まじでありがとう。
exploidって実は簡単なことだったのね・・・
904
>>891
いや、exploid自体は脆弱性をついてルート権限を得るのが主たる目的で
rootshellはそれを利用するための手段なだけ。
■root化(01.00.10) ※「is01rooter」アプリは未対応
398
お疲れ様です。知り合いの依頼で、今日01.00.10の端末を借りてきたのですが、
穴ふさがれてないみたいですよ。
こんなautoexec.shを起こして、suと_suはすんなり起動時に実行できました。
http://pastebin.com/qvZKcZmX
insmodのログをとってみると、
insmod: init_module '/data/bootkit/modules_enabler.ko' failed (Exec format error)
ってことで、modules_disabledに1がかかれる前にinsmodの実行自体は行われているようです。
モジュールのformatさえ合わせればいけそうな気がします。
自動インストーラの対応も可能だと思います^^
399
>>398
うお! goroh_kunさんお疲れさまです。
01.00.10でも可能性が出てきましたね。
こちらは、gingerbreadの起動に成功したところです。
こちらのほうがfroyoより動きはスムーズな気がします。
400
kernelのconfig見てみましたが、差分ないんですね・・
insmodのカーネル処理細工がしてあるのかな?
401
autoexec.shの中で、/system/lib/modules/unifi_sdio.koをinsmodすると成功しますね。
unifi_sdio.ko自体はバイナリ差分なし。おそらくinsmodも同じ
カーネルちょっと見てみます。
417
01.00.10の対策突破できそうです。
421
できました。例の通りログを。
http://codepad.org/m6Eb1E8f
今からreadme書くので、少し待ってください。
423
アップしました。
http://www.megaupload.com/?d=FPS12ZY8
カーネルだけ入れ替えて試してるので、本当の01.00.10の環境では動かないかもしれません。
425
>>423
insmod成功しました、有難うございます。nandドライバも入れられました。
nandの書き換えもbootloaderの抜き出しもできそうです。
これで、バージョンアップ安心してできますね
最終更新:2010年12月30日 22:06