随笔分类 -  PE基础

摘要:在上篇:PE手工分析-PE头中我们了解了PE文件头内容,在此基础上我们来分析一下导入表和导入函数地址表的内容.还是使用上篇使用的PE文件来分析,上一篇中我们基本上已经定位出PE头的位置以及相应内容.在PE扩展头中包含 IMAGE_DATA_DIRECTORY DataDirectory[IMAGE_NUMBEROF_DIRECTORY_ENTRIES];//数据目录表通过该数据目录表我们可以进一步对导入表和导入函数地址表进行详细的分析(其数据目录表分析也雷同)详细信息可以查看MSDN定义.数据目录表结构定义:typedef struct _IMAGE_DATA_DIRECTORY { D... 阅读全文
posted @ 2012-05-10 09:42 Yarkin 阅读(12238) 评论(0) 推荐(2)
摘要:要分析PE文件我们首先要对PE结构有一个大致的了解,大体上PE结构可以看成是一个平面空间里面包含有如下内容相应的MSDOS头结构定义如下,Windows加载器在加载的过程中会判断dos头是否合法typedef struct _IMAGE_DOS_HEADER { // DOS .EXE header WORD e_magic; // Magic number WORD e_cblp; // Bytes on last page of file WORD e_cp; ... 阅读全文
posted @ 2012-05-10 09:13 Yarkin 阅读(5820) 评论(0) 推荐(0)
摘要:RVA是相对虚拟地址(Relative Virtual Address)的缩写,顾名思义,它是一个“相对”地址,也可以说是“偏移量”,PE文件的各种数据结构中涉及到地址的字段大部分都是以RVA表示的。准 确地说,RVA就是当PE文件被装载到内存中后,某个数据的位置相对于文件头的偏移量。举个例子,如果Windows装载器将一个PE文件装入 00400000h处的内存中,而某个节中的某个数据被装入0040xxxxh处,那么这个数据的RVA就是(0040xxxxh- 00400000h)=xxxxh,反过来说,将RVA的值加上文件被装载的基地址,就可以找到数据在内存中的实际地址。PE文件中出现RVA 阅读全文
posted @ 2012-05-09 22:55 Yarkin 阅读(7455) 评论(0) 推荐(0)