能力值:
( LV2,RANK:10 )
26 楼
DebugActiveProcess 最后调用这里
7C970082 > 8BFF mov edi, edi
7C970084 /. 55 push ebp
7C970085 |. 8BEC mov ebp, esp
7C970087 |. 56 push esi
7C970088 |. 64:A1 1800000>mov eax, dword ptr fs:[18]
7C97008E |. FFB0 240F0000 push dword ptr [eax+F24]
7C970094 |. FF75 08 push dword ptr [ebp+8]
7C970097 |. E8 34D1FBFF call ZwDebugActiveProcess
7C97009C |. 8BF0 mov esi, eax
7C97009E |. 85F6 test esi, esi
7C9700A0 |. 7C 16 jl short 7C9700B8
7C9700A2 |. FF75 08 push dword ptr [ebp+8]
7C9700A5 |. E8 97FFFFFF call DbgUiIssueRemoteBreakin ; 这一个
7C9700AA |. 8BF0 mov esi, eax
7C9700AC |. 85F6 test esi, esi
7C9700AE |. 7D 08 jge short 7C9700B8
7C9700B0 |. FF75 08 push dword ptr [ebp+8]
7C9700B3 |. E8 09FFFFFF call DbgUiStopDebugging
7C9700B8 |> 8BC6 mov eax, esi
7C9700BA |. 5E pop esi
7C9700BB |. 5D pop ebp
7C9700BC \. C2 0400 retn 4 看看这里是创建一个远线程在对方进程执行CC断下
7C970041 >/$ 8BFF mov edi, edi
7C970043 |. 55 push ebp
7C970044 |. 8BEC mov ebp, esp
7C970046 |. 51 push ecx
7C970047 |. 51 push ecx
7C970048 |. 56 push esi
7C970049 |. 57 push edi
7C97004A |. 8D45 F8 lea eax, dword ptr [ebp-8]
7C97004D |. 50 push eax
7C97004E |. 33F6 xor esi, esi
7C970050 |. 8D45 08 lea eax, dword ptr [ebp+8]
7C970053 |. 50 push eax
7C970054 |. 56 push esi
7C970055 |. 68 E3FF967C push DbgUiRemoteBreakin ; 替换掉这里就行了
7C97005A |. 56 push esi
7C97005B |. 56 push esi
7C97005C |. 56 push esi
7C97005D |. 56 push esi
7C97005E |. 56 push esi
7C97005F |. FF75 08 push dword ptr [ebp+8]
7C970062 |. E8 03DFFDFF call RtlCreateUserThread
7C970067 |. 8BF8 mov edi, eax
7C970069 |. 3BFE cmp edi, esi
7C97006B |. 7C 08 jl short 7C970075
7C97006D |. FF75 08 push dword ptr [ebp+8] ; /Handle
7C970070 |. E8 5BCFFBFF call ZwClose ; \ZwClose
7C970075 |> 8BC7 mov eax, edi
7C970077 |. 5F pop edi
7C970078 |. 5E pop esi
7C970079 |. C9 leave
7C97007A \. C2 0400 retn 4 目标进程破坏 DbgUiRemoteBreakin 这个函数 就不能正常附加 如果对方在这个函数里调用exit 就会退出进程
anti anti 就是替换掉这个函数 具体怎么写 自己去实现 最简单的 直接不执行这里 附加成功后 暂停一次就OK了
7C970055 |. 68 E3FF967C push DbgUiRemoteBreakin
能力值:
(RANK:1130 )
27 楼
LS的方法思路不错
不过还是可以anti,呵呵
能力值:
( LV2,RANK:10 )
28 楼
风月大大是航天人才啊?
能力值:
( LV9,RANK:170 )
29 楼
海风定力够好,坚持到辩论双方亮出底牌才出手
我也是一直下一页下一页一直等到海风出现(有点跟屁虫的味道
)
能力值:
(RANK:330 )
30 楼
风月教主出手了
能力值:
( LV8,RANK:130 )
31 楼
风月的方法才是王道
能力值:
(RANK:1130 )
32 楼
我工作太忙了,哪有空时时盯论坛啊
能力值:
( LV2,RANK:10 )
33 楼
看来几位大大的辩论。我感觉我还是得潜水,等我成牛了。我在调侃菜鸟吧。
能力值:
( LV4,RANK:50 )
34 楼
风总再多招几个小弟吧
能力值:
( LV15,RANK:2473 )
35 楼
去趟火星就像回家一样
能力值:
(RANK:1130 )
36 楼
每次回家我都要膜拜一下上面两位偶像
能力值:
( LV2,RANK:10 )
37 楼
原来好多火星人
能力值:
( LV4,RANK:50 )
38 楼
确实牛掰,说话都不一样~
不过我也想知道如何做到的呵呵
CreateRemoteThread以及之前的WriteProcessMemory貌似都需要 process handle了
而如何不用OpenProcess得到handle了。俺都还不懂
楼主教教我吧。我们共同进步
能力值:
( LV8,RANK:130 )
39 楼
Ring3下使用Duplicate可以得到。。
能力值:
( LV9,RANK:230 )
40 楼
楼上的都是我的偶像。
这类问题的原理也困惑着我。NOOBY的回帖对我有启发,回去再慢慢理解一下。
能力值:
( LV2,RANK:10 )
41 楼
俄罗斯网站有介绍anti-attach的文章,有几种方法,strongOD里 anti anti-attach就是针对这些做出来的,这些技术怎么在中国网上就这么难找
能力值:
( LV2,RANK:10 )
42 楼
能力值:
(RANK:1130 )
43 楼
[QUOTE=圣新冰心;619650]
http://nezumi-lab.org/给个地址自己去看,是英文的 [/QUOTE]
看一下帖子,老外是09年2月14号发布的方法
再看一下我StrongOD的更新记录
[2008.08.10 v0.15] 1,增强查找模块功能(能正确查找处理过peb的模块,比如ring3的隐藏模块) 2,增强OD对文件Pe头的分析(如Upack壳等)3,anti anti attach (一种极端的方式) 4,脱离目标程序不再调试(DebugActiveProcessStop)功能,xp系统以上 5,注入dll到被调试的进程 a) Remote Thread(使用CreateRemoteThread注入) b) Current Thread(shellcode,不增加线程方式注入,当前线程必须暂停)
08年8月10日的版本已经过了他所有的tricks,他的tricks不够猥琐,还没我在某个论坛N年前贴的代码管用
能力值:
(RANK:1130 )
44 楼
能力值:
( LV2,RANK:10 )
45 楼
支持,你说得有理,你的插件很管用。提高破解过程效率。拜读
能力值:
( LV2,RANK:10 )
46 楼
attach是绝对的,anti-attach是相对的,因为attach是win操作系统提供的标准功能,你在ring3上怎么anti-attach都是假的,因为很难绕过操作系统。除非在ring0上anti-attach还可能有点效果。
能力值:
(RANK:210 )
47 楼
你懂个毛阿?又出来扯淡了
能力值:
(RANK:1130 )
48 楼
你写几个有效的方法来给大家学习学习
能力值:
( LV2,RANK:10 )
49 楼
反对吵架,支持nooby
能力值:
( LV2,RANK:10 )
50 楼
是你懂个毛?你出个anti-attach来。我来anti-anti.
你连wl用什么注册算法都不懂,还有资格说话?你以为你会vmp破解有什么了不起?