twfy914 发表于 2009-12-8 10:11

[原创]飓风10.3版破解-内存补丁

本帖最后由 twfy914 于 2009-12-15 13:46 编辑

这个地址是 8.0,9.7 内存补丁方法
http://www.52pojie.cn/viewthread.php?tid=35443

下边是正文 10.3版本的方法
昨天官方下载的飓风 用10.3版随便加密一个视频,od载入
004D9363 跟进入

004D934D    52            push    edx
004D934E    E8 FBFEFFFF   call    004D924E
004D9353    68 25934D00   push    004D9325
004D9358    39CE            cmp   esi, ecx
004D935A    73 01         jnb   short 004D935D
004D935C    C3            retn
004D935D    81C4 04000000   add   esp, 4
004D9363    E8 2AFFFFFF   call    004D9292                         ; 跟进入
004D9368^ 79 8A         jns   short 004D92F4
004D936A    2F            das
004D936B    FD            std

这里面没什么东东,F8 到 004D92CE    C3            retn 返回
鼠标选择 008D504A F4运行 ,这里注意一下,有的时候 这里会飞,没关系,重来就是

008D500A    8B15 00508D00   mov   edx, dword ptr           ; <&kernel32.GetModuleHandleA>
008D5010    FF32            push    dword ptr
008D5012    8F05 00508D00   pop   dword ptr                ; <&kernel32.GetModuleHandleA>
008D5018    EB 06         jmp   short 008D5020
008D501A    8F05 00508D00   pop   dword ptr                ; <&kernel32.GetModuleHandleA>
008D5020    B8 04308D00   mov   eax, 008D3004
008D5025    8338 00         cmp   dword ptr , 0
008D5028    74 20         je      short 008D504A
008D502A    50            push    eax
008D502B    FF70 04         push    dword ptr
008D502E    FF30            push    dword ptr
008D5030    50            push    eax
008D5031    830424 08       add   dword ptr , 8
008D5035    E8 B6090000   call    008D59F0
008D503A    83C4 0C         add   esp, 0C
008D503D    58            pop   eax
008D503E    8B10            mov   edx, dword ptr
008D5040    C1E2 02         shl   edx, 2
008D5043    01D0            add   eax, edx
008D5045    83C0 08         add   eax, 8
008D5048^ EB DB         jmp   short 008D5025
008D504A    E9 59120000   jmp   008D62A8
008D504F    56            push    esi

F8 接着走 008D62A9 这个call 进入

008D62A8    60            pushad
008D62A9    E8 4F000000   call    008D62FD
008D62AE    6F            outs    dx, dword ptr es:
008D62AF    85F3            test    ebx, esi

又是一个call 接着进入

008D62FD    E8 BEF6FFFF   call    008D59C0

F4 运行到 008D59E0 F7单步进入

008D59C0    8B4424 04       mov   eax, dword ptr          ; 1.008D62AE
008D59C4    50            push    eax
008D59C5    8B4424 04       mov   eax, dword ptr
008D59C9    50            push    eax
008D59CA    E8 E1FDFFFF   call    008D57B0
008D59CF    58            pop   eax
008D59D0    E8 DB0B0000   call    008D65B0
008D59D5    870424          xchg    dword ptr , eax
008D59D8    58            pop   eax
008D59D9    894424 24       mov   dword ptr , eax
008D59DD    61            popad
008D59DE    58            pop   eax
008D59DF    58            pop   eax
008D59E0    FFD0            call    eax
008D59E2    E8 A9EB0000   call    008E4590
F4 到 004D9B60 的call F7进入
004D9AFC    55            push    ebp                              ; (initial cpu selection)
004D9AFD    8BEC            mov   ebp, esp
004D9AFF    83C4 F0         add   esp, -10
004D9B02    B8 347F4D00   mov   eax, 004D7F34
004D9B07    E8 48DEF2FF   call    00407954
004D9B0C    A1 E0084E00   mov   eax, dword ptr
004D9B11    8B00            mov   eax, dword ptr
004D9B13    E8 848EF9FF   call    0047299C
004D9B18    A1 E0084E00   mov   eax, dword ptr
004D9B1D    8B00            mov   eax, dword ptr
004D9B1F    BA 749B4D00   mov   edx, 004D9B74                  ; play
004D9B24    E8 4389F9FF   call    0047246C
004D9B29    8B0D 880A4E00   mov   ecx, dword ptr           ; 1.004E6044
004D9B2F    A1 E0084E00   mov   eax, dword ptr
004D9B34    8B00            mov   eax, dword ptr
004D9B36    8B15 4C444D00   mov   edx, dword ptr           ; 1.004D4498
004D9B3C    E8 738EF9FF   call    004729B4
004D9B41    8B0D EC0A4E00   mov   ecx, dword ptr           ; 1.004E5F78
004D9B47    A1 E0084E00   mov   eax, dword ptr
004D9B4C    8B00            mov   eax, dword ptr
004D9B4E    8B15 68114D00   mov   edx, dword ptr           ; 1.004D11B4
004D9B54    E8 5B8EF9FF   call    004729B4
004D9B59    A1 E0084E00   mov   eax, dword ptr
004D9B5E    8B00            mov   eax, dword ptr
004D9B60    E8 CF8EF9FF   call    00472A34
004D9B65    E8 3EB7F2FF   call    004052A8

