PE文件中各IMAGE_DATA_DIRECTORY的定义

PE文件结构简述 简述: PE文件结构分为五个部分: DOS文件头 DOS加载模块 PE文件头 区段表 区段 PE文件中显示的所有地址基本都是RVA,倘若想要换算成VA一般需要加上基地址ImageBase与文件偏移地址RVA。 虚拟地址(VA=virtual address):每个32位PE文件被加载到内存的时候都会被分配4GB的虚拟内存,虚拟地址等于“程序的相对虚拟地址+基地址”。 相对虚拟地址(RVA=relatively virtual address):相对虚拟地址是相比较于文件开头的地 阅读详情

   首先列出IMAGE_DATA_DIRECTORY结构:(简单的结构就不注释了)

typedef struct _IMAGE_DATA_DIRECTORY {

    DWORD VirtualAddress;

    DWORD Size;

} IMAGE_DATA_DIRECTORY,*PIMAGE_DATA_DIRECTORY;

    VirtualAddress。是所指向的数据结构的虚拟地址。

    Size。这个数据结构的大小。

    这一个结构占8个字节,16项一共占128字节。

    另外序号与目录的对应关系在winnt.h中定义如下:

#define IMAGE_DIRECTORY_ENTRY_EXPORT    0

#define IMAGE_DIRECTORY_ENTRY_IMPORT    1

#define IMAGE_DIRECTORY_ENTRY_RESOURCE  2

#define IMAGE_DIRECTORY_ENTRY_EXCEPTION 3

#define IMAGE_DIRECTORY_ENTRY_SECURITY  4

#define IMAGE_DIRECTORY_ENTRY_BASERELOC 5

#define IMAGE_DIRECTORY_ENTRY_DEBUG 6

#define IMAGE_DIRECTORY_ENTRY_COPYRIGHT 7

#define IMAGE_DIRECTORY_ENTRY_ARCHITECTURE  7

#define IMAGE_DIRECTORY_ENTRY_GLOBALPTR 8

#define IMAGE_DIRECTORY_ENTRY_TLS   9

#define IMAGE_DIRECTORY_ENTRY_LOAD_CONFIG   10

#define IMAGE_DIRECTORY_ENTRY_BOUND_IMPORT  11

#define IMAGE_DIRECTORY_ENTRY_IAT   12

#define IMAGE_DIRECTORY_ENTRY_DELAY_IMPORT  13

#define IMAGE_DIRECTORY_ENTRY_COM_DESCRIPTOR    14

    最后15是预留位置。

      其实每一个表项都有挺实在的意思,看最后一个单词就都明白了。到这,PE header部分就全部结束了。下次讲的是区段表(Section Table)。

手动解析PE文件(含打印PE文件信息的C练习代码) 1、DOS头 _IMAGE_DOS_HEADER(共40个字节) WORD e_magic // 5A4D *EXE标志,“MZ” WORD e_cblp //0090 WORD e_cp //0003 WORD e_crlc //0000 WORD e_cparhdr //0004 WORD e_minalloc //0000 WORD e_maxalloc //FFFF WORD e_ss 阅读详情

相关推荐

WindowsPE 第七章 资源表

第七章 资源表     在程序设计中,总会设计一些数据。这些数据可能是源代码内部需要用到的常量,菜单选项、界面描述等;也可能是源代码外部的,比如程序的图标文件、北京音乐文件、配置文件等,以上这些数据统称为资源。按照程序与数据分离的设计思想,最理想的方案是单独为程序所需要的数据安排一节来存储-PE中的资源就是这么做的。 7.1资源分类     资源数据在PE里是最复杂的一种。其难度主要体现在对

天使也掉毛 1980

PE文件结构-导入表详解

当PE文件运行时,PE文件将被系统加载进入内存中,此时Windows加载器会定位所有的导入的函数或者将定位到的内容填写到可执行文件的某个位置供使用,这个定位是需要借助于可执行文件的导入表来实现的。导入表中存放了所使用的DLL模块名称及导入函数的名称或者函数序列。 在PE文件中定位到PE头部的可选头的位置,可选头IMAGE_OPTIONAL_HEADER中最后一个成员: IMAGE_DATA_DI...

wxf明的博客 1868

PE总结12---PE文件结构之资源表 (IMAGE_RESOURCE_DIRECTORY)

资源在PE中是以目录的形式存在的,一般有3层:资源类型,目标资源ID与资源代码页 都是以IMAGE_RESOURCE_DIRECTORY结构为头部的,并且后面跟着一个IMAGE_RESOURCE_DIRECTORY_ENTRY结构数组。 IMAGE_RESOURCE_DIRECTORY,负责指出后面数组中的成员个数 IMAGE_RESOURCE_DIRECTORY_ENTRY,数组成员分

oBuYiSeng的博客 7758

【免杀前置课——PE文件结构】十八、数据目录表及其内容详解——数据目录表(导出表、导入表、IAT表、TLS表)详解;如何在程序在被调试之前反击?TLS反调试(附代码)

