- For foreigners
- Use our cydia repository for quick patch CommCenter(Classic). Thank you for visiting our blog!
CommCenterClassic patchをiOS 5 Beta 7向けに更新しました。このブログの右上のほうにある v.backspace.jp のリポジトリからもインストールできます(動作に関して何の保証もありません)。
パッチを行うための解析方法に関してはBeta 1のエントリを、Beta 7でのポインタについては続きをどうぞ。
これまでとほぼ同様の内容で、いつものように対象アドレスが違います。
00090c52 f077ea20 blx 0x108094 @ symbol stub for: _SecKeyRawVerify
00090c56 2800 cmp r0, #0
00090c58 bf08 it eq
00090c5a 2601 moveq r6, #1
00090c5c e001 b.n 0x90c62
00090c5e 2601 movs r6, #1
00090c60 b114 cbz r4, 0x90c68
00090c62 4620 mov r0, r4
00090c64 f076ea6e blx 0x107144 @ symbol stub for: _CFRelease
00090c68 4628 mov r0, r5
00090c6a f076ea6c blx 0x107144 @ symbol stub for: _CFRelease
00090c6e 4630 mov r0, r6
00090c70 b003 add sp, #12
00090c72 e8bd0d00 ldmia.w sp!, {r8, sl, fp}
00090c76 bdf0 pop {r4, r5, r6, r7, pc}
00090c78 b5f0 push {r4, r5, r6, r7, lr}
Beta 7においては90c6eが対象アドレスで、例によって 2001 へ改変して movs r0, #1 に書き換えばOKです。
$ su -
# export CODESIGN_ALLOCATE=/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/codesign_allocate
# cd /System/Library/Frameworks/CoreTelephony.framework/Support/
# cp ./CommCenterClassic ./CommCenterClassic.bak
# echo "008fc6e: 0120" | xxd -r - ./CommCenterClassic
# chmod 755 ./CommCenterClassic
# ldid -s ./CommCenterClassic
# killall CommCenterClassic
iOS 5 Beta 7の lockdownd にはバグがあり、HNIがキャリアバンドルに登録済みのキャリアのSIMカードしか認識しない問題があります(Appleではこの問題を認識しており、Beta 8以降またはGMで修正される予定です)。
つまり、SIMロックフリー版にたとえばNTTドコモのSIMカードを挿入しても、そのままでは使用することができません。これを回避するためには、以下のような対策が有効です。
- Apple公式の『iPhone 構成ユーティリティ』を使用して、キャリアのAPN情報を登録する
- CommCenterClassicを改変しキャリアバンドルの署名検証を回避した上で、当該キャリア向けのキャリアバンドルを導入する
- lockdownd を改変するか、Beta 6以前のものに入れ替えた上で偽の署名と適切な権限を付与する
今回のCommCenterClassic パッチと同時に、当サイトのリポジトリで提供しているようなキャリアバンドルを導入すると、NTTドコモなどのネットワーク下でも正常に利用することが可能です。
0 件のコメント:
コメントを投稿