00:00
然后我们这节课呢,开始讲我们的Windows PE结构啊,PE结构这个东西呢,在我们的逆向工程中啊,还是很重要的一个东西啊,主要是Windows件工程部分啊,然后呢,这个东西呢,我们呃,大致上呢,会讲它的格式,会讲如何去写代码解析的啊,会讲如何去分析它啊,然后如何去这个修改它,破解它啊,这一系列的东西啊,以及啊与它相关的类似于注入啊,以及一些这个相关的二进制安全的一些技术啊,就是说呢,我们的这个二进制WINDOWS1批详解这门课呢,它不止是解析啊,也有其他很多其他的内容啊,那我们这节课呢,是第一节课,我们先来这个了解一下这东西,以及讲一下这个呃,各种各样的这个工具啊。呃,老板就是你楼上那个火龙果啊,你可以直接找他就行了。好,然后呢,我们右键啊,给我我这个玩意儿,我说它干什么是不是啊,我们就创建一个文本啊。
01:12
好,我们首先记录一下啊,我们这节课开始讲的这个东西呢,是Windows啊PE结构,这个PE结构呢,其实呢,就是我们Windows下的可执行程序的一个统称。啊,统称。啊,这个东西呢,是什么呢?就比如说我们常见的啊,常见的PE结构,常见的PE结构包括啊包括啊这个比如说我们的exe啊,点exe后缀的啊,这个呢,我们可以直接看啊,就是我们这种文件啊,实际上都是exe啊,我们直接右键属性啊,可以把它打开看一下啊,你可以看到都是以exe为后缀的,那么如果说你在你的电脑上啊,如果你是个WIN10系统啊,你看不见它的后置啊,那可能是你没有开后置缀这个选项啊,开后缀这个选项呢,你可以这样做啊,比如说我这是开了后缀的,你可以看到点7Z啊,然后呢,点击查看,查看这儿呢,有一个文件扩展名,你把它勾选掉之后呢,这个就是看不到后缀了啊,然后点上之后就能看见后缀。
02:18
好,那么这个呢,就是我们的第一种啊PE文件,就是我们的EE,那还有什么呢?就包括我们的这个SYS啊,也就是什么,就是驱动啊,驱动的这个也是什么,也是我们的这个PE结构啊,还有就是什么,还有就是我们的这个DL啊,DL的什么动态链接库啊。这三种东西呢,都是我们这个Windows下的常见的可执行程序啊呃,我现在这节课呢,需要什么呢,需要你一定的基础啊这门课。这门课需要一定的基础啊,我们首先需要C语言的基础啊,我或者说我们要C加加啊,加加asm汇编啊,汇编的技术,还有什么,还有我们的这个一定的这个系统编程的,这个系统编程的这么一个知识啊,那么刚刚好这三个东西我们都是有这个公开课的啊,然后呢,你可以去我们的B站首页上啊可以看啊,然后呢,包括我们的汇编和这个C啊,都是有系列课的,系统编程呢,也有也有这个部分系列课啊,当然它虽然说不全,但是让你学这门课啊也是够用了的啊,这个领取呢,你可以直接去B站看,也可以找咱们的老板来进行领取,然后咱们这门课呢,会用到一些工具啊,这些工具呢,我可以在课后啊打包着这个。
03:42
工具课件。代码会打包是。啊,我的痣呢?打包是百度云盘啊,然后呢,你可以去找什么,去找老满领取啊,去找老板领取啊,这个是啊,然后呢,我们这门课呢,因为涉及到的这个东西比较多啊,所以我们的这个开发过程呢,会涉及到很多的这个语言啊,就是包括我们C下家汇编啊这种东西啊都会用到啊,而且呢,IDE呢也会用到几种,比如说呢,我们可能会用到我们的这个VS2017啊,会到用到我们的这个啊red asm,然后呢,我们调试类的呢,可能会用到这个我们的only debug,然后会用到我们的这个叉八六叉六四啊,叉八六和叉六四的这个呃,Debug还有什么呢?还有就是我们的这个IDA pro。
04:50
啊,还有类似于这个呃,资源猎人资源资源猎人还有什么,我想想啊,我刚才打了个包啊,我这个都这个东西之后都会给老板啊,你们可以直接去找下啊,还有这个玩意儿,这个什么CFF资源管理器这个啊。
05:08
看看还有漏的皮。和这个010EDIT。啊,这里头呢,有什么东西我就不提供了呢,这里头这个我的呃V这个VS2017呢,因为它太大了,而且呢,这个东西是可以在我们的这个官网下载的啊,所以说呢,我们就不需要提供了,而这还有一个呢,就是我们的这个I idea pro这个东西是怎么回事呢?这东西它有版权啊,它因为版权的问题啊,它没有破解版啊,不是它它是有这个泄露版,但没有破解版,它都是存在版权问题的,所以这个东西呢,需要你去网上自己下一个啊啊这两个东西是我没有办法对进行提供的啊,剩下的这些呢,我都可以给你打个包啊,啊你像是这个only呢,它在2RED的这个asm里是有一个现成的啊,你安装完这个red asm,它only debug就自带了啊,这两个东西呢,也可以从官网下,我们可以直接在这个搜一下啊,就是叉叉86BUG。
06:17
啊不对,我们我们收X64D bug可能搜的比较快啊,就这个啊,你看到没,他是有网站在的。啊,我这个网可能比较卡,然后你这个自己下一下就行了啊,当然我也可以给你们打个包啊,这都无所谓,嗯,剩下的呢,你像是这几个啊,我都已经给你们打包好了啊,然后呢,我们这节课呢,就开始来讲一下这些工具啊,都是怎么回事儿,然后我们批文件啊呃,一些基础的这个修改啊,然后使用这些工具啊,做一些小实验。好,那么我们现在呢,首先呢来干第一件事儿啊,就是我们现在呢,先来了解一下,因为我们要使用这个C加加汇编啊来写这个代码,就以说呢,我们先来了解一下这个开发相关的一些工具啊,比如说我现在呃,如果要使用这个呃VS2007啊这个东西呢,在这个官网上可以下载啊,你可以直接去这个呃V呃,MSDN上边啊,不是MSDN,我告诉你啊,是MDSDN啊,当然你去我告诉你上边也能下到啊,它是一个工具人,然后这上边呢,就可以找到这个Windows相关的这种各种系统啊,还有这个工具,比如说你开发人员工具,你点开之后,它这边就有各种各样的visual studio啊,我们用的是这个studio的这个2017的一个版本啊,然后这些你任意选一个啊就行了啊,它这上面有这个公共版的,企业版的和这个专业版的啊,你如果没有什么特殊的需求的情况下,你用社区版就行了,因为社区版是免费的,那如果你用这个企业版和这个其他版本的,你可能想办法要自己激活一下。
07:50
我们安装完之后呢,我们首先呢,在这里啊,文件打开新建一个项目啊,然后我们这里边默认情况下是没有汇编的啊,你要创建呢,就创建什么,就创建一个空项目就可以了啊,当然我们现在呢,可以干嘛呢,先创建一个空项目,然后呢,我们先干嘛呢?给他来写一个这个C加加的一个程序啊,因为我们先来看一下这个下家程序是怎么来搞他的。
08:13
我们现在啊,比如说我现在写一个这个may.ccpp啊给它创建,创建出来之后,我们首先包含一下我们的这个windows.h啊。因为我们一会儿要做个实验啊,所以说呢,我们顺手呢,就把这个代码给写出来啊,我们只要写一个简单的hello word类型的代码就行了啊,比如说我现在呢,有一个这个box a。它四个参数啊,比如说第一个是now,第二个呢是我们的内容,第三个呢是一个标题,第四个呢是我们的这个按钮类型啊。M Bo OK啊然后呢,我们要来暂停一下CS啊,右键呢,我们把这个项目呢,对它呢,做成一些设置啊,比如说我们在代码生成这啊,我们给它设置成MTD啊缓解关掉。
09:08
然后应用确定啊,我们重新生成。啊,生成成功了,我们把它拿出来啊,拿出来之后呢,我们在它上一节的debug里啊,把它拿出来,这个呢,我们可以给它稍微改个名字啊,然后也可以课后发给你们啊,你你们也可以自己写啊。我们我写题一个叫这个c target。啊,然后呢,我给他放到不放这个里边了,这个放单独的一个吧。啊,这里边儿呢,放的是咱们上课用的一些东西啊,然后他的这个代码我也给它放进去啊。啊,首先呢,我们现在呢,就可以来这个简单的看一个东西啊,就是我们这个东西,它已经就是一个PE文件了啊,那他写完之后呢,可以用一些东西来对它干嘛呢,进行一些这个操作啊,比如说我们刚才看到这些工具里头很多很多都可以操作它,比如我们现在呢,可以干嘛呢?可以用这个东西啊,这个东西CFF这个打开,然后你可以直接把你的P文件拖进去,拖进去之后呢,你可以看到啊,首先呢,它在这个第一个界面上,就给你这个显示一些这个基本的一些信息,包括它的这个文件路径啊,然后文件类型啊,可执行啊,可一直执行文件32啊,然后呢,它文件信息,文件大小,PE文件大小啊,包括它的一些创建时间和访问时间啊,以及它的MD5和一啊,然后底下这些东西呢,都是它的一些结构,比如说呢,我们每一个PE文件呢,都是有这个头啊,NT头里的NT头呢,里头有两部分,一部分呢是这个标准NT头,一部分是扩展N题头,也叫可选啊,然后这里边呢,还有什么可选头,里头包括这个数据目录表,这个数据目录表呢,你可以看到啊,有什么导入表,导出表。
10:55
啊,资源表,重定位表,延迟导入表,TLS表啊,然后这类东西啊,你可以看到,虽然说他写的都是英文的,但也不难不难理解啊啊然后呢,后边呢,还有什么,还有这些表,它是属于满某一个段里边的啊然后呢,还有这个底下呢,有一些表呢,它会给你做一个详细解析,比如说你这个导入目录啊,导入目录呢,比如说我这导入了这个U432和这个CRL32,然后呢,你在上边啊,直接点一下啊,点一下之后呢,再底下就可以看到啊,它这个里边的一些东西啊,比如说我们这些啊,就什么,包括我们都导入了什么样的这个API啊,什么样的API啊,我们都是有的啊然后呢,我们还有什么呢?还有就是这个它这里面没有导出表啊,不然我们我们这个写的程序没有导出啊,不然的话它还会有导出表,然后呢,我们看到这儿哈,还有这个资源啊,我们这里边的资源呢,也可以点开看啊,然后呢,还有我们的重定位啊,这些重定位这些东西啊,然后调试目录啊,这些东西我们在后续的课程中呢,也都会详解,以及带你们写一个解析啊,然后呢,这个呢,就是它的一些这个基本的一些这个功能。
11:55
啊,还有一些这个重建啊之类的东西,现在还有十例制实六建制,16进制编辑器这些东西啊,你暂时用不到啊,但是后续会用到啊,这个呢是一个批文件的技术解析工具啊,我们也会在这个文件包里给你提供啊,可以找这个老板领啊,我课后会给他,现在还没给他呢啊,所以说你暂时先啊,不用找他,下课之后再找他,然后呢,比如说我们还可以用这个lo PE啊,然后这个lo PE呢,可以有两种模式,一种呢是你可以看他的这个,呃,在他的这个什么,它在他的这个系统的一个进程列表里的这些这个这些东西啊,你可以直接右键,然后呢,给他这个载入到我们的PE编辑器里,然后来查看他的这个PE头啊什么的啊,然后呢,也可以看它的区段啊,你可以看到这是区段啊,各种各样的段,包括我们的可能代码段啊,指读代码段啊,什么资源表啊,什么字资源段什么的,然后还有我们的这个数据目录表,数据目目录表里包括什么导入导出啊这类的啊,跟刚才的其实也差不多,但是呢,它的显示格式是不太一样的啊啊一般情况下呢,我们在后边呢,写的一个会写一个。
12:55
地解析器啊,就是类似于这种的一个功能模式啊,然后呢,我们还有一些什么类似于区段这种东西,你还可以给它增加截啊什么的啊,还可以编辑合并啊,然后保存到直盘档出来,16进制编辑啊这类东西,然后还有可以这个编辑区段啊,这样啊功能还是比较全的,然后呢,比如说我们的这个时间标志啊,这不是有外头有一个时间标志嘛,你可以把这个时间日期标志啊复制出来,在这个时间标志这里啊,给他去干嘛?粘贴到这儿,然后点这边解码,你可以把它的这个创建时间啊给他这个解码出来。
13:26
啊,然后呢,我们把它这个关掉啊,这个东西啊,然后呢,还有什么一些其他的一个功能,这个呢,我们现在呢,就先不管它啊,我们之后呢,会在这个不断的这个学习过程中啊,来使用它们和这个研究它的原理,呃,这个呢是load PE啊,上面是上面是CF,然后底下呢,我们还有这个其他的工具啊,我们其他工具呢,我们就先不用这个东西来进行这个实验了啊,我们现在呢,就来用这个010EDITOR啊这个工具来进行一下实验啊,首先我们把这个东西拖入到010EDIT里,在默认的形式下呢,它其实是没有办法进行解析的啊,但是呢,010EDIT有一个很强大的功能叫做模板呢,我们可以借助它的模板能力啊,来对我们的这个东西进行一个解析,你可以看到它默认带了三个模板,分别BPZZP和的这个w a wa啊,那我们现在呢,可以用它的在线模板库啊打开。
14:16
打开之后呢,它会显示一个模板列表啊,然后我们现在要找的呢,是他的PE文件,但是我搜过啊,他没用PE这个名字,他用的ESE啊啊所以说呢,你可以看到啊,这个EE在这个位置上啊,我们现在呢,直接给它点开,它上面还有F文件啊,I文件呢,就是这个linus上的文件的一个格式啊,我们现在用这个E1.bt,我们现在啊ctrl a全选复制啊,CTRLC复制下来,然后呢,在我们的这个任意位置上啊,我现在呢,就给它来一个这个属性啊,给它放到他的这个同目录下啊,我们在啊,我这个东西没给他放进目录里是吧,那我现在直接右键啊,给他新建一个文件夹啊,就是这个010BT,哎,我写错了010VIT了啊。
15:03
010BT啊,然后进去啊,我们给它粘诶。啊,没没有新建文件啊,我们现在新建一个文件啊PE点啊这个BT啊是然后右键呢,我们用这个,呃,No派加加给它打开,打开之后呢,我们直接保存,保存完事之后呢,现在呢,我们可以来这边啊给它这个用模板,然后呢来打开模板,打开模板呢,我们选择一下我们刚才的这个路径啊,在我们的这个里有一个010BT啊选择现在呢,它就有这么一个东西了啊,然后呢,我们可以给它拖大一点。我们也可以给他直接放到上面去啊,那我直接托大吧。啊,但是呢,我们现在呢,就可以干嘛呢,可以直接按F5对它进行运行,但是你可以看到它这里是报错的啊。嗯,我这个给它归到上边来吧,这样的话比较好改啊,好,它报错的内容呢,是这一行有一个东西不行啊,它这个默认下的模板呢,确实是有问题的,所以呢,我们需要给他对它呢进行一个修改啊,而且这个修改的过程还挺麻烦的啊,首先这个东西需要是字符串,然后再摁F5啊,你可以看到啊,它这是又报了一个错,这是因为什么?我们改的时候啊,把它东西给改没了啊,我们现在呢把它退回退格回来啊,然后呢,我们现在呢给他修改啊。
16:26
修改F5在这这三个都要改啊。F5。F。啊,这个豹子串不一样啊,它这里说这里使用了这个,呃,没有这什么啊,没有的这个关键字啊,所以说这个关键字呢,我们需要手动给它去掉啊,那这个size没有的情况下,你就直接把它去掉就行了。
17:04
好,然后这删掉F5。F5,他说这有一个错误。这咋会有一个错误呢?点。啊,算了,我懒得改了啊,咱们直接偷懒吧,我这有一份改完的,我直接用这份得了,然后这份文件呢,我一会儿也会给大家放到这个课后的这个内容里啊,直接F5诶啊这回就可以了啊,然后这份文件呢,我会给直接大家放到你的这个资这个课件里啊,放到这。啊,大家可以找老满去领啊,因为它官网下的这个是有错误的啊,所以用不了啊,你这直接给你改好了啊,你用这个改好的就行了,然后回到这边来,你现在可以看到它底下就是NFNF5之后会给你生成什么,生成这些格式啊,这些结构对吧?那你把这个结构打开之后,你会看到啊,它里边呢,就有什么有一个每个字段啊,你看这这点啊,点哪个字段,它会底后边呢是有这个值啊,开始位置尺寸颜色啊,然后后边什么什么东西,然后呢,前上边呢,会告诉你某一个位置上啊,你看标栏的地方就是什么,就是它的这个字段是应该是是是在哪个位置上的,就这比如说我这个字段,它就是这两个字节,然后呢,我比如说我这里这个字段啊,就是什么,就是前两个字节啊,那这两个字节就是什么,就是我们字头的这个标志啊,就是4D5A mz啊MZ,这就是它的标志啊,你看后边这还有一个标志啊,这个什么这个PE啊,然后呢,我们把这个头给它打开NT头啊,或者说。
18:39
点这哎,你看它是什么,它是504500啊,它跟上面不一样,上面是什么?是这个16位啊两个字节,这是什么,这是32位四个字节啊,它虽然说前边只有这个5045是有值的,但是实际上后边的0000呢,也是属于它的一部分啊,所以说呢,这个呢也要放进去啊,然后呢,这个呢,我们接接下来呢就不往下说了啊,底下这部分呢,都是我们之后要讲解的一个内容,我们这节课呢,主要来讲一下这个工具怎么用啊,然后呢,我们下完010艾之后,你可以看到我们这个就已经可以直接啊使用这个啊BT脚本啊来对它呢进行一个解析了啊,并且改好的这个BT脚本以及也会发给这个老板,你们可以去领取啊,然后我们把这个东西就可以这个关掉了啊,关掉之后呢,我们接下来呢,就来这个看一个东西啊,就是我们的这个代码周期啊,这个东西也给大家放到这个文件里吧。
19:31
Apps啊,给你放到这啊,这个代码注入器呢,主要是能看见某一个进程啊,它都加载了什么模块,如果你们学过WIN32编程的情况下,你们应该知道啊,这个一个进程啊,它一个程序啊,它肯定不止只有一个EXSE的一个模块啊,它里头还有很多很多的拈啊,比如说我现在啊,把它打开,打开之后呢,我现在选择这里啊,然后呢,把它放上去,放上去之后呢,你可以看到这里边有什么啊,有很多很多的模块,只有它第一个呢,是它的一个组模块,是create price的一个点ESE文件,剩下呢,还有什么,还有很多很多的一个模块,这些模块呢,都是在它的运行中会用到的模块啊,比如说如果说你调用了一个这个其其其中啊NTDLDL是肯定会有的啊,然后呢,这个CTRL32一般也是会有的啊,然后呢,如果你用了类似于Mac bos之类的,那么U32就也会有啊,然后其他的呢,就是你用到了什么就会有什么,或者说会有一些这个呃,系统认为你会需要的,然后就会给你加上啊,就是这么样的,这个呢是主要用来看这个的,而且呢,它还可以进行什么,进行一个动态连接库的一个注入啊,这个在咱们系统。
20:31
编程那个公开课里头也是讲过这部分的啊,然后呢,我们把它关掉。关掉之后呢,接下来呢,我们看这么多工具里边,我们还有一个什么资源猎人的工具还没有使用过啊,那我们把这个资源猎人打开,打开之后呢,你可以看到它是这么一个状态啊,那么这样的一个状态,我们用这个文件打开也行,然后也可以干嘛呢,也可以直接把这个啊程序给拖进来啊,我这个样例程序我也给发给大家啊,我现在直接给大家放在我的这个呃,Files这个文件夹下啊,然后你们需要的情况下可以自己找,然后我们拖进来之后呢,大家可以看到这儿有很多很多的这个东西啊,这些东西呢,都是它的资源啊,这些资源呢,在哪看呢,其实我们可以用这个load PE啊,我们把这个文件呢,再放到load PE里啊,拖到load PE里啊,不对啊,我用这个PE这个啊,然后在桌面上。
21:18
找到我们这个进程,然后点击目录,然后呢,这儿有这个资源表,点击资源表这俩点点开之后你可以看到啊,这些资源是不是跟他一样啊,但是呢,这个资源表呢,你只能这样看,然后呢,用这个16进制编辑啊,这不太方便啊,那我们的这个资源猎人呢,它有个非常强大的功能是什么呢?就是你比如说我这有一个dialo啊,Dio是窗口的意思,诶你双击一点啊,你看到没,它就显示出来了啊,看到了吧?啊然后呢,甚至呢,你还可以干什么呢?你找一个,你比如说这个就是我们刚才看见的它的一个走主窗口啊,那我选择这个启动进程这个,那我我就可以干嘛呢?我可以我你看啊,它右键可以隐藏这个东西啊,也可以编辑这个东西,比如说我点击编辑,编辑完之后,你可以看到它就显示出来了,比如包括它的标题在内,比如说它的标题是correct process啊,我现在给它改成啊改成啊,那接下来呢,我点击一个OK啊,然后呢,比如说我这个选择文件啊,我也给他编辑一下啊,选择文件呢,我给呃。
22:15
嗯,选择文件我是啊选这啊双击啊双击,然后把它选择出来啊选择文件啊,我就给它直接改成一个file啊OK啊然后呢,这后边这个我就不改了,然后我现在随便找一个东西啊,然后我现在可以直接点这儿啊点这儿你看到没,这没脚本运行啊F啊这个F运行一下,运行完事之后呢,你给它保存啊,我现在是另存为啊导桌面上任意一个位置上,然后给它存一个副本,比如说呢,我现在呢给这个副本啊起个名字叫create process2啊点击保存,保存之后呢,它现在呢这就多出来了啊,然后双击运行诶你看它的标题是不是就变成了recover,然后呢这边呢就变成file,功能是没有变化的啊,但是呢,它上面的文字就变了,这是因为什么呢?因为我们把它的这个资源给改了啊,我们这个资源呢,其实本质上是类似于脚本的东西啊,然后呢,你可以看到啊,是这种状态的,并且呢,后边呢,有一些属性啊,比如说有一个按钮你不能摁啊,那这种情况下呢,它可能不是真的不能摁,而是什么,而是属性里啊设置了不能摁,这个时候呢,你把它的这个属性。
23:15
去掉的情况下呢,其实你就可以操作它了啊,那这样呢就比较方便啊好,那这个呢,就是资源猎人的一个作用啊,另外呢,资源猎人呢,还有什么呢?还还比如说你这儿有一些这个图啊,你看见一个这个工具,它的图标很好看,我想要啊,那怎么办呢?我比如说我这有一个图标啊,我这有一个MFC图标,找一个大点的,你看到这个啊右键啊,你可以看见保存啊,右键保存直接提取出来啊,提取出来之后你可以放到任意的位置上,然后呢,直接保存,诶你看桌面上一会儿啊解除诶。没写书吗?我们刷新一下啊,出来了啊,它需要刷新一下啊,你看它就找它就出来了啊,然后你找一个高清的版本,你就可以看到啊,你就可以继续干嘛,就去利用它了啊,所以说呢,现在呢,我们就干什么呢,我们就可以来啊,来使用这个啊,他这个点ICO文件了,这个呢,就是资源猎人的这个方便之处啊,可以帮你啊,就是快速的做一些修改和破解的工作,另外呢,你用这个东西呢,也可以做一些类似于汉化之类的工作啊,因为什么你可以看到刚才连按钮的这个标题都给我改了中文改英文了,对不对啊,所以说也是没有什么问题的啊,这个呢,就是我们资源猎人啊,我们好,那我们用完资源猎人之后呢,那么接下来呢,我们来这个,呃,做一个简单的小破解,然后呢,最后呢,我们再去这个讲如何的去这个,呃,如何去这个写汇编啊,我们现在呢,来给他写一个这个待破解的一个程序啊,嗯,我想一下啊,我们刚才不是写了一个这个exe文件吗?
24:44
不是有这么一个exe文件吗?我们双击啊,你可以看到啊,现在首先第一件事儿啊,我们这里这块啊,它显示的是我现在想把它改掉啊,那其实有几种方式啊,首先第一种方式就是我右键啊,我呃不是我直接拖到我的调试器里。
25:01
菜当上debug啊,我直接拖到我调试器里啊,那这是我们的调试器啊,那我们现在呢,首先呢啊来给它干嘛呢,介绍一下它的这些这个页面啊,首先这边CPU页面啊不是对啊,这边是那个防问编页面啊,这边呢是什么?这边是我们的寄存器页面,这边呢是堆栈页面,这边是内存页面啊现在呢,我们来这个给它转一下,因为它现在你可以看上边模块的NT dr.D里啊,这个主要是因为我们在选项里有一个选择,它会在这个系统断点断下来,而不是在这个入口断点断下来啊,那我们现在呢,直接F9啊,让他在我们的这个主拈断下来,然后我们现在呢,来给它右键啊这个搜索搜索一一下当前模块的一个这个字符串啊,然后呢,我们可以看到啊,这这个位置上有很多字符串,我们找到我们想要的这个字符串啊,双击进去啊,你可以看到这个瑞克在这个位置上,然后呢,我们啊给它这个按空格键啊,空格键起来之后,它有一个push一个地址,我们把这个地址拿到,然后呢,在内存窗口单击啊CTRL加G。
26:02
啊,然后呢,我们这个CTRL阿维把地址复制出来,点击确定,然后呢,在这个位置上你可以看到就有什么阿斯玛版的和这个二进制版的,你改哪边都行,然后呢,你选中选中它整体右键啊,然后呢,这个以二进制形式进行编辑,然后你就可以编辑了啊,这是它等长的啊,它也可以给它改成不等长的,比如后边还有三个零,你要留一个给它当什么当尾巴啊,那剩下你还可以多两个字节对不对啊,那现在呢,右键啊,你就可以右键啊,然后给它对它进行一个修改。呃,二进制编辑啊,然后编辑,比如说我现在啊,在ask这边进行修改,我现在呢,明明是一个这个零零,我可以改成1234567啊,然后点击确定,诶你看现在改完之后啊,我们运行一下啊,我们直接给它跑起来,跑起来之后呢,你看到这边它这边的内容就变成什么,就变成1234567了啊这是最简单的一个篡改啊,这个倒是我们基于什么,基于内存的一个串,一个篡改,如果你不是在这个给他的这个MP出去啊,重新改成一个新的EE的情况下呢,它这个是一次性的啊,就是比如说我现在CTRL加F2,我重新运行了它,我运行起来之后,你可以看到它这个东西会变回去啊,那个这个东西呢,是因为我们改的是内存里的东西,而不是什么,而不是它确定确实存在文件里的东西,那你还可以怎么改啊,你把这个东西拖出来,然后呢,我们放在这儿啊,然后比如说我们给它改一个这个目标2C,他给二,然后呢,我们把它啊我我搞错了,我把这个原文件拷贝出来啊,把exe拷出来。
27:31
啊,没点关注的点点关注啊,每周六周日都有直播啊,最近都会这个直播我们的这个Windows PE这个系列的课程啊好,那现在呢,我们把它拖出来之后呢,我们给它改一个名字啊,改个名字主要好认啊,然后放到这儿之后呢,我们现在呢拖进我们的010EDIT里啊现在呢我们也不需要给它跑模板,而是干嘛呢?而是我们直接CTRL加F进行搜索啊,现在呢,这是ask,呃,Ask string啊,我们现在直接搜,搜什么呢?搜我们刚才看到的字符串啊啊,然后直接一个find奥啊,你可以看到它就在这儿啊,前面MSG是它这个标题啊,这是这个require后边的一些东西,现在呢我们就可以对它呢进行一个修改,比如说啊,我现在啊,直接给它改成12334567,然后进行保存,保存完之后呢,你可以直接给它关掉啊,关掉之后你再双击它,诶,你看它是不是直接变成这个了,而且你无论重启几次。
28:27
他这个东西都不会变回去,因为什么,因为它在文件里啊,被映射的那块啊,那块文件已经被我们修改了,所以说呢,它是基于硬编码的修改啊,它就不会再变回去了啊,它不是像内存一样好,那么我们这个呢,就是对它呢进行了一个修改啊,这个东西呢,也给大家放在这儿啊,然后再接下来我们现在呢,就来给他再给他修改一个这个。再给他修改一个流程吧,啊,比如说我现在呢,给他写一个MFC的一个文件。项目啊,我们创建一个MFC的文件啊,然后呢,这个东西呢,也是一个,比如说叫DEMO01。
29:07
啊,点击确定。然后呢,我们选择这个基于对话框的啊,然后在静态库中使用MFC啊,点击下一步啊下一步,然后呢,标题也改一下。完成。好,完成之后呢,我们右键啊在属性里对它呢进行一些修改代码生成的MTD啊把这个环解库关掉,关掉之后点击应用,点击确定,然后呢点击原文件啊,点击点CP啊就到这儿了,接下来呢,我们在资源文件里点RC里边啊选择我们OGDIO呢选择我们主dialog,然后呢把它上面的东西呢都删掉啊,我们现在呢把它缩小,然后写一个最简单的CME啊我们现在呢在这边呢,找到一个这个ID的CR啊,把它ID crl拖到这边来。大。我把这个边界给它改小吧,要不然拖大了也有点丑啊,它边界改小。
30:07
哎,选不中了呢。好,然后呢,我们再拖一个button过来啊。还有八对准。右键属性啊,然后把他这个8万给他改成这个check。好,现在呢,给这个艾特呢,绑一个变量。啊,我们选择直类型,然后呢细菌啊细菌呢,比如说我们管它叫m edit。啊,点击完成啊,完成之后呢,我们在这个上边添加一个这个事件处理程序,在我们的主口的一个dialog里选择BN啊CL这个CD的这么一个,呃,消息类型,然后呢,把它函数名给它做一个修改。
31:03
啊,然后点击确定,确定之后呢,我们在这个位置,首先呢,要进行一个数据同步,上面是同步处,然后下边呢是给它同步,同步一个这个false好,中间呢,我们就来开始写这个内容啊,我们做一个判断,判断呢我们的这个呃,ID啊等于什么。如果我们的edit等于等于啊,然后那么我们就弹出mabox a。啊,少写个E啊。Now,成功。然后消息m BOK好,然后呢,再给他来一个什么,来一个失败的失败的分支啊,也就是说呢,他如果成功的输入了这个啊,那就是进入成功的,如果没有,那就进入失败的,这些东西很简单啊,但是呢,我们也能达到一个最基本的一个理解啊,我们首先重新生成。
32:28
好,然后呢,我们把这个东西拿出来啊,再拿出来之后呢,我们要记得把它符号删了啊,如果不删符号的情况下,你这个东西就呃不太好,就太容易搞了啊,然后呢,我们把它啊拿来粘到这儿。删到这之后呢,我们现在啊,打开打开之后呢,你随便输入点什么东西,哎,摁回车了,我没拦截那回车啊,点击check啊,它就是失败了啊,如果你点去呃,输入这个正确的情况下啊,你再点击它就是一个成功,那这个呢,就是属于什么最基础的一个破解逻辑啊,那首先呢,你这个东西上面是有一个按钮的啊,你可以找这个按钮,也可以找什么,也可以找刚才弹出来的东西,因为我们弹出来一个消息框,那么我们在Windows上能弹这种消息框的形式呢,也不是特别多啊,那我们按照最常规的逻辑,我们可以先找两种,一种是close,这个create window,一种呢是ma boxs啊,那看到它是MSC的标签,那我们首先第一直觉一定要先去找ma boxs或者a FX ma bos这种啊,那我们点击确定啊,那么这个时候呢,我们可以干嘛呢?先把它关掉,然后右键啊,给它这个啊,给它拖到我们的这个调试器里。
33:32
啊,那首先呢,我们呃按F9给它走到总模块上,然后右键啊搜索,如果你能确定它是主模块里弹的,你就直接总模块里,否则呢,你就找所有的用户模块,我这就确定它是总模块里弹的,所以说呢,我去干嘛呢,找它的所有跨模块选用或者字符串啊,你如果跨模块调用呢,你就现在呢,就去搜,搜什么呢?搜这个mes box啊,你可以看到就在这儿啊,然后随便选一个先进去啊找一下啊,看它是不是你可以看到这注释里啊,直接又有一个什么,有一个显示这个成功的这么一个东西啊,那它就是在这儿了啊,那么这种情况下呢,你就可以直接用了,还有一种是什么呢?还有就是你在这个上边呢,你搜索它的这个当前模块的一个字符串啊,字符串上面它不是弹东西了吗?啊,你可以在这搜索过滤结果,Su c suc,哎,SUCS啊,你看到没,是不是啊,那你双击进去啊,你可以看到也能找到这个位置,也就是说呢,你通过它模块的找找法啊,你要这个快模块调用的找法,也就是啊调用。
34:32
API的招牌,或者说调用什么,或者说给他找这种字符串的形式,都能找到这儿啊,然后呢,我们找到这之后呢,你可以看一下,这是成功,这是失败啊,它这有注释,那么这两个东西啊,肯定是有一个分支在的,对不对,你可以看到这有一个跳转啊,就是说什么,如果执行的这个成功这个分支啊,那这到这儿之后,它就直接干嘛,无条件跳转到底下,然后走了,它就不执行失败的分支了,那么我们失败分支是哪来的,你看前面有条线啊,这是辅助分析啊,如果没有的情况下呢,你可以干嘛呢?你可以摁CTRL就加A啊,然后对它呢,重新分析一遍,你可以看到这个分析呢,是从这儿来的啊,在这个位置来的,这个Z来的,也就是说呢,如果说它这记跳了,符合记忆的条件了,他就会直接跳到什么,跳到我们这边来啊,那所以说呢,你可以干嘛,你可以给它改成这个,它与之这个对应的,比如说你给他改成这个Z啊建啊点击这个确定啊,确定之后呢,我们现在呢,先给它运行起来。
35:28
啊,那我们现在呢,随便输入点东西啊,然后点击诶,你看是不是就成功了,这是因为什么?因为我们把它的条件啊给他逆转了啊,所以这种情况下呢,它是可以成功的,那还有就是什么呢?还有就是我们现在呢,刚才这个东西不是改成这个G了吗?啊,这是条件逆转形式啊还有一种呢,就是你把它这个编辑一下这条指令啊,给它保持大小,然后剩余直接以no填充啊,直接给它全删掉,然后呢,给它改成nope啊,然后呢,确定。诶,你看他就补出俩nope了啊,俩nope之后呢,你现在再去随便点击一下,它也是成功的,为什么?因为它在上边走下来之后,直接就往下走了,然后走到这个位置,从成功走完之后就直接跳过失败了,然后走过去了啊这是另一种方式,那么还有一种方式就是什么呢?还有一种方式呢,就是顺着他们两个往上走,看是什么东西导致了它这个进行跳转,你可以看到进行测试,这ECXECX这个这个东西来自于哪呢?来自于alla,来自于哪儿呢?上面的一个返回值,然后你看上面返回值来自于哪呢?啊在附近有一个S串啊,这种方式其实也能找到它真实的注册码啊,找到真实注册码,这种情况下,你其实可以直接输入真实的注册码,也是OK的啊,这是它的啊,也是一种这个破解模式啊好,那这个呢,就是咱们常见的几种这个使用的这个破解的这个简单思路啊,当然咱们后边的可能会讲一些其他的,然后呢,我们这个东西呢,也可以直接拖到我们的这IDA里啊,我们直接点击确定啊,然后点击OK啊,然后呢,Yes。
36:54
接下来他问你有没有符号啊,因为没有啊,直接弄啊,你虽然你有,但是你要假装你没有啊,破解的时候不能加符号啊,加符号就没有什么意义了。
37:07
然后呢,我们等它加载一段啊。啊,他还在加载啊,稍等。
38:06
我看一下这个啊,这导入表啊,这是导入表,这导入表就是PE里的一部分啊,然后我们来找一下啊,看看有没有这个我们的Ms ses ma bos啊有了啊有了之后我们可以直接选择啊可这个版本,然后按CTRL加X进行交叉引用啊,然后点击OK诶你看它就找到这了,找到这之后呢,这个呢,就跟刚才我们的这个呃,我们的呃这个叉六叉86DEBUG啊这个逻辑就非常接近了啊,但是呢,我们还可以给它更方便的就是你可以直接摁空格给它转成什么,转成这种啊这种逻辑啊,你可以看到上边是一个啊这字符串,然后上边进行对比啊,然后左边和右边成功和失败啊,然后你就知道啊,原来这个GC啊,它是什么,它是一个这个关键的一个跳转啊,但是呢,这个东西你看这是GZ啊,然后这个叉六是Z啊,这个不用这个纠结啊,因为它有不同的解释方式,这主要是调反调试器的一个问题啊好,那这是这个进行一个逻辑的一个排布,它还可以干嘛呢,直接按F5啊,然后点击这个。
39:04
确定OKOK,然后你可以看到啊,它就直接给你转换成什么,转换成这个这种模式了啊啊转换成这个伪代码的形式了,你可以看到它这有一个if啊,If就是用它啊,然后来对比什么,对比我们的这个啊啊然后呢,底下是成功与失败这么一个逻辑对吧?好,那这个呢,也是啊,还可以干嘛呢,还可以直接去找他的这个,我们在IDA里啊,我们也可以使用这个字符串的形式啊嗯,在哪来着。字符串窗口。诶啊,没完事呢,好,这会,哎哟,我操,我以为完事了。
40:03
哎,奇怪了。啊,这事忘了好出来了啊,这是字符串窗口啊,字符串窗口之后呢,我们可以直接找。诶,怎么卡住了。能听见我说话吗?啊,不知道为什么卡了一瞬间啊。好。能听见我就切回来了啊。好切换的L。
41:01
啊,这呢,我说怎么切一下我窗口还没了呢,啊不是是我这个是sus,好,你可以看到在这找到了一个Su c ss啊点击这,然后它前面不是有这个名字吗?我们CTRL加X啊直接交叉引用这个字符串,你可以看到一样是可以找到什么,找到我们这个逻辑的。啊,这个呢是使用静态的方式啊进行分析与破解啊,刚才那个是动态的方式,好,那这个呢,我们这节课呢,就不讲太多啊,因为我们这节课主要是一个预览课啊,然后呢,工具都是大概讲讲啊,那我们这个IDA呢,也简单的试验了一下啊,那接下来最后一项啊,今天的最后一项就是带大家啊来研究一下啊,我们这些东西的汇编啊是怎么写的,因为我们之后呢也会讲汇编,当然详细的汇编呢,我们是有一个公开课啊,整个的一个问wince汇编的一个系列课的啊,那个大家可以去看一下啊,可以找老板去领,然后呢,我们这个呢,就简单的告诉大家一下啊,这有一个这个red as red asm这个东西啊,这个东西很强啊,但是我们之前呢,是使用VS开发的啊,这个东西简单介绍一下啊,你可以看到新建的时候,它有一个编译器的一个选项啊,是使使用什么样的编译器,比如你可以使用NSM,可以使用msm都可以啊,然后呢,这里边呢,我们里头呢,还有一些这个选项啊,比如说它可以开发驱动啊,可以有这个DOS的啊,就这个com啊,还有这个控制。
42:22
APP啊,动目台连接库OCS library library静态库啊,然后这个,呃,这个n ma project啊,然后还有这个没有资源的WIN3APP,还有DOSAPP啊,那我们呢,通常情况下要么就是控制台APP,要么就是WIN32APP啊,那我们比如说我们选择一下控制这个WIN32的啊,你比如说这是一个win win32啊零一啊,这个一个DEMO啊,然后我们点击下一步,它可以选择一些模板,如果没有模板的情况下,它就一个空项目,有模板的情况下,它有这个基础模板啊,那比如说我现在呢,选择一下这个带了个APP啊,然后点击下一步啊,那接下来这些东西呢,是告诉你文件创建的时候都勾选了什么,这呢主要是有有的这个asm啊,源码IC头文件RC是那个叫做什么来着,RC是那个资源文件啊,然后我们点击下一步啊,然后再点击啊下这是一个编译的过程啊,它全都有,然后最底下呢,是编译的一个路径啊,你比如说这个我们有这个用这个R1.exe进行编译啊,然后还有这个m Le SE进编译link进行连接。
43:22
啊,然后用这个only debug进行调试啊,然后这是资源啊,这是这个编译的一个模块,我们点击完成。啊,完成之后呢,这右下右右上角呢,就有这个源码在啊,你可以看到,现在呢就可以看到源码了,我们直接啊点击一下这个编译啊,你看没有错误,构建没有错误,然后运行,当然你可以直接点点运行啊,它这个就是一个WIN32的一个简单的一个小窗口啊,然后呢,这个呢,它这个背景色之类的,你可以通过选项来改啊叭,如说我现在颜色与关键字啊,你可以看到它是每一个东西都可以改啊,你可以双击啊来给它改内容,比如说我现在把背景色改一个白的啊,点击确定啊,然后点击应用,它就变变成白色的了啊这儿呢,我有四种预设主题,我比较喜欢这个黄色这个啊,我们载入啊,然后点击确定应用啊,你可以看到这个东西是比较养眼的啊,所以说我比较喜欢用这个啊,这个呢,就是一个WIN3的一个基础款的一个这个东西啊,那我们再给他来一个啊,再给他来一个DEMO。
44:15
WIN3202啊,然后点击下一步,然后呢,这回呢,我们选择一个复杂版的,我记得这个是复杂版的啊,我们点击下一步啊,下一步完成。啊,你看这个就是比较复杂,它里头是有消息循环的啊,然后我们走走,然后运行,诶你看是不是啊。这个东西相相对而言就复杂一点,然后呢,我们还可以干嘛呢?我们来写一个控制台版的一个DEMO,那这个控制版版,控制台版的呢,我们就是这个CDM01啊,然后点击下一步啊,它这个没有模板啊,然后下一步啊,我们选择啊,只要一个asm就行了啊,然后点击下一步啊,然后完成,完成之后呢,把这as点开,你可以看到里边什么都不带啊,这就意味着我们要自己来写这个东西,那比如说我现在写一个什么点586啊,然后呢,这个呢指定是平台啊,然后呢,我这是不是应该改改给它改大一点字体啊。
45:08
代码编辑器啊,然后。哦,他这个字体我我忘了在哪了,我再找一下啊,在应该是代码与编辑器下选项。哦,不对,应该是字体颜色是吗?啊,也不对,难道直接变大也不是?啊,这呢自习选项。字体选项,它然后是文本,文本之后呢,我给他选大一点的,比如小三。嗯,确定。啊,这也不是,应该是代码编辑啊,代码编辑我给他来一个小小小三。哎,这就变大了啊,确定啊,这586啊版本啊,有386486586啊,然后呢,我们再给大家选择一下这个模式和这个调用约定。
46:04
ST call啊,然后呢,我们再给它设置一下大小写不敏感。好,然后呢,接下来呢,我们就可以开始写它的这个WIN32的一个程序了,这个东西是比我们VS写WIN32程序更方便的啊,写汇编程序更方便的,因为什么?因为它有头文件啊,它自带的头文件都可以直接用啊,比如说我们现在是这个include啊include,然后是windows.nc你可你看还有补全啊,然后再是这个includeuser32.nc。然后是可2.c大致包这么就行了,然后包含这个lab,嗯,我们包两个啊,包一个U侧三二,然后再包一个这个科三二就可以了。
47:01
好,然后呢,开始写这个代码啊,我们先来一个数据段,数据段呢主要存储一些变量啊,比如说我们现在再来一个这个字符串。啊,要以零为结尾啊,然后呢,我们再给它来一个这个标题啊,MSG。也以零为结尾,接下来呢,我们写这个代码段,点code,呃,点code的中间呢,我们是以这个我们可以写一个函数,也可以直接写代码啊,那我们先来试一下直接写代码的,比如说这个start啊,然后我们start之后呢,底下有一个end start,然后呢,最后呢要来一个end,嗯,不对,不需要end啊,就这就这样,然后呢,我们可以有两种方式啊,我们调用这个ma bos这的东西的时候,我们有两种方式,第一种方式我们首先进行push啊,比如说push个零,然后呢push of set t ST啊不对,这应该这个应该push mst,然后push of,嗯,TST,然后再push一个零,最后呢,再给它来call一下这个我们的mesa box ma box,好,然后呢,我们现在啊来运行。
48:27
诶构建是发生错误,看谁啊什么错误啊。啊,这有一行写错了,加个点,然后啊好。嗯。诶运行,诶你看是不是就弹出来了啊,这是第一种方式啊,这个呢是使用了什么啊,这是使用了这个原始的形式啊,就是push push push push call这种形式,那我们这个肯定它不止这种形式啊,我们也可以使用伪代码,伪代码呢就直接一个in work。
49:00
In work之后呢,我们直接调用我们的这个mes以及image Bo啊,然后呢,后边是我们的三个参数,一个now,然后呢,Opposite t txt,然后opposites,呃,Mst,最后呢是一个按钮类型啊,这按钮类型它都有红的啊,那我们直接选一个这个m BOK,好,接下来呢,我们直接运行啊,然后你可以看到啊,它就显示出来了啊,这就没有问题,现在呢,我们还可以给它封装成一个函数啊,比如说我现在啊,直接写一个什么,写一个print啊,或者说写一个这个hello。Hello啊,然后PC啊,然后回车啊,你可以看到它自动给你构建出了这个函数啊。看到吧,它这个自动给你构建出来这个函数,然后呢,这里边呢,给你加的这个return,接下来你把这个start啊往后移啊,就是它这个start实际上是启动位置的意思啊,那么你就可以干嘛呢?你可以在底下直接用这个in work来调用我们自己写的这个hello啊,然后现在呢,我们也可以直接啊来给它进行什么构建啊,然后呢,这个运行你可以看到啊,也打印出来的,也就是说这种这种写法也是没有问题的啊,那这个源代码呢,我也给大家保存一份啊。
50:20
嗯,找一下啊,打开工程,然后。Project,我这个叫什么名字来着,CCC这呢。诶。啊,算了,我直接复制一份吧。这是瑞的asm版本的这个。Hello啊,那我给他括号一下。
51:10
然后呢,我们再给大家演示一下瑞s asm这个东西是可以直接调试的啊,我们可以在这用CTRL加D啊,然后来用调试器对它进行一个运行啊,它就直接加载进你这个设置的这个默认的这个OD里边了啊,然后你可以看到这儿呢,直接加载到它的这个入口这了,然后呢,我们NF7F走走走走走F8啊,你可以看到它就运行起来了啊,然后你可以在任意位置N f2下断点之类的啊,然后进行修改啊,那比如说我现在的CTRL加F2啊,给它进行一个重新运行,重新运行之后,到这之后呢,我们也可以对它进行简单进行一些修改,比如说我CTRL在这儿啊,然后呢啊,找到里边的那个内存的位置,然后呢,我们够过去,够过去之后呢,你可以看到这儿这儿就是了啊,然后我们按刚才的方法直接二进制编辑啊,然后呢,给他写一个类似于12345之类的东西。
52:00
点击确定啊,那此时FFFF9啊,F9F9给它运行起来,你可以看到它也就被修改了啊好,那这个呢,就是我们的这个瑞德SM版本的啊,这个然后呢,我们现在呢,再给他来创建一个我们的VS版本啊,我们再写一个VS版本的一个汇编啊啊,因为这个没有办法直接创建汇编,所以我们要创建一个空项目,然后点击确定。然后点击下家原文件,点击新建项啊,然后我们这儿选择什么呢?选择一个may.asm然后呢,这个点击添加,添加完事,哎呀,现在不能添加啊,忘了我先删掉啊,删掉然后我们首先要给它用生成依赖项,点击生成自定义,把这个mam勾选上,点击确定,然后再在原文件上添加啊,一定要先给它勾自定义啊,然后呢,我们给它选择。妹点asm点击确定,然后呢,在这儿右键啊属性里边,我们选择这个链接器,链接器高级,高级里头有个入口,点我们给他勾一下啊妹,然后点击应用确定啊,如果你不点妹使用刚才那种模式也可以啊,然后现在呢,我们把刚才的源码我们复制一份啊,我们复制然后呢直接放到这儿啊,放到这儿之后呢,它是不能直接用的啊,我们首先呢,把这几个INC我们全给干掉,然后呢,我们有了这个U432,有了CRL32,然后呢,我们直接啊干什么呢?我们给他啊要写一下啊,我们这儿。
53:30
我们要给他声明一下这个API啊,因为我们没有包头文件啊,如果包头包,我们在汇编里其实是讲过如何去包头文件的啊,但是我们现在没包啊,如果要包的情况下,其实也是可以使用一样的方法的,那现在呢,你就用这个麦bos a啊,注意是A,因为什么?因为你这里边实际上没有一个叫麦bos的红啊,你在这个red red SM里能用它是因为它有头文件啊,但是这边没有头文件的情况下呢,你就要这样写啊,P do啊,然后呢,首先呢是一个doord,然后再来呢是一个byte,然后呢再来是一个。
54:04
呃,BYT,然后再来是一个这个dord,好,然后这样这样之后呢,我们现在不是有一个main函数了吗?那么现在呢,我们可以直接啊来这边给它写一个这个没函数,我们不是这个点扣的开始嘛,我们现在啊,首先把它拿过来,然后这些删掉,删掉之后呢,我们有一个这个PLC啊,然后may n的P,最后呢是一个摁好在中间呢,我们写代码啊,然后呢,比如说我现在是一个push啊,Push个零,Push opposite set啊,然后呢是MSG。Push。Txt push,零。How box?
55:01
诶好,然后呢,我们现在运行一下。有一个错误啊,写错了。哦,好像是不能这么写啊,那我这样写一下吧,我给他补一下。好,我们再来一次。哎,还不行。
56:06
这还哪有错,我看一下or别别。我先把它注释掉啊,可能就是这儿的问题啊,我看一下啊。嗯,确实啊,就是这个API的调用是有问题的啊,我再来看一眼啊。
57:05
MESSAGE。Box a pro。哎,奇怪了,我操这玩意儿。啊U啊,说的对啊,是忘加那啥了。好啊,你说的对啊。感谢啊,我们首先呢,我们来看一下啊,这个东西啊,已经弹出来了啊,那这个呢,就是WIN32版本的啊,啊它这个之所以会异常是因为我没有退出啊,那我现在呢,可以给他加一个退出代码e sit。P CES pro。
58:07
You holdor,然后呢,我们在这儿呢,对它呢,进行一个调用,这个呢,我们可以使用另一种形式啊,我们可以直接使用这个in work啊,然后给它。调用。好。运行。弹出点击确定,诶退出OK了啊没问题,好,那这个呢,这个版本呢也没问题了啊,那我们把它呢也给它复制出来。Hello vs2017版,好,那这个呢,就是咱们今天讲的这个全部内容啊,然后有需要这些工具以及上边这些课程上用到的这些源码啊,这个目标程序啊,脚本啊啊这类东西的,可以联系咱们的这个老板来进行获取啊,然后呢,呃,没有关注的可以点点关注,每周六周日晚上都有直播,今天呢是咱们Windows PE详解的这个系列课的第一节课,明天是第二节课啊,可以关注一下,避免错过啊啊有需要领取的可以直接联系老马啊。
59:31
然后现在还有没有什么问题,如果没有问题的情况下,咱们进行下一盘了。
60:02
你来。
我来说两句