
PE文件结构学习
文章平均质量分 66
滴水三期C语言逆向,Win逆向基础,PE文件结构的学习,欢迎学习并提出建议,
如果有需要资料(课件)可以私信我
Shad0w-2023
要想人前显贵,必先人后受罪!!!
展开
-
资源表的应用:病毒基础释放资源文件
我们自己写一个木马,病毒等东西,往外释放的时候,通常会随即名称,随机路径填进资源里:添加资源,导入,选择exe。原创 2023-09-02 12:16:53 · 260 阅读 · 0 评论 -
导入表解析与IATHook
代码提取IAT表信息,IAT Hook原创 2023-08-29 19:36:31 · 221 阅读 · 0 评论 -
系统调用与函数地址动态寻找(详解版)
F9,进入程序领空,搜索所有用户模块的跨模块调用,F2下断点x64Dbg:F7单步步入,F8单步步过进内核的时候,通常会带一个参数(最基本的是系统服务号)SSDT表:系统描述符表系统服务号作用:在内核中的SSDT表中进行对照寻找,实际上就是SSDT的索引在SSDT中寻找对应的内核函数。原创 2023-09-02 12:23:25 · 477 阅读 · 0 评论 -
导入表解析,IAT表解析【滴水逆向三期53笔记】
我们再上一章节简要介绍了IAT表,我们知道如果程序调用dll中的函数时,必须通过IAT表来找到函数,我们基本了解了IAT表之后,我们今天来讲解一下导入表,通过本章节的学习,我们可以了解导入表,也能对IAT表有一个更深入的了解。原创 2023-04-01 21:14:33 · 1036 阅读 · 2 评论 -
IAT表入门简析【滴水逆向三期52笔记】
如果我们讲函数写在程序的源文件中,那么该函数就会被编译器直接编译到程序的二进制文件中,在程序调用该函数的时候,E8后跟的地址是直接写死的,程序直接在exe文件中找到函数,也被称为直接寻址,因为程序可以直接从自生的二进制文件中找到函数。我们知道,exe在运行的时候,会有自己独立的4GB空间,exe贴到4GB空间的时候,基本上都能按照exe文件预定的位置贴上去,但是dll文件就不一样,它每次贴的位置可能都不一样,所以MessageBox函数的地址也不一样,那程序如何调用MessageBox函数呢?原创 2023-04-01 01:28:47 · 533 阅读 · 2 评论 -
移动导出表,移动重定位表【滴水逆向三期51笔记+作业源码】
前面章节我们了解了PE文件中的导出表和重定位表,今天我们来学习如何来移动导出表和重定位表。原创 2023-03-28 22:38:37 · 506 阅读 · 0 评论 -
进程4GB空间简析,PE重定位表【滴水逆向三期50笔记+作业】
这一章我们继续来了解数据目录,我们来了解数据目录的第6个结构:重定位表。在了解重定位表之前,我们先来了解进程4GB空间,这有助于我们理解为什么PE中需要重定位表。当我们双击一个exe程序时,操作系统会为它分配虚拟的4GB空间(注意这里是虚拟的4GB空间,不同于物理4GB空间,如果是真实的4GB空间的话,我们的机器运行不了几个程序就会挂掉)。那么操作系统是如何分配这4GB的空间的呢?我们来简单解析一下:首先我们给出一张图,帮助我们理解:原创 2023-03-23 22:03:18 · 486 阅读 · 0 评论 -
PE导出表,C语言打印导出表信息【滴水逆向三期49笔记+作业】
我们前面在学习PE文件结构的时候,在可选PE头里跳过了最后一项,为一个有16个元素结构体数组,我们称它为数据目录。今天我们来学习数据目录的第一个结构:导出表。原创 2023-03-22 11:13:12 · 1023 阅读 · 0 评论 -
静态链接库,动态链接库【滴水逆向三期48笔记】
静态链接库,动态链接库原创 2023-03-16 11:53:52 · 687 阅读 · 0 评论 -
新增节添加ShellCode【滴水逆向三期46作业源码】
源码功能:在程序中新增一个节,并添加ShellCode。这里直接给出源码,供大家参考,自行理解遍会有更好的理解。原创 2023-03-27 17:36:30 · 407 阅读 · 0 评论 -
新增节添加代码【滴水逆向三期46笔记】
在之前的学习中,我们已经了解了在节空白区添加代码,但是有些情况节是没有空白区的,那么我们要怎么来添加我们的shellcode呢?我们可以通过新增节来添加shellcode:原创 2023-03-12 00:44:43 · 428 阅读 · 0 评论 -
节空白区添加自己的代码【滴水逆向44笔记】
我们了解PE结构就知道,节与节之间有一些空白区,那么我们能否在这些空白区添加自己的代码呢?答案是肯定的,我们来看看这一节课的内容:原创 2023-03-05 15:44:00 · 615 阅读 · 0 评论 -
RVA转FOA【滴水逆向三期43作业】
RVA转FOA源代码,C语言逆向,滴水逆向,原创 2023-03-05 09:36:17 · 420 阅读 · 0 评论 -
FileBfufer转ImageBuffer【滴水逆向三期43作业源码】
作业要求我们在上一章已经说明了,还有不懂的可以去上一张看一下,这里直接给出源码,代码我们就不做解释了,自己写出来或着自己理解一遍或许对PE会有更好的理解。编写一个程序,实现从FileBuffer拉升到ImageBuffer再转回FileBuffer并且完成存盘:原创 2023-03-04 14:51:54 · 385 阅读 · 0 评论 -
FileBuffer转ImageBuffer【滴水逆向三期43笔记】
我们知道从文件直接读取数据是将文件在硬盘中直接复制过来,计算机是不能直接执行的,如果要让程序执行,必须要有一个“拉伸”的过程,也就是课程中所说的ImageBuffer,但是ImageBuffer是不能直接执行的,但是它已经具备了执行的条件,再执行之前,要将ImageBuffer放入到程序独立的4GB运行空间中,这里给出FileBuffer与ImageBuffer的图:原创 2023-03-04 00:04:28 · 553 阅读 · 0 评论 -
【滴水逆向三期41作业】C语言提取文件PE头部信息
C语言提取文件PE头部信息原创 2023-02-27 14:59:28 · 693 阅读 · 0 评论 -
【PE准备阶段】将内存中的数据读取到内存,将内存中的数据读取到文件中【滴水逆向39期作业】
内存中数据写入文件,PE文件结构,滴水逆向作业原创 2023-02-21 22:01:25 · 452 阅读 · 0 评论 -
C语言文件读写函数介绍【滴水逆向三期(39)笔记】
在之前的学习中,我们了解了C语言指针和多级指针,函数指针,在学习到后面需要提取程序的PE文件结构时,我发现必须要用到C语言的文件读写函数,在这里我们来介绍一下C语言的文件读写函数。原创 2023-02-20 22:17:14 · 1361 阅读 · 0 评论 -
骚操作:隐藏代码到数据区,函数指针【滴水逆向三期37笔记】
隐藏代码到数据区,指针被称为C语言的灵魂,也是令许多初学者头疼的地方,在前一章节中我们讲解到了多级指针,从反汇编角度带大家了解了指针,如果对指针不是很熟悉的话,大家可以取看一看:http://t.csdn.cn/Qw5oi,这一章节来带大家了解函数指针,并且为大家介绍函数指针的一个利用:将代码隐藏到数据区。我们在正向开发的过程中如果设计了一个功能函数,并且不想他人轻易地通过反汇编来得到我们功能函数的代码,那么我们可以通过将代码隐藏到数据区,这是一种简单的“加密”方式。原创 2023-02-14 18:10:15 · 652 阅读 · 0 评论 -
【多级指针】带你从反汇编角度认识指针,C语言指针,多级指针【滴水逆向三期(36)笔记】
指针被称为C语言的灵魂,可见指针在C语言中的地位,指针在逆向中也是极其重要的,在查找数据时也是一种非常重要的手段。许多初学者对于一级指针也是学习的一知半解,在这里带大家从反汇编角度了解指针。在这里我们使用的编译器是visual c++ 6.0。原创 2023-02-12 23:02:27 · 1228 阅读 · 3 评论