【免杀前置课——PE文件结构】十八、数据目录表及其内容详解——数据目录表(导出表、导入表、IAT表、TLS表)详解;如何在程序在被调试之前反击?TLS反调试(附代码)

m0_62783065的博客 1653

Xilinx Vitis 2020.1头文件路径配置避坑指南:解决#include找不到文件的常见问题

本文针对Xilinx Vitis 2020.1开发环境中常见的#include头文件找不到问题,提供了系统的避坑指南。文章深入解析了Vitis的头文件搜索机制,对比了通过工程属性GUI、修改编译命令及使用环境变量三种配置方法的优劣与隐藏陷阱,并给出了高级场景的排查流程与工程结构最佳实践,帮助开发者高效解决路径配置难题。

weixin_28831399的博客 570

TwinCAT3入门教程3——PLC程序变量定义和硬件IO关联

目录 1、IO输入输出变量定义和硬件关联 1.1 IO输入 1.2 IO输出 1.3 PLC变量和IO模块关联 1.4 测试IO输出点 2、伺服变量关联 1、IO输入输出变量定义和硬件关联 1.1 IO输入 添加全局变量IO_Global 变量定义 (*==========================================IO输入===============================================================*)

panjinliang066333的博客 1万+

PE文件结构—Data Diretoris,Sections,Section Header

今天将具体学习一下数据目录表和区域表的相关内容,这两部分中有很多内容在文件被执行时起关键作用。下面我们将具体分析一下数据目录表和区域表。

QXinHan的博客 1098

Rust 与 C/C++:Rust 比 C/C++ 更好还是只是“技能问题”?

对于许多嵌入式系统开发人员而言,的崛起似乎掀起了一股不小的浪潮,特别是在相较于传统的语言,Rust的“内存安全”优势让人眼前一亮。然而,是否可以将Rust作为C/C++的替代品?或者说,Rust是否真的比C/C++更好,抑或它只是一个“技能问题”呢?在嵌入式开发的领域,我观察到,尽管Rust在一些高性能、内存安全敏感的场景中受到了广泛推崇,但它在实际应用中的普及度,特别是在嵌入式领域,依然有限。今天,我会从多个角度探讨这个问题,并且分享一些对于Rust、C/C++以及嵌入式系统开发的个人见解。

qq_63315166的博客 1300

PE文件详解九:资源结构体

PE文件详解九:资源结构体 Windows 将程序的各种界面定义为资源,包括加速键(Accelerator)、位图(Bitmap)、光标(Cursor)、对话框(Dialog Box)、图标(Icon)、菜单(Menu)、串表(String Table)、工具栏(Toolbar)和版本信息(Version Information)等。 资源有很多种类型,每种类型的资源中可能存在

pjz969的专栏 1291

从课堂笔记到动手实践:用Multisim仿真高频谐振功放(丙类)的完整流程

本文详细介绍了使用Multisim仿真高频谐振功放(丙类)的完整流程,从仿真环境准备到电路搭建、偏置网络设计、信号注入与波形观测,再到效率优化与性能验证。通过14个关键操作步骤,帮助读者将高频电子线路的理论知识转化为动手实践,深入理解丙类功放的非线性工作状态和效率优化技巧。

weixin_30701575的博客 519

MacOS下Mixly 2.0安装避坑指南:从Java环境到终端权限全解析

本文详细解析了在MacOS系统上安装Mixly 2.0时可能遇到的核心问题与解决方案。针对Java环境版本不兼容、MacOS Gatekeeper安全机制拦截以及终端权限不足三大常见障碍,提供了从检查并配置正确Java版本、安全设置绕过到彻底解决应用内部工具链权限的完整避坑指南,帮助用户顺利完成安装并正常使用。

weixin_29231725的博客 503

PE文件结构详解(四)PE导入表

PE文件结构详解(二)可执行文件头的最后展示了一个数组,PE文件结构详解(三)PE导出表中解释了其中第一项的格式,本篇文章来揭示这个数组中的第二项:IMAGE_DIRECTORY_ENTRY_IMPORT,即导入表。 也许大家注意到过,在IMAGE_DATA_DIRECTORY中,有几项的名字都和导入表有关系,其中包括:IMAGE_DIRECTORY_ENTRY_IMPORT,IMAGE_D

jiangqin115的专栏 2106

别再混淆了!一张图看懂SAP特殊采购类30/40/70/80的区别与选型指南

本文深度解析SAP特殊采购类30/40/70/80的核心逻辑与业务影响,通过对比框架和真实案例帮助用户掌握其适用边界。重点介绍委外加工(类型30)、工厂间转移(类型40/70)及计划与执行分离(类型80)的配置要点与常见问题,提供选型决策树和实施检查清单,助力企业优化供应链管理。

weixin_26938645的博客 450

PE文件分析-资源表

