- 1、本文档共12页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
OD使用教程4 - 解密系列【调试篇】 调试逆向知识讲稿.ppt
OD使用教程4
去除NAG窗口
nag本意是烦人的意思,nag窗口是软件设计者用来时不时提醒用户购买正版的警告窗口。
软件设计者可能认为当用户忍受不了试用版中的这些烦人的窗口时,就会考虑购买正式版本。
但在我国特殊国情嘛,我们是不允许有这样欺负用户的软件设计的…所以小甲鱼教大家“替天行道”?错了,我们只是在探讨技术细节。
一般nag在程序启动或退出的时候弹出来,或者在程序运行的某个时刻突然蹦出来吓你一跳。
去除NAG窗口
今天的课程小甲鱼将教大家不同的几种方法来去除烦人的NAG窗口。
一般情况下,一个注册后的软件,他是不会弹出NAG窗口的。
所以,一般在程序启动的时候,他会有一段代码检查改程序是否已经被注册,我们可以先把这个程序的注册破解掉,NAG窗口即会自动消失。
不过这节课小甲鱼要教给大家的是新的技巧:去除NAG窗口的几种方法。
去除NAG窗口
好滴,先上菜:RegisterMe.exe
把程序跑一遍之后我们发现程序有两个NAG,一个是在程序界面启动前出现,另一个是在程序关闭后出现的。
好了,这是一个很简单的程序,如果前边几讲的知识都掌握了,鱼油们应该可以自己动手解决!
还在等什么?把视频暂停,然后开始吧。这节课我们会讲大概四种方式来去掉nag。哈,但不是懂了就可以不听课哦,会有很重要的内容滴。
PE结构
为什么需要了解PE结构?
大家想象一下,某天在班上,小甲鱼突然想知道黑夜童鞋今天穿什么颜色的裤子,要怎么办呢?点名让黑夜童鞋站起来?不行,因为苍老师在上课呢。那小甲鱼就只好掏出班级里的座位名单,然后找到黑夜的名字,看是在第几行第几列就找到了,然后在看他的裤子是什么颜色,对啵?
其实如果把PE结构比作我们刚才提到的班级,那么座位名单就是PE文件头啦~
PE文件结构
PE文件结构:
DOS header
DOS stub
PE File Header
Image Optional Header
Section Table
Data Directories
Sections
No picture you say a J8…
PE文件结构
PE文件结构
这个社会太复杂了,许多东西都蒙蔽了我们的双眼,而真相有时候确是如此简单╭(╯3╰)╮。
本质上,最下边的节区(有些人也叫区块)是运行一个程序真正需要的内容。
上边所有的“头”都仅仅是帮助Windows加载器定位和寻找下边的节区的内容。
在PE文件头中,这节课我们需要知道的是如何找到AddressOfEntryPoint即可,更多详细内容可以看下小甲鱼的《解密系列》系统篇|PE结构。
小结
GetModuleHandleA这个API函数用于获取程序的ImageBase(基址)
这个程序的MessageBox的OwnerHandle(父窗口句柄)为0(NULL),我们可以将这个值改为一个不存在的值,例如1,这样它就找不到老豆,就不会被显示出来。
名词注释:
VA(VirtualAddress,虚拟地址)
RVA(RelativeVirtualAddress,相对虚拟地址)
EP(EntryPoint,程序入口点)
课后作业
同样的程序,但做了一些手脚,大家自己动手试试能不能把这个程序的两个nag窗口去掉?
作业程序下载:RegisterMe.Oops.exe
我们下节课将要讲解的内容涉及PE文件头知识,PE文件头的相关知识小甲鱼在《解密系列》系统篇已经有详细讲解,有兴趣的朋友可以参考下。
文档评论(0)