2014年6月18日水曜日

SH-07D root化…再び

ほんと今更w

SH-07D仮root化まではすぐ出来ました。

参考 参考2

分かったこと:

  • SIMロック解除は無料で出来る
  • miyabi_lsm解除コマンドはアップされている これ
  • temproot可キットがアップされてた。cwm作成ツールも → ここを参考
    以下引用:
    75 :SIM無しさん:2014/06/21(土) 20:11:26.66 ID:ZqMQt+9l
    ワンクリじゃないけど、仮rootをまとめたものと

    ttp://www1.axfc.net/u/3263390.zip
    key:sh07d

    プロプラなファイルを実機から取得し、その場でリパックする版のCWMをうぷ

    ttp://www1.axfc.net/u/3263391.zip
    key:sh07d

    temproot可のアップデート

    80 :SIM無しさん:2014/06/22(日) 10:12:23.79 ID:HrGoawmY
    あ、仮rootセットにget_essential_address
    入れ損ねた模様

    81 :SIM無しさん:2014/06/22(日) 10:30:30.56 ID:FXNlMiBt
    詰め直したのを再うぷ ttp://www1.axfc.net/u/3263943.zip key:sh07d 

Tethering時APNを変更しない方法:
framework.odexを改変
framework.odexをbaksmaliでsmaliに変換
framework\jp\co\sharp\android\net\wifi\WifiApApnControl.smali
isDocomoSim()の改造

626行目の
const-string v3, "44010"

これを

const-string v3, "44070"

に変更すれば、auのSIMの時には0x1を返す。現DoCoMoの処理をするようになる。(はず)
そうでない場合は0x0を返す。

つまりもともとはDoCoMoのSIMだったらAPN変更という処理を、auのSIMだったらAPN変更に
置き換えてる。

そもそもauのSIMは使えないので問題なし。

他に632行目のif-eqz v3, :cond_19をgoto:cond_19にすることでもいけると思う・・・
全部削除してreturn 0x0でも行ける?

ということでやってみた!
とりあえず adb、JDK環境が動く人向け
Version 1.004の人!
(よくわからないけどVPNFAKERとかいうの入れておいた方がいいとか??)

必要なファイルをダウンロード pass: sh07d

この中に入っているunlock_lsm_miyabiはhttp://anago.2ch.net/test/read.cgi/smartphone/1379316102/690
の中の人がアップしたものです。

必要なファイルを/data/local/tmpにコピーする

