逆向调试入门-了解PE结构文件

Posted 最爱大苹果

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了逆向调试入门-了解PE结构文件相关的知识,希望对你有一定的参考价值。

这里的PE文件指的是PE(Portable Executable)文件,即可移植的可执行文件,是 Windows 操作系统上主流的可执行文件。

常见的 EXE、DLL、OCX、SYS、COM 等文件格式都属于 PE 文件。

小结:PE文件是一种文件框架。


本次我们只是大概了解下PE结构文件。


逆向调试入门-了解PE结构文件_逆向调试基础



PE可执行文件


可以由操作系统进行加载并执行的文件称为可执行文件。

在不同的操作系统环境下可执行文件的呈现方式不一样:


1、windows:采用 PE(Portable Executable)文件结构。

2、Linux:采用 ELF(Executable and Linking Format)文件结构。


几大区块


逆向调试入门-了解PE结构文件_PE结构_02



1、DOS头


DOS头分为两部分,分别是“MZ头部”和“DOS存根”。MZ头部是真正的DOS头部,由于其开始处的两个字节为“MZ”,因此DOS头也可以叫作MZ头。该部分用于程序在DOS系统下加载,它的结构被定义为IMAGE_DOS_HEADER。


2、PE头


PE头部保存着Windows系统加载可执行文件的重要信息。


3、节表


节表中存储了各个节的属性、文件位置、内存位置等相关的信息。


4、节表数据


PE文件的真正程序部分就保存在节数据中。在PE结构中,有几个节表,就对应有几个节表的数据。根据节表的属性、地址等信息,程序的数据就分布在节表指定的位置中。 


逆向调试入门-了解PE结构文件_PE结构_03


可执行文件的装载、内存分步、执行等都依赖于PE结构。要掌握反Bingdu、免杀、权益保护、反调试、加壳脱壳等相关知识,那了解PE结构则是重中之重。


以上是关于逆向调试入门-了解PE结构文件的主要内容,如果未能解决你的问题,请参考以下文章

逆向调试入门-PE中的VA与RVA换算04/07

《逆向工程核心原理》读书笔记——第13章 PE文件格式

逆向调试入门-设置API函数断点

PE文件介绍 -DOS头,DOS存根,NT头

[系统安全] Windbg Preview调试记录

PE文件头入门