news 2026/4/15 16:28:22

PE导出表三表EAT ENT EIT 三表逻辑解析

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
PE导出表三表EAT ENT EIT 三表逻辑解析

目录

🧠 PE 导出表三表逻辑完全解析

📘 核心理解

🔍 逻辑拆解

① 函数地址表(EAT)

② 名称表(ENT)

③ 序号表(EIT)

④ 名字 → 序号 → 地址的完整路径

🎯 核心结论

🖇️ ASCII 流程图展示三表通讯逻辑

🧩 最终确认:三表关系完全清晰

✅ 修正关键点:

✅ 完整关系链:

✅ 判断逻辑 if (pEIT[index] == i) 的含义:

📊 可视化关系图(ASCII版)

🎯 完全吃透的总结


🧠 PE 导出表三表逻辑完全解析

📘 核心理解

序号(Ordinal)不是名称表的索引,而是连接名称表(ENT)和函数地址表(EAT)的桥梁。

三者关系可以总结为:

名称表 ENT[index] → 序号表 EIT[index] → 函数地址表 EAT[ordinal]

序号就是媒介,让名字和地址正确对应。


🔍 逻辑拆解

① 函数地址表(EAT)

  • 按序号排列

  • 每个序号对应一个函数地址

  • 表示:EAT[i]= 第 i 个序号对应的函数地址

② 名称表(ENT)

  • 按字母顺序排列函数名称

  • 不存序号,只存名字

  • 表示:ENT[index]= "Add" / "Sub" / "Mul" / ...

③ 序号表(EIT)

  • 连接名称表和地址表

  • 保存 ENT[index] 对应的序号(ordinal)

  • 表示:EIT[index]= 名称表对应的序号

④ 名字 → 序号 → 地址的完整路径

  1. 从名称表获取名字:ENT[index]

  2. 查序号表得到序号:EIT[index] = ordinal

  3. 用序号查地址表:EAT[ordinal]= 函数地址

逻辑链条清晰:

ENT[index] → EIT[index] = i → EAT[i]

也就是if (EIT[index] == i)判断的真正含义:

名称表的名字是否对应函数地址表第 i 项?如果是,找对了。


🎯 核心结论

  • EAT:序号 → 函数地址

  • ENT:字母序 → 函数名称

  • EIT:名字 → 序号

  • 序号是桥梁,三者通过序号正确关联

这个机制就是 PE 导出表运作的核心。


🖇️ 流程图展示三表通讯逻辑

┌───────────────┐ │ 名称表 ENT │ │ index = 0..n │ │ "Add" "Div" ..│ └──────┬────────┘ │ 通过 EIT[index] ▼ ┌───────────────┐ │ 序号表 EIT │ │ index = 0..n │ │ 0, 1, 3, ... │ └──────┬────────┘ │ 序号 i 对应地址 ▼ ┌───────────────┐ │ 函数地址表 EAT │ │ i = 0..n │ │ addr(Add) ... │ └───────────────┘
  • 每个名称通过 EIT 得到序号

  • 序号指向 EAT 中的实际函数地址

  • 判断公式if (EIT[index] == i)验证名称对应地址是否正确

三张表的关系直观化呈现:名称表 → 序号表 → 地址表







🧩 最终确认:三表关系完全清晰

✅ 修正关键点:

序号表(EIT)不是名称表的索引,而是名称表到序号的映射桥梁

✅ 完整关系链:
名称表 ENT[index] → 函数名称(如"Add") ↓ 通过 EIT[index] 获取序号 序号 i = EIT[index] ↓ 通过 EAT[i] 获取地址 函数地址 = EAT[i]
✅ 判断逻辑if (pEIT[index] == i)的含义:

"名称表中第index个名称对应的序号,是否等于函数地址表中的第i个序号?"

如果是,说明找到了名称表ENT[index]对应的函数地址EAT[i]。


📊 可视化关系图(ASCII版)

