孙忠山 发表于 2015-1-22 00:45

和菜鸟们一起攻克金盾2018SS加密视频(更新:2015-02-04)

本帖最后由 孙忠山 于 2015-2-4 18:14 编辑

今天刚拿到金盾2018SS加密的视频,界面如下:

机器码由源来的“00000-00000-00000-00000”变成了一串32位的字符串了;

OD打开我们发现其实18SS的播放器仍然是有类似的机器码,只不过是三组数据构成,类似"0000-0000-0000"这样的格式;
运行-->暂停-->返回到用户代码-->查找字符串
我们可以发现和之前的版本有类似的地方,大概的机器码生成的地方,就可能在这里;
0089B808   .55            push ebp
0089B809   .8BEC          mov ebp,esp
0089B80B   .83C4 F0       add esp,-0x10
0089B80E   .53            push ebx
0089B80F   .56            push esi
0089B810   .57            push edi
0089B811   .33C9          xor ecx,ecx
0089B813   .894D FC       mov dword ptr ss:,ecx
0089B816   .8945 F8       mov dword ptr ss:,eax
0089B819   .33C0          xor eax,eax
0089B81B   .55            push ebp
0089B81C   .68 59BA8900   push 金盾18SS.0089BA59
0089B821   .64:FF30       push dword ptr fs:
0089B824   .64:8920       mov dword ptr fs:,esp
0089B827   .A1 B0128F00   mov eax,dword ptr ds:
0089B82C   .8B80 64020000 mov eax,dword ptr ds:
0089B832   .B2 01         mov dl,0x1
0089B834   .8B08          mov ecx,dword ptr ds:
0089B836   .FF91 E8000000 call dword ptr ds:
0089B83C   .33C0          xor eax,eax
0089B83E   .55            push ebp
0089B83F   .68 5EB88900   push 金盾18SS.0089B85E
0089B844   .64:FF30       push dword ptr fs:
0089B847   .64:8920       mov dword ptr fs:,esp
0089B84A   .E8 39E0F7FF   call 金盾18SS.00819888
0089B84F   .8B10          mov edx,dword ptr ds:
0089B851   .FF52 14       call dword ptr ds:
0089B854   .33C0          xor eax,eax
0089B856   .5A            pop edx
0089B857   .59            pop ecx
0089B858   .59            pop ecx
0089B859   .64:8910       mov dword ptr fs:,edx
0089B85C   .EB 0A         jmp short 金盾18SS.0089B868
0089B85E   .^ E9 FDDDB6FF   jmp 金盾18SS.00409660
0089B863   .E8 50E2B6FF   call 金盾18SS.00409AB8
0089B868   >A1 EC5D8D00   mov eax,dword ptr ds:
0089B86D   .8338 00       cmp dword ptr ds:,0x0
0089B870   .0F84 01010000 je 金盾18SS.0089B977
0089B876   .8B0D EC5D8D00 mov ecx,dword ptr ds:          ;金盾18SS.008F1C4C
0089B87C   .8B09          mov ecx,dword ptr ds:
0089B87E   .8D45 FC       lea eax,dword ptr ss:
0089B881   .BA 74BA8900   mov edx,金盾18SS.0089BA74                  ;c:\drmsoft\face
0089B886   .E8 71FBB6FF   call 金盾18SS.0040B3FC
0089B88B   .B2 01         mov dl,0x1
0089B88D   .8B45 FC       mov eax,dword ptr ss:
0089B890   .E8 B3AEB8FF   call 金盾18SS.00426748
0089B895   .84C0          test al,al
0089B897   .74 08         je short 金盾18SS.0089B8A1
0089B899   .8B45 FC       mov eax,dword ptr ss:
0089B89C   .E8 33B3B8FF   call 金盾18SS.00426BD4
0089B8A1   >33D2          xor edx,edx
0089B8A3   .55            push ebp
0089B8A4   .68 70B98900   push 金盾18SS.0089B970
0089B8A9   .64:FF32       push dword ptr fs:
0089B8AC   .64:8922       mov dword ptr fs:,esp
0089B8AF   .8B45 FC       mov eax,dword ptr ss:
0089B8B2   .E8 FDAAB8FF   call 金盾18SS.004263B4
0089B8B7   .50            push eax
0089B8B8   .E8 3B8EB7FF   call 金盾18SS.004146F8
0089B8BD   .6A 01         push 0x1
0089B8BF   .8B4D FC       mov ecx,dword ptr ss:
0089B8C2   .B2 01         mov dl,0x1
0089B8C4   .A1 AC444400   mov eax,dword ptr ds:          ;8FF
0089B8C9   .E8 A696BCFF   call 金盾18SS.00464F74
0089B8CE   .8BD8          mov ebx,eax
0089B8D0   .6A 40         push 0x40
0089B8D2   .8B0D A8608D00 mov ecx,dword ptr ds:          ;金盾18SS.008F1AB0
0089B8D8   .8B09          mov ecx,dword ptr ds:
0089B8DA   .B2 01         mov dl,0x1
0089B8DC   .A1 AC444400   mov eax,dword ptr ds:          ;8FF
0089B8E1   .E8 8E96BCFF   call 金盾18SS.00464F74
0089B8E6   .8945 F4       mov dword ptr ss:,eax
0089B8E9   .8B15 7C558D00 mov edx,dword ptr ds:          ;金盾18SS.008F1C58
0089B8EF   .8B12          mov edx,dword ptr ds:
0089B8F1   .F7DA          neg edx
0089B8F3   .66:B9 0200    mov cx,0x2
0089B8F7   .8B45 F4       mov eax,dword ptr ss:
0089B8FA   .8B30          mov esi,dword ptr ds:
0089B8FC   .FF56 1C       call dword ptr ds:
0089B8FF   .8D55 F0       lea edx,dword ptr ss:
0089B902   .B9 04000000   mov ecx,0x4
0089B907   .8B45 F4       mov eax,dword ptr ss:
0089B90A   .E8 7590BCFF   call 金盾18SS.00464984
0089B90F   .8B15 7C558D00 mov edx,dword ptr ds:          ;金盾18SS.008F1C58
0089B915   .8B12          mov edx,dword ptr ds:
0089B917   .0355 F0       add edx,dword ptr ss:
0089B91A   .F7DA          neg edx
0089B91C   .66:B9 0200    mov cx,0x2
0089B920   .8B45 F4       mov eax,dword ptr ss:
0089B923   .8B30          mov esi,dword ptr ds:
0089B925   .FF56 1C       call dword ptr ds:
0089B928   .8B45 F0       mov eax,dword ptr ss:
0089B92B   .99            cdq
0089B92C   .52            push edx
0089B92D   .50            push eax
0089B92E   .8B55 F4       mov edx,dword ptr ss:
0089B931   .8BC3          mov eax,ebx
0089B933   .E8 EC92BCFF   call 金盾18SS.00464C24
0089B938   .8BC3          mov eax,ebx
0089B93A   .E8 B5CDB6FF   call 金盾18SS.004086F4
0089B93F   .6A 00         push 0x0
0089B941   .A1 B0128F00   mov eax,dword ptr ds:
0089B946   .8B80 6C020000 mov eax,dword ptr ds:
0089B94C   .8B80 60030000 mov eax,dword ptr ds:
0089B952   .8B55 FC       mov edx,dword ptr ss:
0089B955   .E8 967AE2FF   call 金盾18SS.006C33F0
0089B95A   .33C0          xor eax,eax
0089B95C   .5A            pop edx
0089B95D   .59            pop ecx
0089B95E   .59            pop ecx
0089B95F   .64:8910       mov dword ptr fs:,edx
0089B962   .68 77B98900   push 金盾18SS.0089B977
0089B967   >8B45 F4       mov eax,dword ptr ss:
0089B96A   .E8 85CDB6FF   call 金盾18SS.004086F4
0089B96F   .C3            retn
0089B970   .^ E9 9FDFB6FF   jmp 金盾18SS.00409914
0089B975   .^ EB F0         jmp short 金盾18SS.0089B967
0089B977   >8B15 1C5D8D00 mov edx,dword ptr ds:          ;金盾18SS.008F1B48
0089B97D   .8B12          mov edx,dword ptr ds:
0089B97F   .A1 B0128F00   mov eax,dword ptr ds:
0089B984   .E8 5BC1E5FF   call 金盾18SS.006F7AE4
0089B989   .8B15 685A8D00 mov edx,dword ptr ds:          ;金盾18SS.008F1AD8
0089B98F   .8B12          mov edx,dword ptr ds:
0089B991   .A1 B0128F00   mov eax,dword ptr ds:
0089B996   .8B80 54020000 mov eax,dword ptr ds:
0089B99C   .8B08          mov ecx,dword ptr ds:
0089B99E   .FF91 C0020000 call dword ptr ds:
0089B9A4   .8B15 A44E8D00 mov edx,dword ptr ds:          ;金盾18SS.008F1B60
0089B9AA   .8B12          mov edx,dword ptr ds:
0089B9AC   .8B45 F8       mov eax,dword ptr ss:
0089B9AF   .8B80 64020000 mov eax,dword ptr ds:
0089B9B5   .8B08          mov ecx,dword ptr ds:
0089B9B7   .FF91 70020000 call dword ptr ds:
0089B9BD   .8B15 445C8D00 mov edx,dword ptr ds:          ;金盾18SS.008F1B5C
0089B9C3   .8B12          mov edx,dword ptr ds:
0089B9C5   .8B45 F8       mov eax,dword ptr ss:
0089B9C8   .8B80 5C020000 mov eax,dword ptr ds:
0089B9CE   .8B08          mov ecx,dword ptr ds:
0089B9D0   .FF91 70020000 call dword ptr ds:
0089B9D6   .8B45 F8       mov eax,dword ptr ss:
0089B9D9   .8B80 60020000 mov eax,dword ptr ds:
0089B9DF   .33D2          xor edx,edx
0089B9E1   .8B08          mov ecx,dword ptr ds:
0089B9E3   .FF91 7C020000 call dword ptr ds:
0089B9E9   .8B15 CC5D8D00 mov edx,dword ptr ds:          ;金盾18SS.008F1B50
0089B9EF   .8B12          mov edx,dword ptr ds:
0089B9F1   .A1 B0128F00   mov eax,dword ptr ds:
0089B9F6   .8B80 70020000 mov eax,dword ptr ds:
0089B9FC   .8B08          mov ecx,dword ptr ds:
0089B9FE   .FF91 70020000 call dword ptr ds:
0089BA04   .A1 744F8D00   mov eax,dword ptr ds:
0089BA09   .8B00          mov eax,dword ptr ds:
0089BA0B   .BA A0BA8900   mov edx,金盾18SS.0089BAA0                  ;1
0089BA10   .E8 1FFBB6FF   call 金盾18SS.0040B534
0089BA15   .75 17         jnz short 金盾18SS.0089BA2E
0089BA17   .A1 B0128F00   mov eax,dword ptr ds:
0089BA1C   .8B80 70020000 mov eax,dword ptr ds:
0089BA22   .B2 01         mov dl,0x1
0089BA24   .8B08          mov ecx,dword ptr ds:
0089BA26   .FF91 EC000000 call dword ptr ds:
0089BA2C   .EB 15         jmp short 金盾18SS.0089BA43
0089BA2E   >A1 B0128F00   mov eax,dword ptr ds:
0089BA33   .8B80 70020000 mov eax,dword ptr ds:
0089BA39   .33D2          xor edx,edx
0089BA3B   .8B08          mov ecx,dword ptr ds:
0089BA3D   .FF91 EC000000 call dword ptr ds:
0089BA43   >33C0          xor eax,eax
0089BA45   .5A            pop edx
0089BA46   .59            pop ecx
0089BA47   .59            pop ecx
0089BA48   .64:8910       mov dword ptr fs:,edx
0089BA4B   .68 60BA8900   push 金盾18SS.0089BA60
0089BA50   >8D45 FC       lea eax,dword ptr ss:
0089BA53   .E8 D0E8B6FF   call 金盾18SS.0040A328
0089BA58   .C3            retn
0089BA59   .^ E9 B6DEB6FF   jmp 金盾18SS.00409914
0089BA5E   .^ EB F0         jmp short 金盾18SS.0089BA50
0089BA60   .5F            pop edi
0089BA61   .5E            pop esi
0089BA62   .5B            pop ebx
0089BA63   .8BE5          mov esp,ebp
0089BA65   .5D            pop ebp
0089BA66   .C3            retn

