能力值:
( LV2,RANK:10 )
|
-
-
26 楼
这种狗壳的脱壳极简单,那个eax的值是可以很容易推算出来的。这个值用以解码,简单说,就是xor算法。至于iat的修复,很简单,在iat解码子程序段用自己一小段代码代替,根本就不用用importRec这种工具。坦白讲,彩虹狗几乎所有的狗壳iat处理方式都是一样的。你把彩虹狗的花指令去掉后,你什么都明白了。
|
能力值:
(RANK:215 )
|
-
-
27 楼
最初由 orchid88 发布 这种狗壳的脱壳极简单,那个eax的值是可以很容易推算出来的。这个值用以解码,简单说,就是xor算法。至于iat的修复,很简单,在iat解码子程序段用自己一小段代码代替,根本就不用用importRec这种工具。坦白讲,彩虹狗几乎所有的狗壳iat处理方式都是一样的。你把彩虹狗的花指令去掉后,你什么都明白了。
怎么推算,有空兄台指点偶一下吧。
|
能力值:
( LV9,RANK:170 )
|
-
-
28 楼
我接触破解就是从打小狗开始的,那个密码的获取方法就是打狗队的饭碗.
其实说白了也不难,你想想异或就知道了~~~~
|
能力值:
( LV10,RANK:170 )
|
-
-
29 楼
果然可以在内存找到正确的EAX值。。。好像还有点规律可循。楼主能否再加一个发出来我找找密码试试
|
能力值:
( LV2,RANK:10 )
|
-
-
30 楼
|
能力值:
( LV10,RANK:170 )
|
-
-
31 楼
最初由 rooky2000 发布 我来发个4.0的壳,楼主试试
运行后直接出错。2003_sp1系统。
|
能力值:
( LV2,RANK:10 )
|
-
-
32 楼
最初由 china 发布 怎么推算,有空兄台指点偶一下吧。
首先,看看程序调用了哪些dll,就可以判断出来是什么编译的。根据C、Delphi、VB的入口地址特征,就可以知道oep处的正确值是多少。例如Vc++ 6.0语言是55 8b ec 6a.
其次,oep地址很容易从狗中看出来。这个我不多说了。
第三,你看看加密后的oep处的值是多少,比如是8e 8d 52 31
第四,我前面说过解码算法是xor算法,所以密码就是上两组数xor出来了。简单吧!
4.0的壳没这么简单,具体破解密码方法我记得看雪有位高人已经说得很清楚了。
|
能力值:
( LV12,RANK:250 )
|
-
-
33 楼
强,我测试过,和楼上说的一模一样
拿楼主的test做了测试。
原oep:6A 70 68 E0
加壳后的入口:D9 D7 FB 08
逐个异或运算后的值:B3 A7 93 E8
和楼主说的eax值为:93A7B3E8正好一样。(不过顺序问题,楼上能否指点下)
|
能力值:
( LV12,RANK:250 )
|
-
-
34 楼
换个版本就不行了原68,18,95,40
加狗后的入口ep:60,55,8B,EC
逐个运算后:BD c2 3A 9B
而正确的值是:9B3AC2BD(这个顺序就没问题)
请问下,如果判断狗的版本号,不是说了4.0没那么简单,那具体呢?
能否给下高手在论坛中的贴子,谢谢
还有一点就是像VC之类的oep一样有固定的机器码,但是vb呢,他有个push xxxxx地址不一样,机器码就不同。
|
能力值:
( LV12,RANK:250 )
|
-
-
35 楼
上面是楼主用的加壳程序,请问是不是从部件号看出,就是3.1.11版本,所以按你说的他低于4.0所以可以用那方法xor运算,事实也证明可以。
我在楼上的那个同样是彩虹的,请问如果判断其版本号!!!
|
能力值:
(RANK:215 )
|
-
-
36 楼
最初由 orchid88 发布 首先,看看程序调用了哪些dll,就可以判断出来是什么编译的。根据C、Delphi、VB的入口地址特征,就可以知道oep处的正确值是多少。例如Vc++ 6.0语言是55 8b ec 6a. 其次,oep地址很容易从狗中看出来。这个我不多说了。 第三,你看看加密后的oep处的值是多少,比如是8e 8d 52 31 第四,我前面说过解码算法是xor算法,所以密码就是上两组数xor出来了。简单吧!
........
谢谢老大。
是不是论坛里某兄弟写的那个4.0的壳的分析?
|
能力值:
(RANK:215 )
|
-
-
37 楼
最初由 4st0ne 发布 果然可以在内存找到正确的EAX值。。。好像还有点规律可循。楼主能否再加一个发出来我找找密码试试
从内存里找?
|
能力值:
( LV12,RANK:250 )
|
-
-
38 楼
来一份本地的,生成密码脚本我已经写出来了。嘿嘿,谢谢大侠们的无私精神。
|
能力值:
( LV9,RANK:170 )
|
-
-
39 楼
如果是3.x的内存里可以找,异或也可以用,两种方法结合着找`~~~`
如果是4.0的,我也解决不了,密码学功底太差了我
再补充一点4.0=3.x+anti+解密算法(不是异或)
也就是说4.0的会ANTI调试器,它首先会用多种方法检测调试器,检测到调试器也会说"没发现硬件狗",来迷惑你,
主要注意的是ZwQueryInformationProcess和CreateToolhelp32Snapshot,
过了这两个ANTI才正式开始读狗
|
能力值:
( LV10,RANK:170 )
|
-
-
40 楼
最初由 kangaroo 发布 来一份本地的,生成密码脚本我已经写出来了。嘿嘿,谢谢大侠们的无私精神。
插狗后正确的EAX值是不是:E4636E20
麻烦看一下,谢谢。我从内存里找出来的。。看看这个规律可不可行。
|
能力值:
( LV9,RANK:170 )
|
-
-
41 楼
位置错了,说了在内存中位置不固定滴,eax=93BFBBDD
|
能力值:
( LV12,RANK:250 )
|
-
-
42 楼
最初由 skylly 发布 改一处地方试试
最初由 china 发布 shylly的在我的机器上运行也是非法。
解决了一下。
呵呵,你们两份都不能跨平台
http://bbs.pediy.com/showthread.php?s=&threadid=31171
|
能力值:
( LV10,RANK:170 )
|
-
-
43 楼
最初由 skylly 发布 位置错了,说了在内存中位置不固定滴,eax=93BFBBDD
这次是失误了。。劳烦能再发个上来吗
i wanna try again.
|
能力值:
( LV12,RANK:250 )
|
-
-
44 楼
已经没有了!!!要找楼主
|
能力值:
( LV10,RANK:170 )
|
-
-
45 楼
晕啊。。。我的“猜想”无法验证了
|
能力值:
( LV12,RANK:250 )
|
-
-
46 楼
有什么好的想法怎么不说出来,给大家一起研究下呢?
|
能力值:
( LV10,RANK:170 )
|
-
-
47 楼
还是先自己验证一下比较好。。对狗不是很了解。说出来大家笑话
呵呵 现在就等楼主再发个加壳的程序了。
|
能力值:
( LV12,RANK:250 )
|
-
-
48 楼
技术这种大家没什么好笑话的,说出来大家一起讨论不就有结果了,正确的地方大家一起学习,不对的地方大家也会为你指出,望楼讲解下高见。
我先说下吧!!其实当初我就有想法在内存中肯定存在密码的。
后来发现规律不一定,所以也没提。
在程序弹出"没发现加密狗的地方"壳已经对原oep做了一次解码
此时dump下来,我会发现在紧接着pe文件头下面(狗壳一次解码的)很多和密码一样的,难而对于不同程序这些密码存在的地方又不一样(为什么会一样)其实道理很简单,狗壳会把在原oep处的一次解码和我们说的密码在次进行异或,得到正确的代码(二次解码)。那么正确代码中必然会有0吧,大家都知道 任何数异或上自身其结果肯定为,而代码中肯定非常多处0,所以必然在一次解码后,你dump下来的内存,里面有密码。不知是否有错,高手讲解下。
|
能力值:
(RANK:215 )
|
-
-
49 楼
|
能力值:
( LV12,RANK:250 )
|
-
-
50 楼
上面的CrackMe密码是:98355C83
具体如何得到请见下贴的24楼:
http://bbs.pediy.com/showthread.php?s=&threadid=31171
|
|
|