数据目录

1、我们所了解的PE分为头和节,在每个节中,都包含了我们写的一些代码和数据,但还有一些非常重要
的信息是编译器替我们加到PE文件中的,这些信息可能存在在任何可以利用的地方。 2、这些信息之所以重要,是因为这些信息包含了诸如: PE程序的图标在哪里? 用到了哪些系统提供的函数? 为其他的程序提供哪些函数? 3、编译器添加了这么多信息,那程序是如何找到这些信息的呢? 答案就是:数据目录 4、数据目录定位: 可选PE头最后一个成员,就是数据目录.一共有16个: typedef struct _IMAGE_DATA_DIRECTORY {
DWORD VirtualAddress; //内存偏移
DWORD Size; //大小
} IMAGE_DATA_DIRECTORY, *PIMAGE_DATA_DIRECTORY; #define IMAGE_NUMBEROF_DIRECTORY_ENTRIES 16 分别是:导出表、导入表、资源表、异常信息表、安全证书表、重定位表、调试信息表、版权所以表、全局指针表
TLS表、加载配置表、绑定导入表、IAT表、延迟导入表、COM信息表 最后一个保留未使用。

和程序运行时息息相关的表有:

导出表

导入表

重定位表

IAT表

导出表

最新文章

  1. Oracle索引梳理系列(一)- Oracle访问数据的方法
  2. Java与模式读书笔记
  3. unity3d Light Probe Group图解超详细使用方法
  4. [转]ubuntu下安装程序的三种方法
  5. parseInt和valueOf
  6. 1509 -- Glass Beads POJ
  7. 一个Monad的不严谨介绍
  8. 在Centos7x上部署docker
  9. Python 列表切片陷阱:引用、复制与深复制
  10. Java日志输出问题
  11. SQL逻辑查询语句执行顺序 需要重新整理
  12. What are the differences between Flyweight and Object Pool patterns?
  13. AbstractQueuedSynchronizer,Lock,Synchronized
  14. jquery中ajax使用error调试错误的方法,实例分析了Ajax的使用方法与error函数调试错误的技巧
  15. 基础但是很重要的2-sat POJ 3678
  16. 如何使用phpmyadmin建立外键约束
  17. 第03章—打造RESTful风格API
  18. 如何成为java架构师(转载)
  19. spring.net 集成nhibernate配置文件(这里暴露了GetCurrentSession 对于 CurrentSession unbond thread这里给出了解决方法)
  20. BZOJ5343 [Ctsc2018]混合果汁 【二分 + 主席树】

热门文章

  1. MVC之一、预备知识储备
  2. Spring boot 学习 五:domain的定义
  3. sass安装方法,绝对好用的方式
  4. 《Java多线程编程核心技术》读后感(十二)
  5. linux 下消息队列发送后没有信息
  6. servlet的九大内置对象和四大域对象
  7. SQL中的row_number() over()解释
  8. 英语学习Start
  9. [转] 无监督特征学习——Unsupervised feature learning and deep learning
  10. Animation Starter Pack中动画蓝图事件添加的位置