今天必将铭记史册(iPhone破解史),App Store彻底沦陷,十数款付费软件-大多数是排行榜首位的付费游戏,已被破解并发布,就在我投递此文时,仍然有产品在不断的发布中。
2 ]' Y( A: M T) v% b5 O之所以有这样的爆发性效应是,因为国外破解论坛发布了一个通用的破解方法,只需要iPhone用户购买一款付费软件,就可以用一个公式化的方法来破解其它的付费程序,然后就可以发布给其它用户-不是所有用户都需要购买一款付费软件。
( U9 \% k, w" _7 C! R9 F+ F) j2 G7 S# W5 P9 w
已破解软件游戏列表:1 U) A, y' A, `) w2 A6 X
' M5 F6 n) V3 T( o' U
Vay RPG游戏
0 C4 {' s7 h& y2 M% P猴子球
# \# {9 Y1 t6 r9 H' D4 f# L+ vChopper
9 [" _' J$ M" f5 N/ {( v* kiGotchi 8 \1 i- O+ e) h& a% p% E/ w% q
Crash_Bandicoot_Nitro_Kart_3D 古惑狼賽车
, x3 t; R, U. x/ Z1 lEnigmo 魔法水滴
, h7 b# L( k- E- _6 p; `iPinball 彈珠台
2 T: |% P7 L! P% W& B5 W1 n) y* EDizzyBee
- ]: f3 ^6 N" _6 v& rMoto Racer
* o& s+ o# k6 V7 DBomberman 炸彈人
! d' t2 s4 k& ~Dreigit
& w' z7 l; k$ h8 @' {Trism 俄羅斯方塊 / A9 v/ V1 I3 o6 k$ f% P2 F- F
FileMagnet 檔案管理,只for MAC ) G4 P4 W* ], h+ [+ e2 f
Taxes Hold'em 德州樸克 7 M/ H2 O9 Z) `' p1 E: a
9 T3 | S: e+ R4 |% d6 S
( j) |. E: D8 x) B) ~
, G# o6 O; t3 l4 b, N/ ]8 I$ I, ?
! P* O n! T! T" WAppStore收费软件破解法(翻译)
* C; w$ {' ]0 [国外论坛已经有好多人证实是有效的的。但破解的前提是有一份已购买的能在iPhone上运行的软件。小东,你买了这么多,现在可以出手了。. l' C- q) U/ M+ g3 l
% J. P# ?; Y5 e; H J: I" d
你需要以下东西-) T2 e2 k% g* h1 L! B
1.GNU Debugger for iPhone (GDB)
- C+ u8 T/ J; S2. otool for iPhone* f( C! n2 o8 ?/ X$ g7 d- x9 x3 Z
3. 合法购买的程序
& n0 M+ t+ l3 D# @4.SSH; v" h* M! f2 c3 Y. D+ o
$ t, w0 E' R* [' q- x5 Notool 和 gdb 可以通过 cydia 安装。 gdb 是GNU Debugger,otool 位于 toolchain 中。 下载之后, 检查权限,确认设置为755。然后重启你的 iPhone。
L. P1 z3 y: o5 r; @) p4 h8 v/ S# P
首先在 iPhone 上运行 otool。- otool -l path/to/myapp.app/xyz
复制代码 这将给你很多信息,我们感兴趣的是 LC_ENCRYPTION_INFO。 它看上去就像下面这样- ; G1 x* J! f" [
! r" W& ^+ f+ `1 BLoad command 9
, H; ^5 |' [' s5 D6 \9 {4 j; Zcmd LC_ENCRYPTION_INFO
% O* f' u0 l5 K" Ucmdsize 20 ( M. O: L4 b+ P; W' u
cryptoff 4096 + i+ Y- ?: @% j6 c
cryptsize 798720 4 K( c2 Y! H. c, Q% M
cryptid 1
! t. `# k4 {( _6 VLoad command 10
0 F8 `" w7 B) y" B
& Q7 Q, ^. Y' p8 D5 g1 ^3 Ocryptid 意思是程序是加密与否标志。 1= 加密的 0= 未加密
! _% k8 S) V2 a. [5 ?: F* O3 m9 Q5 L9 e0 t v% n" O) R
cryptsize 是加密后的字节数。 注意前面的 4096 字节是未加密的 (mach-o header)。
, S- Q2 l9 V; |- E7 R7 u$ R$ t* }0 q G
2. 现在我们用 gdb 将 iPhone 内存中已解密的程序 dump 出来。
8 l3 F; Q5 D: k% E
' T; t; `& R7 U4 Q' A, U. E h运行程序;% A G9 \, t0 a% x# m: Q! m: n ~$ \0 r
& q; O# E6 N# g( H* w# u运行以下命令它会列出 iphone 中正在运行的进程。
/ \; a2 j" Z+ {' A1 s0 y0 K3 O1 c) X
现在我们用 gdb 分析进程。 PID 是进程ID。有上面的命令查出。这需要一点时间..... ! X1 M' A, Z h- _
- m8 C/ @: s) `: H a; c- B; E
现在可以抓取 dump 了。在gdb 中用下面的命令 dump 内存。 我们想要的是从 0x2000 开始直到结束的一解密数据。- dump memory dump.bin 0x2000 0x20000
复制代码 我们完成了,退出gdb。
) a, s4 X' d; M: R' z% K9 I' D- u# \6 u
3. 现在我们用hex编辑器将它们合并。
! _7 n9 i1 ]- `2 R. `( ?
; P8 g2 U/ p, P+ @+ H用 dump 的数据将原版可执行程序文件中从 0x1000 开始的数据替换掉。 然后修改加密id。 它通常在 0x800 里。现在将它保存为新文件。传回iPhone。并将它重新签名: |