系统安全十六文件逆向基础知识解析编辑工具和修改bruce的技术博客

初来知乎分享,还请各位大佬多多包涵。系统安全系列作者将深入研究恶意样本分析、逆向分析、攻防实战和Windows漏洞防护等,通过在线笔记和实践操作的形式分享与博友们学习,希望能与您一起进步。

作者前文介绍了三个漏洞,包括Chrome浏览器保存密码渗透解析、通过Chrome浏览器实现Win10蓝屏、音乐软件解密功能复现。这篇文章将介绍基础知识,详细讲解PE文件格式,熟悉各种PE编辑查看工具,针对目标EXE程序新增对话框等,这也为后续PE病毒和恶意代码的攻防打下扎实基础。这些基础性知识不仅和系统安全相关,同样与我们身边的APP、常用软件及系统紧密联系,希望这些知识对您有所帮助,更希望大家提高安全意识,安全保障任重道远。

使用工具包括:

从2019年7月开始,我来到了一个陌生的专业——网络空间安全。初入安全领域,是非常痛苦和难受的,要学的东西太多、涉及面太广,但好在自己通过分享100篇“网络安全自学”系列文章,艰难前行着。感恩这一年相识、相知、相趣的安全大佬和朋友们,如果写得不好或不足之处,还请大家海涵!接下来我将开启新的安全系列,叫“系统安全”,也是免费的100篇文章,作者将更加深入的去研究恶意样本分析、逆向分析、内网渗透、网络攻防实战等,也将通过在线笔记和实践操作的形式分享与博友们学习,希望能与您一起进步,加油~

话不多说,让我们开始新的征程吧!您的点赞、评论、收藏将是对我最大的支持,感恩安全路上一路前行,如果有写得不好或侵权的地方,可以联系我删除。基础性文章,希望对您有所帮助,作者目的是与安全人共同进步,加油!

什么是PE文件?PE文件的全称是Portable Executable,意为可移植的可执行的文件,常见的EXE、DLL、OCX、SYS、COM都是PE文件,PE文件是微软Windows操作系统上的程序文件(可能是间接被执行,如DLL)。

EXE文件格式:

为什么要重点学习这种文件格式呢?

PE文件格式总体结构接着让我们来欣赏下PE文件格式总体结构图,包括:MZ头部、DOS stub、PE文件头、可选文件头、节表、节等。

本文的第二部分我们将对PE文件格式进行详细解析。比如,MZ头文件是定位PE文件头开始位置,用于PE文件合法性检测。DOS下运行该程序时,会提示用户“This Program cannot be run in DOS mode”。

PE文件格式与恶意软件的关系

PE文件解析常用工具包括:

该部分实验内容:

PE文件结构如下图所示,我推荐大家使用010Editor工具及其模板来进行PE文件分析。MZ头部+DOS stub+PE文件头+可选文件头+节表+节

(1) 使用010Editor工具打开PE文件,并运行模板该PE文件可分为若干结构,如下图所示。

000000B0指向PE文件头开始位置。

(4) PE文件头(0b0h-1a7h)该部分包括PE标识、映像文件头、可选文件头。

010Editor使用模板定位PE文件各节点信息。

PE文件可选文件头224字节,其对应的字段信息如下所示:

(5) 节表(1a8h-21fh)

该结构包括3个节,对应上图的3个struct IMAGE_SECTION_HEADER,即“.test”、“.rdata”、“.data”节,其偏移地址对应下图紫色区域,分别是400、600、800的位置。

(6) 3个节

注意,代码节“.text”前46H为数据,后面全是0位填充值,为了实现文件的200H对齐,所以代码节是400H到5ffH。

010Editor打开如下图所示:

详细标注信息如下图所示:(图引自HYQ同学,再此感谢)

(8) 数据节数据节实际大小58h,对齐后大小200h,地址为800h-9ffh,包括对话框弹出的具体内容。

第一步,打开OD加载PE文件。OD是一款PE文件动态调试器,此时程序断点自动停止在程序入口点00401000H位置。