ok,到达这里壳已经跑完了,可以开始破解了,设置一个硬件执行断点备用好了,免得重调的话还得去跟踪壳。右键》断点》硬件执行断点,顺便把硬件断点下边的SFX真正的入口给设置上得了

00472A34    55            push    ebp                              ; (initial cpu selection)
00472A35    8BEC            mov   ebp, esp
00472A37    51            push    ecx
00472A38    53            push    ebx
00472A39    56            push    esi
00472A3A    57            push    edi
00472A3B    8945 FC         mov   dword ptr , eax
00472A3E    8B45 FC         mov   eax, dword ptr
00472A41    C680 AD000000 0>mov   byte ptr , 1
00472A48    33D2            xor   edx, edx
00472A4A    55            push    ebp
00472A4B    68 482B4700   push    00472B48

---------------------------------------------------------------

和8.0,9.7一样 查找字符串
然后找到 yaomediakj3jf 之前的md5比较改掉,和8.0,9.7的方法一样,一共4处
10.3版就三处需要注意
一是 004D1851 播放授权不合法的检查
二是 004D1908 播放授权不正确的检测

004D184E    83F8 05         cmp   eax, 5
004D1851    0F85 C2000000   jnz   004D1919
004D1857    8D4D DC         lea   ecx, dword ptr
004D185A    BA 04000000   mov   edx, 4
004D185F    8B45 E4         mov   eax, dword ptr
004D1862    E8 D5A5F6FF   call    0043BE3C
004D1867    8B7D E4         mov   edi, dword ptr
004D186A    85FF            test    edi, edi
004D186C    74 05         je      short 004D1873
004D186E    83EF 04         sub   edi, 4
004D1871    8B3F            mov   edi, dword ptr
004D1873    8D8D D8FDFFFF   lea   ecx, dword ptr
004D1879    8BD7            mov   edx, edi
004D187B    83EA 04         sub   edx, 4
004D187E    8B45 E4         mov   eax, dword ptr
004D1881    E8 9AA5F6FF   call    0043BE20
004D1886    8B95 D8FDFFFF   mov   edx, dword ptr
004D188C    8D45 E4         lea   eax, dword ptr
004D188F    E8 743CF3FF   call    00405508
004D1894    FF35 885F4E00   push    dword ptr
004D189A    68 58294D00   push    004D2958                         ; `
004D189F    FF75 E8         push    dword ptr
004D18A2    68 58294D00   push    004D2958                         ; `
004D18A7    FF75 E0         push    dword ptr
004D18AA    68 58294D00   push    004D2958                         ; `
004D18AF    FF75 E4         push    dword ptr
004D18B2    8D85 BCFDFFFF   lea   eax, dword ptr
004D18B8    BA 07000000   mov   edx, 7
004D18BD    E8 5E3FF3FF   call    00405820
004D18C2    8B85 BCFDFFFF   mov   eax, dword ptr
004D18C8    8D95 C0FDFFFF   lea   edx, dword ptr
004D18CE    E8 7539FAFF   call    00475248
004D18D3    8D85 C0FDFFFF   lea   eax, dword ptr
004D18D9    8D95 D0FDFFFF   lea   edx, dword ptr
004D18DF    E8 DC39FAFF   call    004752C0
004D18E4    8B85 D0FDFFFF   mov   eax, dword ptr
004D18EA    8D8D D4FDFFFF   lea   ecx, dword ptr
004D18F0    BA 04000000   mov   edx, 4
004D18F5    E8 26A5F6FF   call    0043BE20
004D18FA    8B85 D4FDFFFF   mov   eax, dword ptr
004D1900    8B55 DC         mov   edx, dword ptr
004D1903    E8 AC3FF3FF   call    004058B4
004D1908    74 1E         je      short 004D1928
004D190A    B8 64294D00   mov   eax, 004D2964                  ; 播放授权不合法!
004D190F    E8 DC41F7FF   call    00445AF0
004D1914    E9 420F0000   jmp   004D285B
004D1919    B8 80294D00   mov   eax, 004D2980                  ; 播放授权不正确!

第三处需要注意的地方
004D2C93 这里是正确的数在的地方,这次没法象前两个版本那样直接改一条指令了,这次改动大点,


004D2CBD    A1 885F4E00   mov   eax, dword ptr
004D2CC2    E8 7591F6FF   call    0043BE3C

两条指令给干掉 ,替换成

004D2CBD    8B85 04FEFFFF   mov   eax, dword ptr
004D2CC3    8901            mov   dword ptr , eax
004D2CC5    90            nop
004D2CC6    90            nop
至于未来的其他版本,根据具体情况替换没用的指令就是了,估计他们未来的改动不会大。

ok,任务完成。
内存补丁和上文写法一致,只是注意一下,Keymake不支持替换指令长度和原指令长度不一致的改法,需要把新指令拼凑一下。
总结,飓风的版本差异对于这种破解方法基本无视,无非就是修改了一下补丁地址罢了。密码无视。飓风10.3的壳实在太简单,无视。虽然PEid没查出是什么壳,我这么菜的人也就花了两个小时就跟到了,更别提高手了。 还有啊,新手们也不要把这个想象得很难,其实,我也是连汇编指令也认不全的。

如上文所说,我连指令都认不全。至于这个破解,根本是照着CHHSun老兄的破解做的。 http://www.52pojie.cn/viewthread.php?tid=24246
不同的是,我做了一个内存补丁。而我本人更期望做的是程序设计-人工智能之内的东东。至于破解飓风,原因是我购买了某网站的视频教程,找管理员算号管理员还问七问八的烦人,主动权还是掌握在自己手里比较好,正好我们公司调试高手多多,咨询起来也容易,才在CHHSun老兄的基础上花了一个礼拜去跟踪,从od入门一直一步步跟踪找到内存补丁的修改方法。一个版本跟到了,其他版本也就大同小异了。

twfy914 发表于 2009-12-8 10:12

本帖最后由 twfy914 于 2009-12-8 10:29 编辑

http://www.52pojie.cn/viewthread.php?tid=32818&extra=&highlight=%EC%AB%B7%E7&page=3


多人现在破解飓风不是为了学习。而是为了盗版别人的讲座内容(网上已经开始有人专门收费破解加密视频的生意了。我想任何人自己的劳动成果都不希望别人拿去倒卖吧。)这些视频多半都是购买正版软件加密的,为的 ...
我不知道 发表于 2009-10-8 13:07 http://www.52pojie.cn/images/common/back.gif
“我不知道”说得也很有道理(不安),不过,我写的水平很菜,能看懂的人不多吧(爽)。看来,写得差也算一种优点

feiligood 发表于 2009-12-8 10:28

我还是太菜了 看不懂
研究去

reckless 发表于 2009-12-8 10:38

怎么没有附件?不提供工具?

twfy914 发表于 2009-12-8 10:40

………………
这有什么需要提供的吗
od? 飓风加密工具?PEID?

温柔 发表于 2009-12-8 10:46

看的不是很懂

xq811028 发表于 2009-12-8 10:52

感谢楼主分享,学习了。

ZeNiX 发表于 2009-12-8 11:14

謝謝分析,
果然和舊版差別不大.

2051314 发表于 2009-12-8 11:32

楼主10.3的补丁发一个出来好不 谢谢

xie83544109 发表于 2009-12-8 11:50

:lol
向楼主学习呢
页: [1] 2 3 4 5 6
查看完整版本: [原创]飓风10.3版破解-内存补丁