PE文件学习系列一为什么是PE
Q Q:408365330 E-Mail:egojit@qq.com
PE概述:
在从写程序开始就知道exe后缀名。当然不是程序员,看到*.exe这样的都知道是window下的可执行文件。当时有多少人深入去想过这是什么呢??为什么直接双击就会运行??当然站在程序员角度,.exe这个后缀名其实也只是文件,从本质上讲它和.doc文件没什么区别,都是文件。这个就是被称为PE文件的特殊文件,也许,这个时候包括程序员都会说。doc我非常了解,但是PE文件我不了解。其实PE很简单,但是PE又很复杂,简单就是它就是一个文件,复杂,复杂在这种文件有复杂的组织结构。
熟悉PE文件能干什么:
1.你可以用来吹牛,你可以和别人吹你知道exe的本质(当然这个只是开玩笑)
2.通向windows牛人的其中重要的一步(牛人不是多么牛XX,牛人就是勤勤恳恳,埋头像牛一样耕耘技术的人)
2.你可以了解软件加密和加壳的思想,破解最基本就是要了解PE结构
3.当然往另一方面说,这是了解很熟悉Windows系统的第一步,我说的了解和熟悉不是会用Windows。exe程序怎么映射到内存,DLL导入……
4.很多时候也是软件逆向工程的基本思想
5.想成为Windows黑客么??那你必须的精通PE文件
…………
当然学习PE的好处多多,这些当然还有很多是我们熟悉PE文件的绝对理由。
首先我们一起欣赏下PE文件和windows内存的映射关系图
看看这个文件我们知道PE文件就是有这些部分组成的。从下往上看:包括DOS头,PE头,PE表项,PE表内容。这些可以分的很细很复杂。后续我继续学习
。后面我将对这这个图进行学习。
我为什么学习PE:
理由很简单,我喜欢编程。
PE文件学习系列一为什么是PE的更多相关文章
- PE文件学习系列二 DOS头分析
合肥程序员群:49313181. 合肥实名程序员群 :128131462 (不愿透露姓名和信息者勿加入)Q Q:408365330 E-Mail:egojit@qq.com PE文件结 ...
- PE文件学习系列笔记四-C++实现PE文件的分析
合肥程序员群:49313181. 合肥实名程序员群:128131462 (不愿透露姓名和信息者勿加入) Q Q:408365330 E-Mail:egojit@qq.com 综述: 首 ...
- PE文件学习系列三-PE头详解
合肥程序员群:49313181. 合肥实名程序员群:128131462 (不愿透露姓名和信息者勿加入) Q Q:408365330 E-Mail:egojit@qq.com 最近比较忙 ...
- 【学习】Windows PE文件学习(一:导出表)
今天做了一个读取PE文件导出表的小程序,用来学习. 参考了<Windows PE权威指南>一书. 首先, PE文件的全称是Portable Executable,可移植的可执行的文件,常见 ...
- PE文件学习(1)DOS和NT
大致结构 DOS头和NT头之间通常还有个DOS Stub DOS头 DOS头的作用是兼容MS-DOS操作系统中的可执行文件 一般没啥用 记录着PE头的位置 DOS头定义部分 typedef struc ...
- PE文件学习(2)导入表导出表
转自:evil.eagle https://blog.csdn.net/evileagle/article/details/12176797 导出表是用来描述模块中的导出函数的结构,如果一个模块导出了 ...
- 深入学习PE文件(转)
PE文件是Win32的原生文件格式.每一个Win32可执行文件都遵循PE文件格式.对PE文件格式的了解可以加深你对Win32系统的深入理解. 一. 基本结构. 上图便是PE文件的基本结构.(注意:DO ...
- PE文件解析 基础篇
PE文件解析 基础篇 来源 https://bbs.pediy.com/thread-247114.htm 前言 之前学习了PE格式,为了更好的理解,决定写一个类似LoadPE的小工具. 编译器是VS ...
- PE 文件
一.PE文件基本结构 上图便是PE文件的基本结构.(注意:DOS MZ Header和部分PE header的大小是不变的:DOS stub部分的大小是可变的.) 二.Section 详解 一个PE文 ...
随机推荐
- Java maven安装GDAL
1. 使用编译好的安装jdal http://www.gisinternals.com/release.phpgdal-111-1800-x64-core.msi下载地址:http://downloa ...
- Java 使用jaxp删除节点
<?xml version="1.0" encoding="UTF-8" standalone="no"?> <perso ...
- Web动画API教程2:AnimationPlayer和Timeline
本文转载: Web动画API教程2:AnimationPlayer和Timeline
- C# 程序中的变量
变量命名规则: 不能是c#关键字 由字母,数字,下划线构成 第一个不能是数字 不要超过31个字符 不能是函数名,类名 c#是大小写敏感的. 本质上,数据类型就是他存储方式和他参与运算的抽象. c#的数 ...
- wex5 教程 之 图文讲解 bind-css和bind-sytle的异同
wex5作为网页开发利器,在前台UI数据交互设计中大量使用了绑定技术,即官方视频教学中也提到了KO,实质是数据绑定与追踪.在前台组件的属性中,为我们提供了两个重要的样式绑定属性,bind-css和bi ...
- 如何生成DLL文件
1.打开项目工程,点击Rebuild 2.Rebuild成功后,打开该项目所在文件目录 3.在路径里,在bin->Debug文件下可以看到刚生成成功的dll文件.
- 控制边框颜色:《CSS3 Border-color》
CSS3中有关于Border的属性一共有三个:圆角border-radius,图片边框border-images,边框多颜色border-color,其中圆角border-radius是常用的一个属性 ...
- 【译】微型ORM:PetaPoco【不完整的翻译】
PetaPoco是一款适用于.Net 和Mono的微小.快速.单文件的微型ORM. PetaPoco有以下特色: 微小,没有依赖项……单个的C#文件可以方便的添加到任何项目中. 工作于严格的没有装饰的 ...
- 【前端】String.prototype.match() 用法详解
var str="1 plus 2 equal 3" // 正则表达式 console.log(str.match(/\d+/g)); // ["1", &qu ...
- [问题2014A11] 解答
[问题2014A11] 解答 我们需要利用以下关于幂等阵判定的结论,它是复旦高代书第 142 页的例 3.6.4: 结论 设 \(A\) 为 \(n\) 阶方阵, 则 \(A^2=A\) 当且仅当 ...