在010Editor中,我们可以看到,该PE程序基地址是400000h,程序入口地址是1000h,两个相加为加载至内存中的地址,即401000h。

第二步,动态调试程序。当我们双击地址位置,则可以下断点且变红,比如0040100Fh。

接着查看对应调试快捷键,F7是单步步入,F8是单步步过。

我们直接按F8单步步过,此时的位置会CALL一个MessageBoxA函数。

直接单步步过,此时会弹出第一个对话框,点击“确定”按钮。

第三步,动态调试程序之数据跟随。接着我们看左下角部分的内存数据,在该区域按下“Ctrl+G”在数据窗口中跟随,输入基地址400000。

此时可以看到加载到内存中的数据,可以看到该数据与010Editor打开的PE文件数据一致的。

接着继续按F8单步步过弹出第二个窗口。

右上角是它寄存器的值,包括各个寄存器中的数据,我们实验中主要使用的寄存器包括EAX、ECX、EDX、EBX等。

接着步过0040102E,它是退出进程ExitProcess的位置,此时进程已经终止,如下图所示。

实验讲到这里,使用OD动态调试的PE文件的基础流程就讲解完毕,后续随着实验深入,我们还会使用该工具。

使用010Editor修改该程序,使得该程序仅弹出第二个对话框。思路为:修改程序的入口点地址。

第一步,确定程序入口点地址。前面我们用010Editor(或PEView)确定了可选文件头中Adress od Entry Point这一项,里面的值是1000h,这个是RVA相对便宜地址,偏移在D8处大小为4字节。装载到内存后,程序入口点应该是401000h。

第二步,确定第二个对话框的偏移地址。然后看到OD里,为第二个call做传入参数的push语句从401016开始,故我们将1000改为1016即可弹出第二个窗口。

第三步,利用PE编辑工具修改程序入口地址。注意,可以在PE模板中修改该值,将AddressOfEntryPoint修改为1016h。

第四步,双击运行仅弹出第二个对话框。

实验内容如下:

在文件中的引入表结构:IMAGE_IMPORT_DESCRIPTOR

在内存中的引入表结构:IMAGE_IMPORT_DESCRIPTOR

ImageBase: PE文件在内存中的优先装载地址。RVA地址:Relative Virtual Address,相对虚拟地址,它是相对内存中ImageBase的偏移位置。

比如PE文件头(IMAGE_NT_HEADERS)中,AddressOfEntryPoint为1000h,基地址为400000h。

下面是导入表信息:

第一条指令在内存中的地址计算方法如下图所示:

(2) 使用stud_PE查看文件属性该软件用于显示头部、DOs、区段、函数等信息,包括导入表、导出表等。

显示对应的3个节信息。

显示该EXE程序加载的两个DLL文件及函数。

在Ordinal Table找到序号(Value)01DD项,Data为01DC;而由于Ordinal Table中Data从0开始,故在Address Table中找到第01DC+1,即01DD项。

Address Table中01DD项的Data为407EA,也即MessageBoxA的RVA(相对虚拟地址)。

第一步,使用OD打开目标PE文件。如下图所示,包括第一个对话框、第二个对话框和退出进程。

第二步,修改数据区“.data”。

注意,从下图所示的位置开始修改,地址为0040 3059,需要留一个00字符,表示截断符。同样,title和text之间也要用00隔开。

右键选择“二进制”->“编辑”,其快捷键为Ctrl+E。

输入标题“武汉大学信安病毒实验”。

此时标题已经成功写入,接着空一个00,从下图所示位置接着写入正文内容,地址为0040 306A。

接着写入内容,如下图所示。

增加内容如下图所示:

注意,现在我们只是写入内存,而没有写入PE文件中。

第三步,选中新增内容,右键点击“复制到可执行文件”。

此时显示如下图所示,成功复制到PE文件中。

第四步,修改代码段。我们需要在代码段第二个对话框之后插入新的数据,从而弹出第三个对话框。需要将下图阴影部分整体后移。

首先,在0040101B位置进行数据跟随。

数据跟随显示如下图所示,代码段中每个弹框是22字节,从“68 40”开始,共计两个弹框。

