- For foreigners
- Use our cydia repository for quick patch CommCenter(Classic). Thank you for visiting our blog!
iOS 5 Beta 2がリリースされたので、CommCenterClassic patchを更新しました。このブログの右上のほうにある v.backspace.jp のリポジトリからもインストールできます(動作に関して何の保証もありません)。
パッチを行うための解析方法に関してはBeta 1の際にも解説していますが、詳しい理論については続きをどうぞ。
Beta 1の際と比べてプログラムの動きも変わっていますが、当然対象アドレスも変わっています。
00087328 f092ea74 blx 0x119814 ; symbol stub for: _SecKeyRawVerify
0008732c 2800 cmp r0, #0
0008732e bf08 it eq
00087330 2601 moveq r6, #1
00087332 e001 b.n 0x87338
00087334 2601 movs r6, #1
00087336 b114 cbz r4, 0x8733e
00087338 4620 mov r0, r4
0008733a f092e898 blx 0x11946c ; symbol stub for: _CFRelease
0008733e 4628 mov r0, r5
00087340 f092e894 blx 0x11946c ; symbol stub for: _CFRelease
00087344 4630 mov r0, r6
00087346 b003 add sp, #12
00087348 e8bd0d00 ldmia.w sp!, {r8, sl, fp}
0008734c bdf0 pop {r4, r5, r6, r7, pc}
0008734e bf00 nop
87344が対象アドレスのようですので、いつもの movs r0, #1 へ書き換えます。手動でやるなら例によって以下のようなコマンドです。
$ 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 "0086344: 0120" | xxd -r - ./CommCenterClassic
# chmod 755 ./CommCenterClassic
# ldid -s ./CommCenterClassic
# killall CommCenterClassic
実はBeta 1では ldid なしでも動いていましたが、Beta 2からはOS側のコード署名検証が復活したようです。
0 件のコメント:
コメントを投稿