从这里我们F8单步分析
从上面分析跟踪后发现,在0089CD17下断然后F8跟下来,可以发现机器码生成了并可以替换

替换两次运行后程序的机器码改变了,这说明加密视频打开后的机器码成功替换,接下来就是输入正确的播放密码并且再次验证机器码

所以我们必须还要找到播放后验证机器码的地方。

这么久才更新,在此表示抱歉,一来临近春节,各方面的工作比较紧张;二来,也希望吾爱的朋友们一起分析,发表自己的成果,可是这么久

都没有人分享一点,那还是由来我继续写下去吧。

更新时间:2015-02-04

上次我们分析到加密视频打开后替换机器码,接下来就是输入正确的播放密码后,程序再次验证机器码的问题。

经过分析得到了一个关键的地方,在这里就直接放出来吧,这个CALL只是个启示,中间会出现一个问题,将在

下次的分析中给出答案。


断点:0089C940

和之前的方式一样,程序运行后就可以下这个断点,就可以正常地替换机器码吧,大概有十几次吧!

先分享到此,亲们去偿试试,希望多把你遇到的问题或者发现的解决地方法分享出来哦~

在下周我再来解答大家的问题


(保存一下)





sdxuanli 发表于 2015-3-12 16:27

完全看不懂 不过感觉很吊的样子

