PE节表】的更多相关文章

目录 PE节表详细分析 0x00 前言 0x01 PE节表分析 节表结构 节表数量 节表名字 节表大小 节位置 节表属性 0x02 代码编写 PE节表详细分析 0x00 前言 上一篇文章我们学习了PE结构中的PE头,我之前说过PE文件结构是PE头->节表->每个节,所以我们掌握了节表后也就知道怎么去获取每个节了.(当然后面还有输入表,输出表这些比较重要的东西.这些知识在后面的文章详细介绍.) 0x01 PE节表分析 节表结构 PE节表位于PE头的下面,PE节表中记录了各个节表的起始位置.大小,…
这一讲我们结合实例来谈谈区块表的定义以及各个属性的含义. 首先,我们先用之前学过的一点知识在二进制文件中手动翻找区块表,这样做的好处是可以使你很快的对PE结构牢记于心.学来的东西就是能用的东西,不能用的理论是空谈,是瞎扯. (具体过程演示大伙可参考小甲鱼的视频教程:<解密系列>系统篇.第五讲) 这里我们经过千辛万苦终于找到了我们的区块表了(当然将来我会教大家写一个自己的工具,让工具去找,现在让大家自己动手是为了增强感觉!),现在我们联系上一章节提到的区块表的结构对各个成员进行详细的分析: ty…
到此为止,小甲鱼和大家已经学了许多关于 DOS header 和 PE header 的知识.接下来就该轮到SectionTable (区块表,也成节表).(视频教程:http://fishc.com/a/shipin/jiemixilie/) 越学越多的结构,大家可能觉得PE挺乱挺杂的哈,所以这里插播下一下必要知识的详细注释,大伙可以按需要看. PE文件到内存的映射 在执行一个PE文件的时候,windows 并不在一开始就将整个文件读入内存的,二十采用与内存映射文件类似的机制.也就是说,win…
我们已经学了许多关于 DOS header 和 PE header 的知识.接下来就该轮到 section table(节表)了.节表其实就是紧挨着 PE header 的一结构数组.该数组成员的数目由 file header (IMAGE_FILE_HEADER)结构中 NumberOfSections 域的域值来决定.节表结构又命名为 IMAGE_SECTION_HEADER. IMAGE_SIZEOF_SHORT_NAME equ 8 IMAGE_SECTION_HEADER STRUCT…
PE文件格式详解,第三讲,可选头文件格式,以及节表 作者:IBinary出处:http://www.cnblogs.com/iBinary/版权所有,欢迎保留原文链接进行转载:) 一丶可选头结构以及作用 typedef struct _IMAGE_OPTIONAL_HEADER { WORD Magic; /*机器型号,判断是PE是32位还是64位*/ BYTE MajorLinkerVersion; /*连接器版本号高版本*/ BYTE MinorLinkerVersion; /*连接器版本号…
PE格式第五讲,手工添加节表 作者:IBinary出处:http://www.cnblogs.com/iBinary/版权所有,欢迎保留原文链接进行转载:) 首先我们要用汇编编写一段汇编代码,用来生成标准PE 一丶标准PE生成的汇编代码 . .model flat, stdcall option casemap:none include windows.inc include user32.inc include kernel32.inc includelib user32.lib includ…
PE知识复习之PE的节表 一丶节表信息,PE两种状态.以及重要两个成员解析. 确定节表位置: DOS + NT头下面就是节表. 确定节表数量: 节表数量在文件头中存放着.可以准确知道节表有多少个. 节表是一个结构体数组.没一个节表表示了数据在哪,怎么存储. 下方是节的结构体 typedef struct _IMAGE_SECTION_HEADER { BYTE Name[IMAGE_SIZEOF_SHORT_NAME]; //8个字节名字.自己可以起.编译器也可以给定.不重要. union {…
17.1.4  节表和节 从排列位置来看,PE文件在DOS部分和PE文件头部分以后就是节表和多个不同的节(如图17.1中的③和④所示).要理解什么是节表,什么是节以及它们之间的关系,那就首先要了解Windows是如何将PE文件映射到内存的. 1. PE文件到内存的映射 在执行一个PE文件的时候,Windows并不在一开始就将整个文件读入内存,而是采用与内存 映射文件类似的机制,也就是说,Windows装载器在装载的时候仅仅建立好虚拟地址和PE文件之间的映射关系,只有真正执行到某个内存页中的指令或…
一直想学学怎么动动pe文件,学习了几篇文章尤其是寒晨的文章后,自己动手也尝试了一下加节和修改oep,写出来供和我一样菜的一起进步. 一.       增加pe节需要的操作 1.    确定内存中的节的对齐粒度和文件中的节的对齐粒度,分别是pe+0038h 和3ch 也就是说 内存和文件的对齐粒度都是1000h.2.    在文件末尾增加数据.因为文件对齐的粒度是1000h,那么我们在文件末尾增加2000h个数据. 3.    在节表末尾增加新的节信息 在最后一个节信息后面增加一个.peng的节2…