PE总结8---PE文件结构之导出表 (IMAGE_EXPORT_DIRECTORY)

本文详细介绍了PE文件结构中的导出表,包括其作用、组成和解析过程。通过导出表,DLL文件可以提供导出函数的名称、序号和入口地址。导出表由名称表、函数表和序号表构成,它们共同协助调用者找到实际的函数。文章还展示了如何利用LordPE和010Editor等工具解析导出表的各个部分,例如Name、AddressOfFunctions、AddressOfNames和AddressOfNameOrdinals,并找到了相应的函数地址。
摘要由CSDN通过智能技术生成

导出表中导出的是供其他PE文件使用的函数、变量或者类的行为。

导出表记载着动态链接库的一些导出信息。通过导出表,DLL 文件可以向系统提供导出函数的名称、序号和入口地址等信息,比便Windows 加载器通过这些信息来完成动态连接的整个过程。   

导出表由3个部分构成:  名称表,   函数表,   序号表。   名称表和序号表就是索引,引导调用者找到真正的函数表。   函数表中保存着被导出函数的地址信息

   导出表在内存中的顺序是按照输出名称来确定的。

    IMAGE_EXPORT_DIRECTORY结构:

typedef struct _IMAGE_EXPORT_DIRECTORY {
	DWORD Characteristics;			//保留 总是定义为0
	DWORD TimeDateStamp;			//文件生成时间
	WORD  MajorVersion;				//主版本号 一般不赋值
	WORD  MinorVersion;				//次版本号 一般不赋值
	DWORD Name;						//模块的真实名称
	DWORD Base;						//索引基数 加上序数就是函数地址数组的索引值
	DWORD NumberOfFunctions;		//地址表中个数
	DWORD NumberOfNames;			//名称表的个数
	DWORD AddressOfFunctions;		//输出函数地址的RVA
	DWORD AddressOfNames;			//输出函数名字的RVA
	DWORD AddressOfNameOrdinals;	//输出函数序号的RVA
} IMAGE_EXPORT_DIRECTORYM, *pIMAGE_EXPORT_DIRECTORY; 

如果在010Editor中的信息如下:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值