能力值:
( LV2,RANK:10 )
|
-
-
2 楼
经典
|
能力值:
( LV2,RANK:10 )
|
-
-
3 楼
美国纽约世贸43N,兴存着果然列害
|
能力值:
( LV12,RANK:2670 )
|
-
-
4 楼
学习
|
能力值:
( LV12,RANK:220 )
|
-
-
5 楼
原来这个人有
马甲的哦
|
能力值:
( LV9,RANK:250 )
|
-
-
6 楼
最初由 cater 发布 原来这个人有 马甲的哦
在这里就这一个ID.
|
能力值:
( LV9,RANK:1140 )
|
-
-
7 楼
现在好像很流行减肥吗??
差不多搞完都要减肥一下DI
ZHICHI楼主!
|
能力值:
( LV9,RANK:2130 )
|
-
-
8 楼
现在看到完美xxx就好像听到另一声音xx免杀。
|
能力值:
(RANK:10 )
|
-
-
9 楼
请问楼主
EB 05 8B 16 83 C6 04 8B FA 0F B6 06 46 80 3E 8D 74 15 50 8B C8 83 E0 03 C1 E9 02 F3 A5 8B C8 F3 A4 5A 46 90 90 EB 47 50 33 D2 33 C9 B1 06 F7 F1 8B C8 0F B6 46 01 8A E0 68 25 2D 35 3D 68 05 0D 15 1D B0 B8 33 D2 38 24 14 74 07 90 90 FE C0 42 EB F4 5A 5A 25 FF 00 00 00 50 33 C0 8B 56 02 03 C2 83 C6 06 E2 F6 5A 88 17 89 47 01 46 5A 4B 75 91 5F 8D 4D 66 2B CF F3 AA 61 C3
这些代码可否通用?
|
能力值:
( LV9,RANK:250 )
|
-
-
10 楼
我编的时候就注意通用性了,里面没有任何绝对地址引用,所以应该是通用的。
|
能力值:
(RANK:10 )
|
-
-
11 楼
楼主可否详细介绍下如何找到Stolen Code的?
当某个程序被抽得太多的时候 就不好去猜了
|
能力值:
(RANK:1060 )
|
-
-
12 楼
这么修复很慢,
克隆一份代码patch CRC那里,然后可以直接修改patch IAT。
并且试试delphi程序,有个表被抽走了。
给你个参考代码,写得很乱:
; clone decoder to fuck crc
pusha
mov ebx, s_size[ebp]
push 4
push 3000h
push ebx
push 0
callX VirtualAlloc
mov s_clone[ebp], eax
xchg edi, eax
mov esi, s_start[ebp]
xchg ecx, ebx
rep movsb
popa
; find CRC patch
; 00374351 2B848D 143B0000 SUB EAX, [EBP+ECX*4+3B14]
; 2B 84 8D 14 3B 00 00
.while b [eax] != 2Bh || \
d [eax+1] != 3B148D84h || \
w [eax+5] != 0
inc eax
.endw
; save the addr to decide is last exception
mov iatproc[ebp], eax
; patch CRC
add eax, 3
mov ecx, s_clone[ebp]
sub ecx, s_start[ebp]
add ecx, [eax]
mov [eax], ecx
; patch IAT encrypt
; 00374661 8919 MOV [ECX], EBX
; 00374663 EB 03 JMP SHORT 00374668
; 8919EB03
.while d [eax] != 03EB1989h
inc eax
.endw
inc eax
mov b [eax], 01h ; mov [ecx], eax
; wait alloc mem to fuck Codereplace
mov eax, za[ebp]
call _bp
|
能力值:
( LV9,RANK:250 )
|
-
-
13 楼
最初由 chinadev 发布 楼主可否详细介绍下如何找到Stolen Code的? 当某个程序被抽得太多的时候 就不好去猜了
你可以断在38760d那里的popad retn那里,然后逐步f7跟踪,中途还有个异常,用好seh链就好.
对于断点检查,搜索cmp al,0cc 把这个改成cmp al,0之类的就可以了。
to楼上:
1、不能跟你比,你丫的多疯变
2、我补丁代码里作了lea代码加法运算混淆代码转换mov,从而真正还原最原始代码,无junk
|
能力值:
( LV4,RANK:50 )
|
-
-
14 楼
to楼上楼上:不能跟你比,你丫的多疯变
|
能力值:
(RANK:10 )
|
-
-
15 楼
最初由 peaceclub 发布 你可以断在38760d那里的popad retn那里,然后逐步f7跟踪,中途还有个异常,用好seh链就好. 对于断点检查,搜索cmp al,0cc 把这个改成cmp al,0之类的就可以了。
to楼上:不能跟你比,你丫的多疯变
谢谢
|
能力值:
( LV4,RANK:50 )
|
-
-
16 楼
强人.!!膜拜一下!!
|
能力值:
( LV12,RANK:220 )
|
-
-
17 楼
最初由 peaceclub 发布 在这里就这一个ID.
http://bbs.pediy.com/member.php?s=&action=getinfo&userid=451
原来不是你哦?
|
能力值:
(RANK:1060 )
|
-
-
18 楼
他怎么会是狗工
|
能力值:
(RANK:1060 )
|
-
-
19 楼
发现楼主重大bug,我用unpacker脱后
00401D60 > 55 PUSH EBP
00401D61 8BEC MOV EBP, ESP
00401D63 6A FF PUSH -1
00401D65 68 B0354000 PUSH 004035B0
00401D6A 68 E61E4000 PUSH <JMP.&msvcrt._except_handler3>
00401D6F 64:A1 00000000 MOV EAX, FS:[0]
00401D75 50 PUSH EAX
说明楼主stolen不正确
|
能力值:
( LV2,RANK:10 )
|
-
-
20 楼
最初由 peaceclub 发布 你可以断在38760d那里的popad retn那里,然后逐步f7跟踪,中途还有个异常,用好seh链就好. 对于断点检查,搜索cmp al,0cc 把这个改成cmp al,0之类的就可以了。
to楼上: 1、不能跟你比,你丫的多疯变 ........
38760d 这个地址每台机器都不是一样 是在那一步后可以开始找被偷的代码?
能说详细点吗
|
能力值:
( LV2,RANK:10 )
|
-
-
21 楼
最初由 forgot 发布 发现楼主重大bug,我用unpacker脱后
00401D60 > 55 PUSH EBP 00401D61 8BEC MOV EBP, ESP 00401D63 6A FF PUSH -1 ........
没有什么不一样的。其实push 0同push -1在这里区别不大,你就是push 1都可以。
|
能力值:
(RANK:1060 )
|
-
-
22 楼
你对vc 的seh不了解,这个是dispatch表的结尾
不过这个一般不影响运行。
|
能力值:
( LV2,RANK:10 )
|
-
-
23 楼
我看是你对VC的SEH不了解,SEH还需要什么标识?
00401D6A 68 E61E4000 PUSH <JMP.&msvcrt._except_handler3>
00401D6F 64:A1 00000000 MOV EAX, FS:[0]
00401D75 50 PUSH EAX
这个才同SEH相关.SEH链表只认fs:[0].
VC编译时OEP的确初始化都是push -1,但是根本就不用这个值,因为马上离OEP不远就修改成push 0,不信你跟踪看看.
|
能力值:
(RANK:1060 )
|
-
-
24 楼
无语,我是说vc封装的,你多复习吧。
我说楼主stolen trace错了,你扯出这么多废话干啥。
|
能力值:
( LV2,RANK:10 )
|
-
-
25 楼
何况楼主在文中已经特别强调这点,你还说重大BUG,应该算是鸡蛋挑骨头。
00401D63 |. 6A 00 PUSH 0 **注意:此处正常为push -1,壳作者把它修改了,我们也照旧吧***
|
|
|