ollydebug 发表于 2015-3-10 21:54

很盼望后续内容

orchid_inc 发表于 2015-3-10 12:26

请问一下没有密码可以提取2017s的吗?

我是who 发表于 2015-2-7 17:25

学习的不错

youyu1000 发表于 2015-2-7 13:25

标记一下 开始学习

bigexiu 发表于 2015-1-27 16:13

额,什么都看不懂

1454175027 发表于 2015-1-26 23:04

孙忠山 发表于 2015-1-26 09:46

1454175027 发表于 2015-1-25 01:04
替换机器码没毛用啊,提取不了

那你能替换么?

1454175027 发表于 2015-1-25 01:04

孙忠山 发表于 2015-1-23 08:55

Hmily 发表于 2015-1-22 22:09
期待后续内容。

H大,{:1_928:}见H大必膜拜

show00p 发表于 2015-1-22 00:52

逍遥枷锁 发表于 2015-1-22 12:07

给牛人顶起来,很佩服会破解视频加密的。

凌云9 发表于 2015-1-22 12:12

谢谢大神的无私分享

一鸣惊人 发表于 2015-1-22 13:09

大神,拜膜

sharkyzh 发表于 2015-1-22 16:13

关注,楼主加油!

cdweng 发表于 2015-1-22 21:05

谢谢楼主无私分享,学习了

快乐滴小2B 发表于 2015-1-22 21:59

看不懂,呜呜

Hmily 发表于 2015-1-22 22:09

期待后续内容。

fengmodel 发表于 2015-1-22 22:17

楼住稍后的理解有点久。。
页: [1] 2 3 4 5 6 7 8 9 10
查看完整版本: 和菜鸟们一起攻克金盾2018SS加密视频(更新:2015-02-04)