吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 7243|回复: 9
收起左侧

[原创] 修复吾爱OD的一个插件Anti-Anti-Debug问题

[复制链接]
蚯蚓翔龙 发表于 2015-2-13 16:31
advancedolly修改后的.zip (51.47 KB, 下载次数: 164)
附件下载



最近总发现有利用
GetStartupInfo来检测OD的,如CM区的http://www.52pojie.cn/thread-328996-1-1.html检测OD其中也有用到这个方法


以前就在看雪看过那篇利用GetStartupInfo来反调试的文章
借用大牛文章下
http://bbs.pediy.com/showthread.php?threadid=31447
http://www.52pojie.cn/thread-178161-1-1.html

OD创建进程CreateProcess
[Asm] 纯文本查看 复制代码
00477934  |.  52            push    edx                              ; /pProcessInfo
00477935  |.  51            push    ecx                              ; |pStartupInfo
00477936  |.  8D85 DCFDFFFF lea     eax, [local.137]                 ; |
0047793C  |.  8D8D 50E7FFFF lea     ecx, [local.1580]                ; |
00477942  |.  50            push    eax                              ; |CurrentDir
00477943  |.  6A 00         push    0x0                              ; |pEnvironment = NULL
00477945  |.  8B55 FC       mov     edx, [local.1]                   ; |
00477948  |.  81CA 22000004 or      edx, 0x4000022                   ; |
0047794E  |.  52            push    edx                              ; |CreationFlags
0047794F  |.  6A 00         push    0x0                              ; |InheritHandles = FALSE
00477951  |.  6A 00         push    0x0                              ; |pThreadSecurity = NULL
00477953  |.  6A 00         push    0x0                              ; |pProcessSecurity = NULL
00477955  |.  51            push    ecx                              ; |CommandLine
00477956  |.  6A 00         push    0x0                              ; |ModuleFileName = NULL
00477958  |.  E8 73760300   call    <jmp.&KERNEL32.CreateProcessA>   ; \CreateProcessA


而strongOD早就在07年解决了,但是因为advancedolly.dll问题又出现了,今天早上跟了下发现是advancedolly把地址00477958处的CreateProcessA处給 inline hook了,把OD本来要调用的CreateProcessA换成了在它自身的调用,导致SOD在创建进程所做的那些事都没用了,包括下图那三个选项怎么选都没用到的

2.jpg
1.jpg

本想nop掉advancedolly的WriteProcessMemory但因为advancedolly插件hook后接下去还做了一堆事,就只能考虑还原CreateProcess了,随便JMP到空隙的地方补上下面代码,配置advancedolly.dll 我也试了没效果
3.jpg
[Asm] 纯文本查看 复制代码
03348E8C    60              pushad
03348E8D    8B4424 44       mov     eax, dword ptr ss:[esp+0x44]
03348E91    E8 00000000     call    advanced.03348E96
03348E96    5D              pop     ebp
03348E97    3E:8985 A931000>mov     dword ptr ds:[ebp+0x31A9], eax
03348E9E    61              popad
03348E9F    BB D0EF4A00     mov     ebx, 0x4AEFD0                    ; 入口地址
03348EA4    90              nop
03348EA5    FFD3            call    near ebx
03348EA7    90              nop
03348EA8    90              nop
...
03348EAF  ^\E9 1D9BFFFF     jmp     advanced.033429D1


我改了几次了,刚开始总没考虑到重定位那些总出错,我的补丁代码没怎么考虑全面汇编也没学好,不过我的步骤就那样,有兴趣就继续完善好了
4.jpg

这个插件能我用得久了,总不想抛弃
这样稍微修改就能跟SOD一起用过那个GetStartupInfo检测了


没什么技巧好言,修改的后的dll在上面,我在win8 32测试成功了,其实只想发个帖...冒泡下...



免费评分

参与人数 4威望 +2 热心值 +3 收起 理由
CarroAro + 1 很久没看到技术文了!
Hmily + 2 感谢发布原创作品,吾爱破解论坛因你更精彩.
Avenshy + 1 小伙子有前途啊!拿我的CM开刀!
Syer + 1 已答复!

查看全部评分

本帖被以下淘专辑推荐:

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

w7267377 发表于 2015-2-13 16:42
支持一下 都是大神
Avenshy 发表于 2015-2-13 16:53
本帖最后由 000000 于 2015-2-13 16:57 编辑

楼主不错。针对上我的CM了。。
那CM有4个检测OD方法,这只是其中一个。

顺便送大家一个 GetStartupInfo 检测OD的源码
GetStartupInfo检测源码.rar (1.38 KB, 下载次数: 25)

免费评分

参与人数 1热心值 +1 收起 理由
Hmily + 1 欢迎分析讨论交流,吾爱破解论坛有你更精彩.

查看全部评分

william2568 发表于 2015-2-13 17:07
Hmily 发表于 2015-2-13 17:11
一直没搞明白,strongod用了以后,advancedolly插件还有什么互补的吗?
 楼主| 蚯蚓翔龙 发表于 2015-2-13 18:38
Hmily 发表于 2015-2-13 17:11
一直没搞明白,strongod用了以后,advancedolly插件还有什么互补的吗?

还是有些比较方便的小东西,比如窗口最大化,堆栈窗口中有个反汇编跟随这些吧...
117578111 发表于 2015-2-24 15:52
干嘛用的~
7515组 发表于 2016-3-28 14:56
谢谢分享,正需要。。。。。
sswockssw 发表于 2017-7-26 23:31
可是有一些程序启动后破坏od,然后导致od重新打开就无法载入文件了,这个是什么鬼

点评

这得看具体破坏了什么,无法载入文件的原因可能很多  发表于 2017-8-4 17:19
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2025-1-8 21:58

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表