PE文件和COFF文件格式分析
介绍PE文件格式和相关应用
breaksoftware
这个作者很懒,什么都没留下…
展开
-
PE文件和COFF文件格式分析--概述
刚工作的时候,我听说某某大牛在做病毒分析时,只是用notepad打开病毒文件,就能大致猜到病毒的工作原理。当时我是佩服的很啊,同时我也在心中埋下了一个种子:我也得有这天。随着后来的工作进行,一些任务的和这个理想有了交集,这得以让我有足够的时间和精力去细细研究PE文件和COFF文件格式。(转载请指明出处) 如果有一定的英语基础的朋友,可以查看微软原稿(http://www.micr原创 2012-07-03 00:41:30 · 9136 阅读 · 4 评论 -
PE文件和COFF文件格式分析--MS-DOS 2.0兼容Exe文件段
MS 2.0节是PE文件格式中第一个“节”。其大致结构如下:(转载请指明来源于breaksoftware的csdn博客) 在VC\PlatformSDK\Include\WinNT.h文件中有对MS-DOS 2.0兼容EXE文件头的完整定义typedef struct _IMAGE_DOS_HEADER { // DOS .EXE header WORD原创 2012-07-03 22:02:10 · 4620 阅读 · 0 评论 -
PE文件和COFF文件格式分析——签名、COFF文件头和可选文件头1
本文将讨论PE文件中非常重要的一部分信息。(转载请指明来源于breakSoftware的CSDN博客) 首先说一下VC中对应的数据结构。“签名、COFF文件头和可选文件头”这三部分信息组合在一起是一个叫IMAGE_NT_HEADERS的结构体。typedef struct _IMAGE_NT_HEADERS64 { DWORD Signature; IMA原创 2012-07-19 19:20:13 · 6583 阅读 · 0 评论 -
PE文件和COFF文件格式分析——签名、COFF文件头和可选文件头2
之前的博文中介绍了IMAGE_FILE_HEADER结构,现在来讨论比较复杂的“可选文件头”结构体。(转载请指明来自breaksoftware的csdn博客)先看下其声明typedef struct _IMAGE_OPTIONAL_HEADER { // // Standard fields. // WORD Magic; . ...原创 2012-08-29 01:44:33 · 3033 阅读 · 1 评论 -
PE文件和COFF文件格式分析——签名、COFF文件头和可选文件头3
《PE2》中介绍了一些可选文件头中重要的属性,为了全面起见,本文将会讲解那些不是那么重要的属性。虽然不重要,但是还是可以发现很多好玩的情况。首先看一下32位的可选文件头详细定义。(转载请指明来源于breaksoftware的CSDN博客)typedef struct _IMAGE_OPTIONAL_HEADER { // // Standard fields....原创 2012-08-31 20:08:35 · 2593 阅读 · 0 评论 -
PE文件和COFF文件格式分析——导出表
在之前的《PE可选文件头》相关博文中我们介绍了可选文件头中很多重要的属性,而其中一个非常重要的属性是(转载请指明来源于breaksoftware的CSDN博客)IMAGE_DATA_DIRECTORY DataDirectory[IMAGE_NUMBEROF_DIRECTORY_ENTRIES]; 该数组保存了如下节(不一定全包括,要以IMAGE_OPTI...原创 2012-09-06 23:36:51 · 4721 阅读 · 2 评论 -
PE文件和COFF文件格式分析——RVA和RA相互计算
之前几节一直是理论性质的东西非常多。本文将会讲到利用之前的知识得出一个一个非常有用的一个应用。(转载请指明来源于breaksoftware的csdn博客) 首先我们说下磁盘上A.exe文件和正在内存中运行的A.xe之间的关系。当我们双击A.exe后,A.exe会运行起来。我们在任务管理器中可以看到A.exe。这个过程很简单,但是双击A.exe之后系统做了什么?这个...原创 2012-09-06 23:36:26 · 3555 阅读 · 0 评论 -
PE文件和COFF文件格式分析——节信息
在《PE文件和COFF文件格式分析——签名、COFF文件头和可选文件头3》中,我们看到一些区块的信息都有偏移指向。而我们本文讨论的节信息是没有任何偏移指向的,所以它是紧跟在可选文件头后面的。(转载请注明来源于breaksoftware的csdn博客)于是该节的起始位置要如此计算size_t unDwordSize = sizeof(DWORD); // PE\0\0size...原创 2012-09-06 23:36:01 · 3109 阅读 · 0 评论 -
PE文件和COFF文件格式分析——导出表的应用——一种插件模型
可能在很多人想想中,只有DLL才有导出表,而Exe不应该有导出表。而在《PE文件和COFF文件格式分析——导出表》中,我却避开了这个话题。我就是想在本文中讨论下载Exe中存在导出表的场景。(转载请指明出于breaksoftware的csdn博客) 首先要说的是Exe是可以有导出表的,我用我写的PE分析工具扫描了我电脑上所有文件。发现有导出表的Exe文件还不少。比如...原创 2012-09-06 23:37:56 · 2129 阅读 · 2 评论 -
PE文件和COFF文件格式分析——导出表的应用——通过导出表隐性加载DLL
通过导出表隐性加载DLL?导出表?加载DLL?还隐性?是的。如果觉得不可思议,可以先看《PE文件和COFF文件格式分析——导出表》中关于“导出地址表”的详细介绍。(转载请指明出于breaksoftware的csdn博客) 这儿再废话几句,导出地址表,可能保存两种信息: 1 保存的函数入口的RVA 2 保存的是指向函数真正实现的所在的DLL名和函原创 2012-09-06 23:38:22 · 3038 阅读 · 7 评论 -
PE文件和COFF文件格式分析——导出表的应用——一种摘掉Inline钩子(Unhook)的方法
本文讲述如何使用导出表,还原inline hook。原创 2014-04-21 22:26:10 · 2867 阅读 · 0 评论