id: export-table-relationship name: PE导出表三表关系图 type: markdown content: |- # PE导出表三表关系示意图 ``` ┌─────────────────┐ ┌─────────────────┐ ┌─────────────────┐ │ 名称表 (ENT) │ │ 序号表 (EIT) │ │ 函数地址表 (EAT) │ ├─────────────────┤ ├─────────────────┤ ├─────────────────┤ │ index=0: "Add" │───→│ index=0: 2 │───→│ 序号=2: 0x1000 │ │ index=1: "Div" │───→│ index=1: 1 │───→│ 序号=1: 0x2000 │ │ index=2: "Mul" │───→│ index=2: 3 │───→│ 序号=3: 0x3000 │ │ index=3: "Sub" │───→│ index=3: 0 │───→│ 序号=0: 0x4000 │ └─────────────────┘ └─────────────────┘ └─────────────────┘ ↑ ↓ ↓ │ 映射关系桥梁 地址按序号排列 │ (名称→序号) (序号→函数地址) │ 名称按字母序排列 ``` ## 🔄 查找流程示例:查找"Div"函数 1. 在ENT中找到"Div"位于index=1 2. 通过EIT[1]获取序号=1 3. 通过EAT[1]获取函数地址=0x2000 ## 🎯 核心机制 - **ENT**: 名称→索引(按字母序) - **EIT**: 索引→序号(映射桥梁) - **EAT**: 序号→地址(按序号排列)

🎯 完全吃透的总结

PE导出表通过序号表(EIT)作为媒介,将按字母序排列的名称表(ENT)与按序号排列的函数地址表(EAT)正确关联,实现了"名称→序号→地址"的完整映射链条。

这个机制完美解决了:

  • 名称查找效率(ENT按字母序)

  • 地址存储效率(EAT按序号紧凑排列)

  • 两者之间的正确映射(EIT作为桥梁)

最后这个点和免杀劫持hook以及shellcode 二进制漏洞 逆向相关看的明白就看看不明白就说明水平还不够哟

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/14 1:01:35

构建高效计算机专业课记忆系统:模块化方法论指南

构建高效计算机专业课记忆系统:模块化方法论指南 【免费下载链接】CS-Xmind-Note 计算机专业课(408)思维导图和笔记:计算机组成原理(第五版 王爱英),数据结构(王道)&…

作者头像 李华
网站建设 2026/4/4 12:02:45

探索 A*与 DWA 融合:小白也能懂的路径规划算法之旅

AStar搜索算法,A*和DWA算法融合,适合小白学习哦 程序效果如图所示最近在研究路径规划算法,发现 A*和 DWA 算法都各有千秋,要是把它们融合起来,那效果简直绝了。今天就来跟各位小白分享下这俩算法以及它们融合后的神奇之…

作者头像 李华
网站建设 2026/4/15 1:19:32

计算机毕设java校园志愿服务管理系统 基于Java的校园志愿活动信息化管理系统设计与实现 Java技术驱动的校园志愿服务管理平台开发

计算机毕设java校园志愿服务管理系统a9y349(配套有源码 程序 mysql数据库 论文) 本套源码可以在文本联xi,先看具体系统功能演示视频领取,可分享源码参考。随着互联网技术的飞速发展,校园志愿服务管理的方式也在不断革新。传统的纸…

作者头像 李华
网站建设 2026/4/9 19:28:39

企业级可观测平台哪家好:全球6家智能可观测厂商实力排名

Gartner预测,到2027年,超过50%的企业将使用可观测性技术来优化业务决策,这一比例远高于2022年的不足20%。现代分布式架构、微服务、容器化和多云环境使得传统的监控手段已无法满足企业对系统状态全面洞察的需求。 面对市场上众多的可观测解决…

作者头像 李华
网站建设 2026/4/5 6:34:53

Android RecyclerView视频自动播放终极指南:5分钟快速集成

Android RecyclerView视频自动播放终极指南:5分钟快速集成 【免费下载链接】AutoplayVideos Android library to auto-play/pause videos from url in recyclerview. 项目地址: https://gitcode.com/gh_mirrors/au/AutoplayVideos 想要在Android应用中实现类…

作者头像 李华
网站建设 2026/4/15 1:15:42

Zen Browser:重新定义高效浏览的桌面伴侣

Zen Browser:重新定义高效浏览的桌面伴侣 【免费下载链接】desktop 🌀 Experience tranquillity while browsing the web without people tracking you! 项目地址: https://gitcode.com/GitHub_Trending/desktop70/desktop 在信息爆炸的时代&…

作者头像 李华