接着我们将退出函数的所有字节复制出来,为了整体后移。6A 00 E8 01 00 00 00 CC FF 25 00 20 40 00 FF 25 0C 20 40 00 FF 25 08 20 40

接着空22字节用于填写第三个对话框信息,将复制的二进制数据粘贴出来(Ctrl+E),如下图所示。

将第一个对话框22字节代码复制至第三个对话框,如下图所示:

第五步,修改.text段。第二个栈的参数是它的Title,需要将偏移地址设置为对应的位置。

右键“数据窗口中跟随”->“立即数”。

第三个窗口标题的地址修改为“00403059”。

Ctrl+E修改为59。

修改第三个窗口Text地址为“0040306A”。

修改如下图所示:

第七步,保存文件。选择“复制到可执行文件”->“所有修改”按钮。

点击“全部复制”。

最终保存修改的PE文件。

运行PE文件,成功弹出第三个框。

新增的内容如下图所示:

注意:

后续将学习PE文件图标修改、对话框分析、EXE解析、加壳解密等。希望这系列文章对您有所帮助,同时真的感觉自己技术好菜,要学的知识好多。未知攻焉知防,人生漫漫其路远兮,作为初学者,自己真是爬着前行,感谢很多人的帮助,继续爬着,继续加油!

学安全一年,认识了很多安全大佬和朋友,希望大家一起进步。这篇文章中如果存在一些不足,还请海涵。作者作为网络安全和系统安全初学者的慢慢成长路吧!希望未来能更透彻撰写相关文章。同时非常感谢参考文献中的安全大佬们的文章分享,深知自己很菜,得努力前行。编程没有捷径,逆向也没有捷径,它们都是搬砖活,少琢磨技巧,干就对了。什么时候你把攻击对手按在地上摩擦,你就赢了,也会慢慢形成了自己的安全经验和技巧。加油吧,少年希望这个路线对你有所帮助,共勉。

解决用UltraISO将PE ISO镜像写入U盘后U盘变成FAT32,并隐藏启动分区

在搭载 HarmonyOS 的分布式终端上,可以保证“正确的人,通过正确的设备,正确地使用数据”。通过“分布式多端协同身份认证”来保证“正确的人”。通过“在分布式终端上构筑可信运行环境”来保证“正确的设备”。通过“分布式数据在跨终端流动的过程中,对数据进行分类分级管理”来保证“正确地使用数据”。正确的人在分布式终端场景下,“正确的人”指通过身份认证的数据访问者和业务操作者。“正确的人”是确保用户数

实现了解析三个头与虚拟地址偏移转文件偏移#include<Windows.h>#include<iostream>#include<stdio.h>#include<stdlib.h>#include<commdlg.h>usingnamespacestd;DWORDdwFileSize;BYTE*g_pFileImageBase=0;P

