- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第二十章-OllyDbg反调试之检测OD进程
名
本章我们介绍通过查找OD进程名来进行反
调试技巧,首先我们有必要对OD进行相应
的设置。
我们选择主菜单项Option-Debugging opt
ions-Security。
我们可以看到这里有3个复选框,我们知道
通常情况下,我们给某个API函数设置断点
,当我们重启OD后,刚刚给API函数设置的
断点就被清除了。但是勾选上这3个复选
框,再给API函数设置断点,重启OD后我们
会发现刚刚设置的断点依然存在,这就避
免了重启OD后需要重新给API设置断点的
麻烦。
实际上,我也不知道OD关于这个功能的实
现原理,我们只需要知道这3个复选框可以
让我们设置的API断点在OD重启后仍然有
效。
这个设置我觉得很有必要,避免了很多麻
烦,现在我们开始讨论通过查找OD进程名
来进行反调试的话题吧。
打开OD,接着通过Ctrl+ Alt + Delete快
捷键打开任务管理器。
我们可以看到进程名称列表,我们可以通
过检测进程名称是否为OllyDbg,如果是就
结束进程,哈哈。
我们来看一个CrackMe,这个CrackMe运用
我们前面介绍的知识暂时还解决不了,我
们只是来看看它是如何检测OllyDbg的进
程名,以及我们如何来绕过它的检测,嘿嘿
。
这个CrackMe的名字叫做daxxor,如果我们
先运行这个CrackMe,然后打开OD,会发现O
D马上就退出了。如果我们用OD加载该Cra
ckMe然后运行起来,会发生两者一起退出
了。
如何来应对这种情况呢,我们先用OD加载
这个CrackMe。
停在了入口点处,我们先看看该程序使用
了哪些API函数。
我们可以看到有很多API函数,但都不是用
于检测进程名的,可能这些重要的API函数
被隐藏起来了,没有出现该列表中。
很显然如果程序不直接导入某些API的话,
会使用GetProcAddress这个API 函数来获
取这些API函数的地址进行间接调用。
使用GetProcAddress函数加载的一些API
函数并不会出现该API函数列表中,我们给
GetProcAddress设置一个断点。
运行起来。
断在了GetProcAddress的入口点处,当前
待获取的函数是__CPPdebugHook,该函数
检测进程名没有关系,继续运行。
我们继续按F9键运行直到待获取的API是
与检测进程名相关的为止,这里待获取的A
PI函数是EnumProcesses,这里通过选择主
菜单项Debug-Execute till return执行
到返回,这个时候EAX寄存器中保存的就是
EnumProcesses这个API函数的地址了。我
们接着就可以给该地址设置断点了。
这里EAX就保存了EnumProcesses的函数地
址,我的机器上是76BB3A9A (可能与你机器
上的不一样)。
另外,OD的API的函数列表中并没有列出En
umProcesses这个名称,所以我们直接bp E
numProcesses是设置不了断点的,我们可
以给EnumProcesses函数的地址设置断点
。
设置成功了。
好了,我们已经给EnumProcesses设置了断
点,继续我们刚才的步骤,看看还有什么AP
I函数被加载。
这里是获取枚举进程模块函数的地址,我
们还是执行到返回,接着给EAX中保存的地
址设置断点。
我们直接在命令栏中输入bp EAX。
同理,我们给所有与检测进程名相关的API
函数设置断点。
这里是另外一个可疑的API函数GetModule
BaseNameA,我们跟之前一样给该函数设置
断点,然后我们运行起来,断在了EnumProc
esses函数的入口处。
我们通过双击反汇编窗口的注释区域来给
该函数添加注释,注释上该函数的名称Enu
mProcesses。
我们给这些通过GetProcAddress加载的AP
I设置断点,并且断下来了,但是OD并没有
在API函数列表中找到与之对应的项,所以
OD也没有提示该函数相关信息。
我们谷歌一下 “EnumProcesses”。
找到一个微软的网站页面:
/en-us/lib
rary/ms682629.aspx
上面的解释是该函数返回正在运行的每个
进程的标识即PID。好了,接下来我们看看
神马是PID,嘿嘿。
PID是系统分配给每个正在运行的进程的
标识符-每次启动的时候都会发生变化。
我们来看看进程列表。
您可能关注的文档
- 糖尿病教育-01-糖尿病基础知识.pptx
- 糖尿病教育-02-从关键指标看糖尿病的诊断与治疗.pptx
- 糖尿病教育-05-糖尿病降糖药物的选择.ppt
- 糖尿病教育-08-HbA1c测试介绍.pptx
- 糖尿病教育-09-糖尿病与并发症.pptx
- 糖尿病教育-11-关注下肢血管病变和糖尿病足.pptx
- 糖尿病教育-12-β细胞功能知多少.pptx
- 糖尿病教育-16-体重控制.pptx
- 糖尿病教育-17-肥胖糖尿病患者的治疗与管理.pptx
- 人工神经元网络模型.pptx
- 使用OllyDbg从零开始Cracking-21第二十一章-OllyDbg反调试之检测OD进程名,窗口类名,窗口标题名.pdf
- 使用OllyDbg从零开始Cracking-22第二十二章-OllyDbg反调试之UnhandledExceptionFilter,ZwQueryInformationProcess.pdf
- 使用OllyDbg从零开始Cracking-23第二十三章-OllyDbg反调试之ProcessHeap,NTGlobalFlag,OutputDebugStringA.pdf
- 使用OllyDbg从零开始Cracking-24第二十四章-OllyDbg反调试之综合CrackMe.pdf
- 使用OllyDbg从零开始Cracking-25第二十五章-异常处理.pdf
- 使用OllyDbg从零开始Cracking-26第二十六章-Visual Basic程序的破解-Part1.pdf
- 使用OllyDbg从零开始Cracking-27第二十七章-Visual Basic程序的破解-Part2.pdf
- 使用OllyDbg从零开始Cracking-28第二十八章-Visual Basic程序的破解-Part3.pdf
- 使用OllyDbg从零开始Cracking-30第三十章-P-CODE-Part2.pdf
- 使用OllyDbg从零开始Cracking-31第三十一章-脱壳简介.pdf
最近下载
- MX480路由器操作手册.doc VIP
- 医学课件-神经内科常见病.pptx VIP
- 电子支付与网络金融复习资料.doc VIP
- 2025年项目管理公司组织架构、岗位、职能设置方案.pdf VIP
- 2024安徽长丰科源村镇银行员工招聘20人笔试历年典型考题及考点剖析附带答案详解.docx VIP
- 普通心理学第五版PPT完整全套教学课件.pptx VIP
- 2023安徽长丰科源村镇银行招聘5人笔试历年典型考题及考点剖析附带答案详解.docx VIP
- 《GBT13341-1991-质量损失率的确定和核算方法》.pdf
- 节约用水条例培训解读课件.pptx VIP
- 山东省临沂市蒙阴县第一中学2024-2025学年高三下学期第三次模拟考试语文试题(含答案).pdf VIP
原创力文档


文档评论(0)