cd sh07d\tmp (解凍したフォルダ内にあるtmpフォルダへ移動)
adb push * /data/local/tmp
パーミッション変更・・・
adb shell chmod 755 /data/local/tmp/*
adb shell chmod 666 /data/local/tmp/device.db

framework.odexをbaksmaliでデコンパイルする。

先ずはframeworkデータを全部吸出します。
cd sd07d\DOS (解凍したフォルダ内にあるDOSフォルダへ移動)
adb.exe pull /system/framework work/

次にbaksmaliです。

java -jar baksmali.jar -d work\ -x work\framework.odex -o framework

すると、frameworkというディレクトリが出来上がり、その中にいろいろと入っているのが分る

framework\jp\co\sharp\android\net\wifiの中にWifiApApnControl.smaliというファイルがあるので、それを編集する

13行目 不要かも
.field private static final DOCOMO_SIM:Ljava/lang/String; = "44070"

626行目
    const-string v3, "44070"

編集したら保存、元に戻す。

java -jar smali.jar -a 15 -o classes.dex framework
一度jarファイルに格納するのでコピーする

copy work\framework.jar .\

7za u -tzip framework.jar classes.dex

端末に戻す作業
adb push framework.jar /data/local/tmp/
adb shell

cd /data/local/tmp
./run_root_shell
./install_backdoor (いらないかも?)
./unlock_lsm_miyabi (いらないかも?)

rm /data/local/tmp/framework.odex (エラーおこるはず)
./dexopt-wrapper framework.jar framework.odex

署名のコピー:

/data/local/tmp/busybox dd if=/system/framework/framework.odex of=/data/local/tmp/framework.odex bs=1 count=20 skip=52 seek=52 conv=notrunc

これでframework.odexの作成は完了。

あとはこれを/system/frameworkのものと入れ替えるだけ・・・だけど、そのまま入れ替えて
失敗したら二度と起動しない。パーミッション間違えるだけでも起動しなくなる。
その場合文鎮になる。cwm入れててもダメ。なので・・・

systemをsdカードにクローンして使う方法

1GB以上は空のあるSDカードを入れておいてください。

引き続きadb shellで操作。root権限ではない場合には

/data/local/tmp/run_root_shell

を実行してrootになる。

/data/local/tmp/busybox dd if=/dev/block/mmcblk0p11 of=/sdcard/system.img

出来上がったsystem.imgを先ずは試しにマウントする

cd /data/local/tmp
mkdir sys2
mount -o loop,rw -t ext4 /sdcard/system.img sys2

イメージファイルだと分かるようにしておく

mkdir sys2/IMGFILE_SYSTEM

面倒なのでbusyboxとsuをコピーしておく

./busybox cp su sys2/xbin/
chown 0.0 sys2/xbin/su
chmod 6755 sys2/xbin/su
./busybox cp busybox sys2/bin/

次に、WifiTethering時APN固定を解除(というかauのSIMの場合になるように仕向けた)framework.odexをコピーする

./busybox cp framework.odex sys2/framework/

ls -l sys2/framework/framework.odex

-rw-r--r-- root     root     10663032 2014-06-23 19:50 framework.odex

こうなっていることを確認。なっていない場合は変更する

chown 0.0 sys2/framework/framework.odex
chmod 644 sys2/framework/framework.odex

を実行。多分不要。。

マウント解除
umount sys2

一度再起動をかける
reboot

再起動したら再びshellへ…

adb shell
cd /data/local/tmp
./run_root_shell
./install_backdoor
./unlock_lsm_miyabi
./unlock_mmc_protect (いらないし間違ってsystem消す可能性があるので削除した方が良いとのこと)
/data/local/tmp/busybox mount -o loop -t ext4 /sdcard/system.img /system
stop zygote
start zygote

これで再起動がかかるように見える(Docomo With seriesと表示される部分から開始する)
しばらく待つ。
なんかたまに起動しないことある…adb shellでlogcatしておくといいかも。


起動したらテザリングをONにしても、APNが変更されることはないことが確認できると思う。

上記のコマンドだけど、再起動後すぐにやらないとsystemの上書きマウントがシステムがbusyだと
言われてできなくなってしまう。
また再起動ごとに行わないといけない。
しかもshellスクリプトだと動かないので、なにか考えよう。。。

tethered jailbreakってところかな。。

つーことで、スクリプト化(mount実行部分のみ)
http://www1.axfc.net/u/3266095 Pass: sh07d

3つファイルができるので全部/data/local/tmpにコピー

adb push m.sh /data/local/tmp
adb push mountsysimg.sh /data/local/tmp
adb push run_root_shell /data/local/tmp
adb shell

chmod 755 m.sh
chmod 755 mountsysimg.sh
chmod run_root_shell

クリーンブート後、コマンドから/data/local/tmp/m.shを叩けばマウントして再起動します。

./m.sh

SH07Dにコンソールインストールすれば単体でできるはず。。。

つーか どうやってroot取った後にコマンド実行させるか悩んでて、これはもう
exploit改変するしかないなと思ってソースみたらズバリそのものすでに実装済みだったわけで…


無料でSIMフリー化:
SHSimControlApp.apkをbaksmali
SHSimControlCommon.smali内
97行 99行を削除
const/4 v2, 0x0 を100行目に追加

もうすでにSIMロック解除していて本当にこれで解除できるのか不明なため誰かに
やってもらうしかないかも・・・

問題:

  • nand_lock解除のコマンドがSH-07D用にアップされていないので作らないといけない。。。 ここらへんの情報を元にする? →作った
  • MVNO-SIMを利用してのテザリングが強制でDoCoMoのAPNに変わってしまう(SIMコード44010以外なら大丈夫)
  • /systemを直接書き換えるにはnand_lockを外す必要がある →外してmount -o rw,remount出来ました
  • bootloopに陥った時に、戻す方法がない。(修理のみ?)→直接systemを弄らないでsystem.imgを弄る方法を利用するのが良い (SH-06Eみたいに)が、/dataの容量がそこまで大きくない → cwmがアップされてたので、今度焼いてみようと思う
  • カメラのシャッター音を消すにもnand_lock解除しないとだめ。
  • cwmがあっても、単独でrecoveryに入る方法が無いので、文鎮化対策にならない。
  • VPNFakerが何かわからないw

問題の方が多い・・・ちょっとづつ調べて行きます。。。

参考にしたページ:
http://m-v-n-o.blogspot.jp/2013/06/frameworkodex.html
https://github.com/fi01/backdoor_mmap_tools
http://lxbevo.sytes.net
http://anago.2ch.net/test/read.cgi/smartphone/1374753134/902-905 SH-06E rootスレ2
http://anago.2ch.net/test/read.cgi/smartphone/1402820473/ SH-07Dスレ パート6
http://anago.2ch.net/test/read.cgi/smartphone/1394287743/ SH-07Dスレ パート5
http://anago.2ch.net/test/read.cgi/smartphone/1379316102/ SH-07Dスレ パート4


パート6の方にはかなりお世話になりました!

2013年10月3日木曜日

DoCoMo iPhone SPモードを20秒間隔でチェックする方法

またもや久々の投稿。

SimフリーのiPhone 4SをDoCoMoで使っていましたが、この間5Sに機種変更してきた。
そうしたらi-modeやらmoperaやらを強制解約させられてimotenでキャリアメール使えなくなって
こまったもんでした。ちなみにつけたままにも出来たんですが、その時は一括払いで月々割引が
ないと言われたので、財布のこと考えてやめた。まあキャリアメールは一か月に一度使うか
使わないかなのだが。

やっと1日に使えるようになったかと思ったら15分間隔でしかフェッチできず、JBもできないから
すごく不便。

以前SPモードメールをSIMフリーアンドロイドで使えるようにしてたので、SPモードの動きは
分かっていた。パスワードさえわかれば後は簡単なんだけど、パスワードをバックアップから
抽出する方法かUA偽装して取るしかないかなあと思って2ちゃんねる見てたらあったね、
同じこと考えている人達。しかもアプリまであったので紹介。

【クラウド】ドコモメール3通目
http://anago.2ch.net/test/read.cgi/smartphone/1375346844/

このスレッドにあるんだけど、

引用:
582 名前:SIM無しさん[sage] 投稿日:2013/10/01(火) 20:49:39.54 ID:3dsA/zTs
プロファイルを取得するアプリを書いてみた。
www.mediafire.com/download/z02cm93hdq0j9zr/SPModeProfileDownloader.apk
ソース
www.mediafire.com/download/i3eoh7q7fcqq941/spmode_profile_downloader_src.zip
3G/LTEに接続した上でアプリを立ち上げ、spモードの暗証番号を入力して、ダウンロード開始ボタンを押せばOK
さらに読み進めると

679 名前:SIM無しさん[sage] 投稿日:2013/10/02(水) 21:34:53.14 ID:KENTjro7
SPModeProfileDownloaderなんですが、トップページの解析処理がおかしくて、現状使えないはずです。
なのでアップデートしました。
あと、メールアドレス・パスワード、プロファイル生データの共有機能をつけました。
アプリ
www.mediafire.com/download/d2jxgj9keys6kek/SPModeProfileDownloader_v2.apk
ソース
www.mediafire.com/download/2kgi4sjb2ilue2r/spmode_profile_downloader_v2_src.zip
おーこれは便利w

ちなみにapkなのでアンドロイド用。iPhoneしかない人はご愁傷様でした。

で、これでパスワードを表示させると・・・今まで使ってたSPモードのパスワードがリセットされるので、メールがフェッチできなくなる。

でもこのパスワードを入力すれば使えるはず!と思いチャレンジしたけど、パスワード糞長い。
AndroidからiPhone移す手段はEvernoteとかあれば使えるんだろうけどないので、Gmail経由で。
無事共有してアカウントのSPモードのパスワード欄に入力したけど、なぜかつながらない。
なんでだ?と思ったら。。。一度メモアプリに張り付けてから、全選択→コピー→貼り付けろと
書いてあった。その通りやるとあっさりOK。

しかしこれではまだ15分のフェッチ間隔。まあ、パスワードが使えるということが判明したので、
もっと高頻度でチェックしてやろうと。

で、やり方!

前からこのブログ見た人はLinuxサーバーを導入しているでしょうw
なのでそれを利用。imotenはもう使えないので止めたし。(止め方はservice imoten stop、chkconfig --delete imoten)

まずはfetchmailをインストール。
yum -y install fetchmail
これで完成。

次にコンフィグを作成するのだけれど試行錯誤やってうまくいったのはこんな感じ。

set daemon 20
poll mail.spmode.ne.jp proto pop3
user "spmodeログインID" pass "くそ長いパスワード"
ssl keep
smtpname "hogehoge@gmail.com"

ローカルにMTAを上げていればこれでOK。
最初上げていなかったのでMDAをssmtpにしていろいろ試したんだけど、
gmailに直接送ろうとするとFROMヘッダが勝手に書き換わってしまう現象がおきて
諦めた。

外部のMTAサーバーを利用する場合
set daemon 20
poll mail.spmode.ne.jp proto pop3
esmtpname xxxx
esmtppassword xxxxx

user "spmodeログインID" pass "くそ長いパスワード"
ssl keep
smtphost hoge.sendmail.hostname
smtpname "hogehoge@gmail.com"


と3行追加してやるといい。

これで受信は出来るようになるので、SPモードメールにGmailとか別の携帯とかからメールを送ってみて、hogehoge@gmail.comに届くかどうかを確認しよう。

送信の場合はどうするかというと、gmailの設定でメールアドレスを追加する。
これはimotenのものをそのまま再利用してもいい。SMTPサーバーの設定が
あるのでそこでmail.spmode.ne.jpにSMTPサーバー名を変更して、SSL接続に変更して
認証すれば、そのままGmailで送信ができるようになる。

iPhoneからはGmailアプリ(アプリ以外だとうまくいかないかも)を利用すれば、大して設定することもなくすぐにDoCoMoのSPモードメールをimotenと同じように使えるようになる。


ちなみに、これ20秒間隔じゃなくて1秒間隔とかにも出来るけど、サーバーの負荷を考えて
20秒にしてる。set daemonの後にある20を短くor長くすれば変更できる。


2013年6月21日金曜日

imotenの使い勝手がかなり便利に・・・

こんにちは

久々にiPhone4Sを手に入れて使っています。以前の記事で導入したimotenは、現在でも使っています。ただちょっと手を加えています。

気づいている人も多いと思いますが、結構前からGmailのアプリ(Android用)では、FROMを登録したものにすると、SMTPサーバーもアカウント設定で指定してあるものを利用して送信してくれるようになりました。
これに伴い、以前紹介したようにyahoo.comを利用したりJBしてSMTPサーバーを改変したりする
必要性がまったくなくなっていますね。
実はこれ、iPhone版でも対応していたようです。もしかしたらサーバー側の仕様変更なのかもしれませんね。良い仕事していますGoogleさんは。

ということで、察しが良い読者さんにはもうお分かりかと思いますが、docomoのメールアドレスにimotenのsmtpサーバーをgmailに登録してやれば、あとは差出人がdocomoであれば、勝手に全てのメールがdocomo経由で送られることになります。

以前はこれやろうと思ってもWebで送信すれば大丈夫だけれど、アプリからだと無理でした。

さて、gmailが受け付けるSMTPサーバーは、Port 587, 465, 25に対応していますが、SSLもしくはTLSで暗号化されていないと送信できません。幸いimoten自体がこれに対応しているので、さくっと設定しちゃいましょう。設定の仕方は他のホームページを参照してくださいw
ここhttp://todotan.com/blog/?p=40とか分かりやすかったです。

6.1.3はJailbreakが出来ないのであまり面白くないですね。

2012年9月18日火曜日

SH-07D root化できるか?

SH-09DやISW16SHでrootが取れているので、同じシャープ製ならSH-07Dもいけそうということで
やってみようと思う。

とりあえずPCを初期化してしまっているので、JAVA、SDK、ADB用ドライバをダウンロード。


/dev/msm-buspm-devが存在しないことが判明


system権限でシェルスクリプトを動かすツール実験版を実行するも
(6)  jniライブラリの乗っ取りを確認  が出来ない。




追加:
Cygwin、Android-NDK
参考: http://www.neko.ne.jp/~freewing/android/android_ndk/

Miyabiってなんだ?
http://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q1487663479

メモ:
ISW16SH rootスレ
http://anago.2ch.net/test/read.cgi/smartphone/1341655131/

SH-09D rootスレ
http://anago.2ch.net/test/read.cgi/smartphone/1345298294/

SH-07D スレ
http://anago.2ch.net/test/read.cgi/smartphone/1343399736/

Kernel Dumpソース
https://hotfile.com/dl/170099008/be80e2e/kerneldump.zip.html

kallsymsprint.zip
http://www1.axfc.net/uploader/File/so/78035

106SHのroot取得まとめ
http://apostrophea.com/2012/08/106shroot.php

system権限でシェルスクリプトを動かすツール実験版
https://docs.google.com/file/d/0B8LDObFOpzZqcHVZbXhyTjlnMzQ/edit


2011年9月8日木曜日

Atrixが3Gで接続出来ない場合の基本的なミス

2台目購入して設定したものの接続できなかったのでメモとしてのこします。

*#*#4636#*#*
とダイヤルすると情報表示メニューがでるので

Phone Informationを確認すると

GSM disconnects:

というところに

Fail because No Error

など表示されている。

このエラーはAPNの設定のAPN Typeを default と入力していないからの可能性が高い。
また、バッテリーモードがNight SaveとかになっていたらPerformanceに一旦切り替えよう。

上記はmpr.ex-pkt.net (128kbps)のAPNの設定を作った時の話。
たぶん他のでも同じ?

2011年9月5日月曜日

Atrix復活したけど。

起動しなくなったときに取ったバックアップを戻しても起動しなくなるのはわかるけど、起動していたときのバックアップに戻しても起動しなくなったのはいまだに謎。

というわけでCM7入れています。

○Pモードメールも快適に使えていますん。

で、CWMのバックアップイメージからデータを抽出しようと思ったらうまくいかなかったのでググった。

yaffsというファイルシステムらしい。

unyaffsというプログラムを使えば全部カレントディレクトリに解凍してくれるので、それを使う。


これ。使い方は

unyaffs imgファイル名

Linux用バイナリしかなかったかな。VirtualPCとかそんなエミュでも動く時代ってすばらしいね。

2011年9月3日土曜日

Atrix死んだかと思った

Atrixを放電してUSBで充電したら、なにやっても起動しなくなった。
起動しないってのはAndroidOSが起動しない。最初のメニューは表示される。
CWMも動いたのでバックアップからリストアしたりいろいろやったがダメ。
これはもう終わったかなと思ったけど、まあどうせ文鎮してるしいろいろ試そうと
思い以前2chで見ていたGB版Unlock可能なSBFのOlyem 4.2.5ってのを焼くことにした。
IHOP_Bellのブートメニューダサいしね。


用意するもの:
IHOP_BELLでアンロックしたME860 バッテリーは100%充電しとかないとBrickする可能性あり、RSDモードでは充電されない?模様。
http://www.filesonic.com/file/1582975114/OLYEM_U4_4.3.5_SIGNED_USAOLYPRTGB_P026_A004_M001_HWolympus_1g_1FF.sbf.gz
(http://forum.xda-developers.com/showthread.php?t=1125944&page=12 より)
RSDLite 5.3.1
http://forum.xda-developers.com/attachment.php?attachmentid=634879&d=1308872277
Mac用とかはhttp://forum.xda-developers.com/showthread.php?t=1136261参照
(ちなみに今回はx64 Windows driversってのは入れてないけど前どっかで入れた可能性あり)
手順:
RSDLite 5.3.1をインストール
SIMとSDを外した状態のAtrixをRSDモードで起動(起動時VOLUP長押し)
"Starting RSD protocol support"と表示されたらPCに接続、ドライバインストール完了を待つ。
RSDLiteを起動
下のリストに認識されていることを確認して、FilenameのところにOLYEMのsbf(ダウンロードしたら当然解凍しとけ。C:\直下に入れておくとトラブルなくていい)
をD&Dするか...から選ぶ
Startを押す。
待つ。
勝手に再起動かかって勝手に2.2.2で起動しているがとりあえず"Manually Power On"なんちゃらって下のリストのStatusのところが変わるのを待つ。
電源切ってSIMとSD戻して起動。

メニューもなくなっていい感じ。

ただしUnlockされていない状態になる。
なのでここでIHOP_BELLをRSDで焼きこむ。
すると普通にモトローラのロゴが出て上にUnlockedと表示される。

まあこれやらなくてもRootにはなれるので2.2.2で満足な人は不要。
Rootになるのは/preinstallにfastbootで焼く方法が楽。
http://forum.xda-developers.com/showthread.php?t=1138204 の #2の方法。

あとRomRacerのCWMはUnlockしないと使えない。無理やり書き込んでも使えなかった。Unlockしたとたん使えるようになった。