PE文件格式是微软Windows NT内核系列系统和 Win32子集中可执行的二进制文件格式。这种文件格式是微软基于COFF 文件格式的设计思想设计的。COFF (Common Object File Format,通用目标文件格出于兼容性的考虑。

IMAGE_EXPORT_DIRECTORYIMAGE_IMPORT_DESCRIPTORIMAGE_RESOURCE_DIRECTORY

(特殊时期,在家时间多一些,突然想到多年的公众号,重启试试,嗯就先每一天推荐一个软件吧)      微PE工具箱(WinPE)是一款非常好用的PE系统(独立的预安装环境),非常纯净,是装机维护得力的助手。安装简单,基本能一键操作,无任何广告推广,内核完整精简,启动也快速,集成很多装机维护所必需的第三方工具集,算是目前网上比较公认的最干净的PE工具箱。  &n

环境搭建QEMUqemu是一款可执行硬件虚拟化的虚拟机,与他类似的还有Bochs、PearPC, 但qemu具有高速(配合KVM)、跨平台的特性 qemu主要有两种运行模式:qemu-user 和 qemu-systemqemu-system 可以进行完整的系统仿真,而 qemu-user 只提供用户态仿真。安装 qemu-usersudo apt-get install qemu qemu-us

一丶为什么新增节.以及新增节的步骤 例如前几讲.我们的PE文件在空白区可以添加代码.但是这样是由一个弊端的.因为你的空白区节属性可能是只读的不能执行.如果你修改了属性.那么程序就可能出现问题.所以新增一个节可以实现我们的代码. 等等. 1.新增节的步骤 1.在最后一个节位置添加一个节.如果没有空白位

一丶简介 根据上一讲.我们为PE新增了一个节. 并且属性了各个成员中的相互配合. 例如文件头记录节个数.我们新增节就要修改这个个数. 那么现在我们要合并一个节.以上一讲我们例子讲解. 以前我们讲过PE扩大一个节怎么做. 合并节跟扩大节类似. 只不过一个是扩大. 一个是合并了. 合并节的步骤. 1.修

一丶为什么扩大节 上面我们讲了,空白区添加我们的代码.但是有的时候.我们的空白区不够了怎么办.所以需要进行扩大节. 扩大节其实很简单.修改节数据对齐后的大小即可. 并且在PE文件中添加0数据进行填充即可. 首先看一下我们的节表 二丶扩大节实战以及注意问题 PE扩大节的时候一般是最后一个节.原因是自己

一丶DOS头结构体 DOS头是在16位程序下使用的.所以不用全部关心.只需要关心第一个跟最后一个成员记住即可. DOS头大小是64个字节,十六进制是0x40 总结一下就是说. 4行只有第一行的前两个字节.以及最后一行的4个字节有用. WORD e_magic 这个成员是操作系统检查的MZ头. LON

一、PE文件基本结构上图便是PE文件的基本结构。(注意:DOS MZ Header和部分PE header的大小是不变的;DOS stub部分的大小是可变的。)二、Section 详解一个PE文件至少需要两个Section,一个是存放代码,一个存放数据。NT上的PE文件基本上有9个预定义的Section。分别 是:.text, .bss, .rdata, .data, .rsrc, .edata,

U盘破解XP管理员密码 方法1      其实破解Windows密码也很简单,工欲善其事、必先利其器。破解XP的登录密码,我们需要用到“ERD commander 2003”(简称ERD)这款软件,该软件一般内置于WinPE等系统恢复光盘中。但是光盘的面积太大,不适合携带,而小巧的U盘则是我们的最佳的选择。因此我们可以制作一款XP

一丶节表信息,PE两种状态.以及重要两个成员解析. 确定节表位置: DOS + NT头下面就是节表. 确定节表数量: 节表数量在文件头中存放着.可以准确知道节表有多少个. 节表是一个结构体数组.没一个节表表示了数据在哪,怎么存储. 下方是节的结构体 节表重要成员都标红了.我们知道.PE文件有两种状态

在8月底,C-NCAP(中汽研)发布了第二批碰撞测试结果,此次共有6款车型参加了测试,分别是福特福克斯三厢版,马自达3昂克赛拉,丰田RAV4,捷达VS5,比亚迪宋Pro DM和星途TXL,此次公布的结果中有两个值得特别注意,一是捷达VS5获得了唯一一个四星评价,二是星途TXL同样获得唯一超五星评价,接下来我们就来一一分析。昂克赛拉指导价:11.59-18.99万测试车型:2.0L自动致雅版成绩:8

你是否曾经开发过一个命令行工具,随着功能的增加,代码变得越来越臃肿?或者希望用户能够根据自己的需求扩展工具功能,而不需要修改核心代码?Cobra(命令行接口工具包)的插件系统正是为了解决这些问题而设计的。本文将深入探讨Cobra插件系统的架构设计与实现,帮助你构建一个可扩展的CLI工具。读完本文,你将能够:- 理解Cobra插件系统的核心概念- 掌握Cobra插件的设计原理- 学会如何实...

UV紫外相机的简单介绍和场景应用

我们为自学者编程的或初学java的小伙伴们准备了一整套完整的学习资源和文章,还有我自己在自学路上的一些总结和学习线路,希望能帮到小伙伴们,如果有什么疑问的地方也可以加小编的微信Java_Bczn,小编后期还会整理出更多的学习视频和每天一篇学习文章,赶紧关注我们吧。 下面是我自学java的线路希望能帮到你们:一.基础学习这个阶段你需要找一个好的基础学习视频,对着视频进行学习,每天严格要求自

THE END
0.PE文件格式详细解析(一)pe格式本文深入解析Windows下的PE文件格式,包括PE文件的种类、位置标识、整体结构等内容,并通过WinHex和PEtools等工具进行实例演示。 PE文件格式详细解析 本篇文章将会详解Windows操作平台下PE文件格式,同时以具体的示例辅佐大家更好理解PE文件格式。本文章主要使用到以下两个工具:WinHex:用于将PE文件以16进制和ASCII码显示;PEjvzquC41dnuh0lxfp0tfv8|gkzooa=<976>:68ftvkimg8igvcomu864336:;>5
1.PE文件结构详解本文深入解析PE文件结构,包括DOS头部、PE头部、节表、节数据等内容,阐述PE文件在磁盘与内存中的状态差异,以及如何利用PE文件进行代码修改、节的扩展与合并等高级操作。 PE 视频学习 1.认识PE 首先,先介绍什么是可执行文件(executable file):可以由操作系统进行加载执行的文件 jvzquC41dnuh0lxfp0tfv8vsa7764:7421gsvrhng1jfvjnnu1734997:9>
2.PE文件结构详解针对在硬盘上存储文件中的地址,称为原始存储地址或物理地址,表示距离文件头的偏移。 针对加载到内存以后映象中的地址,称为相对虚拟地址(RVA),表示相对内存映象头的偏移。 RVA 是当PE 文件被装到内存中后,某个数据位置相对于文件头的偏移量。 举个例子:如果 Windows 装载器将一个PE 文件装入到 00400000h 处的内jvzquC41z|4bnr~wp0ipo8sgyu524;;9
3.PE文件整体结构介绍吾爱破解1、本文章使用的将PE文件编译为十六进制字节码格式用的是C32Asm,但大家实际操作还是推荐使用WinHex,工具均取自于爱盘。2、这篇文章主要是讲PE文件的整体结构,还有数据目录表没有具体讲解,数据目录之后会以单独的形式一个个讲解。PE文件是可移植的可执行的文件,什么是可执行文件?可执行文件是为进程创建所服务的,jvzquC41yy}/7;uqlkk/ew4vjtkbf6698796966/30nuou
4.PE文件详解(C制作PE格式解析器)pe文件解析器本文介绍了PE文件的基本结构,包括DOS头部、PE文件头、节表等,并深入探讨了导入表和导出表的工作原理。此外,还提供了一个使用C语言编写的简易PE文件解析器示例。 0x00:前言 PE文件可以说是在逆向的各个领域都有涉及,特别是病毒领域,如果你是一名病毒制造者,那你肯定是对PE文件有详细的了解,那么这里我就详细介绍一jvzquC41dnuh0lxfp0tfv8HjctrfuPtfZ1gsvrhng1jfvjnnu1>97B<625
5.PE文件格式分析pe文件格式详解本文详细解析了PE文件的基本概念、结构分析、区块对齐、文件偏移与RVA转换、输入表与输出表、基址重定位等核心内容,提供了深入理解PE文件的全面指南。 一、PE的基本概念 PE(Portable Execute)文件是Windows下可执行文件的总称,常见的有DLL,EXE,OCX,SYS等,事实上,一个文件是否是PE文件与其扩展名无关,PE文件可以是任何jvzquC41dnuh0lxfp0tfv8xjkvjci8ftvkimg8igvcomu89;95:5;>
6.PE文件格式详细解析(二)pe头的大小本文深入解析PE文件结构,包括NT头、可选头、节区表等关键组件,揭示PE文件如何组织代码与数据。 3.PE文件的结构 3.2 NT头 由一个IMAGE_NT_HEADERS结构组成,该结构中包含了PE文件被载入内存时需要用到的重要域。通过DOSheader中的e_lfanew,可以直接定位到真正的PE Header部分。该结构体的大小为0xf8字节。 jvzquC41dnuh0lxfp0tfv8|gkzooa=<976>:68ftvkimg8igvcomu86433715@:
7.PE文件结构解析DOS Stub(存根)实际上是个有效的 MS-DOS .EXE 或者.COM 程序(如果文件格式不对会报错),在不支持 PE文件格式的操作系统中,它将通过简单调用中断21h服务9来显示字符串"This program cannot run in DOS mode"或者根据程序员自己的意图实现完整的 DOS 代码。它的大小一般不能确定。利用链接器(linker)的 /STUB:fijvzquC41dnuh0lxfp0tfv8~i{cthi~fpi1gsvrhng1jfvjnnu1;33?;:4
8.PE文件结构详解快速的计算方法是从文件的偏移0x3C(第59字节)处获得一个4字节的PE文件签名的偏移地址,这个偏移地址就是本文所定义的DOS头的大小。NT头在32位系统是244字节,在64位系统是260字节。节头的大小由NT头的第1部分的NumberOfSections(节的数量)*40字节(每个节头是40字节)得出。如此,DOS头、NT头、节头3个头的大小jvzquC41dnuh0lxfp0tfv8vkokthaƒmcpi5bt}neng5eg}fknu5859>;2;
9.C++PE文件格式解析类(轻松制作自己的PE文件解析器)pe文件绑定(c++本文介绍了一个用C++封装的高效PE文件格式解析类,提供了丰富的接口函数,便于理解和使用。适用于学习PE文件结构及开发PE文件解析软件。 PE是Portable ExecutableFileFormat(可移植的执行体)简写,它是目前Windows平台上的主流可执行文件格式。 PE文件中包含的内容很多,具体我就不在这解释了,有兴趣的可以参看之后列出的参考jvzquC41dnuh0lxfp0tfv8ucuenfp8ftvkimg8igvcomu8:286654:
10.Windows基础知识PE结构之初始PE当执行体在支持PE文件结构的操作系统中执行时,PE装载器将从IMAGE_DOS_HEADER结构的e_lfanew字段里找到NT头的起始偏移量,用其加上基址,得到PE文件头的指针。 在C++中Signature会被预处理为IMAGE_NT_SIGNATURE #define IMAGE_NT_SIGNATURE 0x00004550// PE00 FileHeader 文件头,表现jvzquC41z|4bnr~wp0ipo8sgyu526=98
11.有效利用PE文件内部空间植入用户程序windowspe广告应用植入本文介绍了一种利用PE文件内部空间植入用户程序的方法。通过在PE文件的节间空隙存储额外代码,实现代码的隐蔽植入。该技术适用于寄生型病毒程序,能够有效避免因文件体积增大而被轻易检测。 【文章标题】: 有效利用PE文件内部空间植入用户程序 【文章作者】: 空手剑客 jvzquC41dnuh0lxfp0tfv8hpalkwqwx1ctzjeuj1fgzbkux143624A<
12.PE文件查看器(PeViewer)电脑版下载2025最新文件分割口碑排行榜 PDF猫分割合并软件 小说分割器(TXT文本) peview.exe Ultra Video Splitter 下载服务协议见页面底部 基本简介 PE文件查看器(PeViewer)是一款强大的PE文件查看器,PeViewer作为国人研制开发十分的强大并便捷,下载使用这款PeViewer文件,可以任意的dll等文件,马上下载PeViewer吧。 jvzq<84yyy4ppunpgfuxp7sgv1yph}4;997777mvo
13.LordPE下载LordPE(PE文件编辑器)v1.4绿色汉化版下载LordPE v1.4绿色汉化版是一款非常好用PE文件编辑工具,winwin7小编听闻该软件在网上享有“最好的PE文件修改工具”的称号!LordPE是一款相当专业功能强大的pe文件修改器工具,支持用户快速方便的修改pe文件,并且软件是完全汉化的,我们使用起来也完全不会因为不懂英文而烦恼,如有需要的用户快来下载这款反编译预处理的利器jvzq<84yyy4xkw|kp94dqv4uqhz06<950jznn
14.逆向基础PE文件结构windowspe结构本文详细介绍了PE文件的结构,包括DOS头、NT头、文件头、可选PE头、区段头等关键部分,并通过代码示例展示了如何解析这些头信息。同时,解释了PE文件在Windows平台上的执行过程,如DOS头的兼容性、PE头的标志、可选PE头中的入口点和内存基址等。此外,还涵盖了导出表、导入表、重定位表和TLS(线程局部存储)的概念及其jvzquC41dnuh0lxfp0tfv8FrrYnjvndUvcx0c{ykenk0fnyckny03;;295:18
15.pe文件结构PE文件的全称是Portable Executable,意为可移植的可执行文件,是微软Windows操作系统上广泛使用的程序文件格式(包括间接被执行的文件,如DLL)。PE文件被称为“可移植的”是因为在所有平台(如x86、Alpha、MIPS等)上实现的Windows NT及其后续版本(如Windows 95、Windows 2000、Windows XP、Windows Vista、Windows 7、WindowsjvzquC41dnuh0lxfp0tfv87525e93:;757>0c{ykenk0fnyckny03=5992>56
16.深入解析WindowsPE文件结构及其关键组成部分本文详细介绍了WindowsPE文件的基本概念,包括PE文件头、DOS头部、区块数据、虚拟地址和RVA等关键部分,展示了PE文件的内存映射和地址转换机制,以及如何通过API获取模块信息。 部分PE文件结构 一.PE文件基本概念 ​ PE文件是windows系统中遵循PE结构的文件,比如以.exe .dll .ocx .sys .com为后缀名的文件以及系统驱动jvzquC41dnuh0lxfp0tfv8r2a9;36<8841gsvrhng1jfvjnnu1748@76;6;
17.PE文件(一)PE结构概述PE文件(一)PE结构概述 本文详细介绍了Windows操作系统下的PE结构文件,包括.exe文件的内存分配、虚拟内存、PE文件的节和节表、DOS头与NT头的作用,以及编译器对文件对齐的影响。展示了不同操作系统文件结构的区别,以及如何手动解析PE文件的DOS头和NT头。 PE结构简述jvzquC41dnuh0lxfp0tfv87523e8:A8:86=0c{ykenk0fnyckny03<<;5;827
18.详解PE文件(一):PE文件基础概念详解PE文件(一):PE文件基础概念 PE(Portable Executable)文件格式是Windows操作系统中用于可执行文件(.exe)、动态链接库(.dll)和系统驱动程序(.sys)的标准文件格式。它是Windows平台上软件执行的基础,理解PE文件格式对于系统编程、逆向工程、恶意软件分析和软件安全等领域都很重要。jvzquC41dnuh0lxfp0tfv8lggukiq€ftf461294ctvodnn4fgvgjn|4376=53@55
19.PE文件格式详解:深入理解Windows可执行文件结构// 执行PE文件时,PE装载器先创建进程,再将文件载入内存,// 然后把EIP寄存器的值设置为ImageBase+AddressOfEntryPoint''// PE文件的Body部分被划分成若干节段,这些节段储存着不同类别的数据。'DWORD SectionAlignment;'// SectionAlignment指定了节段在内存中的最小单位, -> 00 00 10 00'DWORD FileAlignment;'//jvzquC41dnuh0lxfp0tfv8|gkzooa?75;3=478ftvkimg8igvcomu86676;82B7
20.PE文件结构剖析基本结构pe结构主模块基址PE文件衍生于早期建立的COFF文件格式,EXE和DLL文件实际上用的是同一种文件格式,唯一的区别就是用一个字段标识出这个文件是EXE还是DLL。64位Windows格式为PE32+。只是简单的将以前的32位字段扩展到64位。 重要要点 要认识到PE文件不是作为单一内存映射文件被装入内存的。 jvzquC41dnuh0lxfp0tfv8vsa669;9<781gsvrhng1jfvjnnu1>3:>>9;;