时间:202106 资源表 DESC: 记录PE文件中的资源信息。 RVA: IMAGE_DATA_DIRECTORY[2].VirtualAddress。 资源包括 Cursor, Bitmap, Icon, Menu, Dialog, String, Accelerator 等预定义的资源类型和自定义的资源类型, 不同资源类型用 ID 区分。 预定义资源类型ID 描述 1 Cursor 2 Bitmap Resource 3 Icon 4 Menu Resource

m0_48995611的博客 546

coreldraw sp2精简版 x4_CorelDRAW X4下载-CorelDRAW X4 SP2 精简版_Win10镜像官网

CorelDRAW X4 SP2是一个专业图形设计软件,专用于矢量图形编辑与排版,借助其丰富的内容和专业图形设计、照片编辑和网站设计软件,您将能够随心所欲地表达自己的风格与创意,轻松创作徽标标志、广告标牌、车身贴和传单、模型绘制、插图描画、排版及分色输出等。CorelDRAW X4 SP2软件特色CorelDraw X4 相比两年前的 CorelDraw X3 加入了大量新特性,总计有50项以上,...

weixin_30346025的博客 8891

网规第三版:第4章网络资源设备(完结)

第 4 章 网络资源设备 调整内容: 更新主流网络设备(交换机、路由器、防火墙)的技术参数与选型标准 增加国产化网络设备与信创产品的相关内容 精简已淘汰的设备类型与技术指标

鹿鸣天涯 267

重读PE文件(3)

上一篇讲到16个IMAGE_DATA_DIRECTORY字段,这16个字段如下: 0:IMAGE_DIRECTORY_ENTRY_EXPORT-导出表 1:IMAGE_DIRECTORY_ENTRY_IMPORT-导入表2:IMAGE_DIRECTORY_ENTRY_RESOURCE-资源3:IMAGE_DIRECTORY_ENTRY_EXCEPTION-异常(具体资料不详...

weixin_33805743的博客 82

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

PE格式详细讲解3 - 系统篇03

作者:小甲鱼 接着我们来谈谈 IMAGE_OPTIONAL_HEADER 结构,正如名字的意思,这是一个可选映像头,是一个可选的结构。 但是呢,实际上上节课我们讲解的 IMAGE_FILE_HEADER 结构远远不足以来定义 PE 文件的属性。 因此,这些属性在 IMAGE_OPTIONAL_HEADER 结构中进行定义。 因此这两个结构联合起来,才是一个完整的 “PE文件结构” 。 ...

weixin_30905133的博客 70

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

《Windows PE权威指南》学习之第7章 资源表(1)

本章主要介绍常见的资源类型,以及PE中资源的组织方式。PE中的相关资源可以通过程序进行深度定位,所获取的二进制字节码与资源脚本语句之间是一一对应的。本章将对这两者的关系进行深入的解析,还会通过直接读资源数据和使用Windows API函数两种方法对资源表进行编程。 在程序设计中,总会涉及一些数据。这些数据可能是源代码内部需要用到的常量,比如菜单选项、界面描述等;也可能是源代码外部的,比如程序的图标文件、背景音乐文件、配置文件等,以上这些数据统称为资源。

chenyijun的专栏 3559

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

解析资源

1.资源类型 #define RT_CURSOR MAKEINTRESOURCE(1)              //光标 #define RT_BITMAP MAKEINTRESOURCE(2)              //位图 #define RT_ICON MAKEINTRESOURCE(3)            ...

weixin_30284355的博客 194

《加密与解密》-PE文件格式学习笔记(3)

基地址重定义、资源

dawn_ing_的博客 2077

PE文件格式详解(下)

预定义段   一个Windows NT的应用程序典型地拥有9个预定义段,它们是.text、.bss、.rdata、.data、.rsrc、.edata、.idata、.pdata和.debug。一些应用程序不需要所有的这些段,同样还有一些应用程序为了自己特殊的需要而定义了更多的段。这种做法与MS-DOS和Windows 3.1中的代码段和数据段相似。事实上,应用程序定义一个独特的段的方法是使

星仔的“韵” 962

《逆向工程》通过修改PE注入DLL

文章目录通过修改PE加载DLL修改导入表查看IDT空间是否足够移动IDT 通过修改PE加载DLL TextView是一个文本查看工具,将文本文件拖入即可显示。 代码如下,注意按照32位编译,否则PEView不能分析64位IDT。 #include "windows.h" #include "stdio.h" LRESULT CALLBACK WndProc(HWND, UINT, WPARAM,...

Starr 1243

exe手写资源段

GM_PE_ICON_INFO 为ICON自定义图标信息结构,包含图标大小,图标数据,这里只添加ICON图标,要让资源管理器之类的识别还得添加GROUP_ICON const DWORD SIZEOF_RES_DIR = sizeof(IMAGE_RESOURCE_DIRECTORY); const DWORD SIZEOF_RES_DIR_ENTRY = sizeof(IMAGE_RESOUR

sx5486510的专栏 891
上一篇: 远控软件GHOST源码免杀
下一篇: 针对卡巴斯基2010的免杀揭密
HEJSCLK
博客等级 码龄19年 17粉丝 12原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值