PE文件介绍 (1)
2024-10-09 04:58:35
PE文件介绍
PE文件主要是windows操作系统下使用的可执行文件格式,PE文件是指32位的可执行文件也叫做PE32,64位可执行文件叫做PE+或者PE32+
PE文件格式
种类 | 主扩展名 |
---|---|
可执行类型 | EXE,SCR |
驱动程序类型 | SYS,VXD |
库系列 | DLL,OCX,CPL,DRV |
对象文件系统 | OBJ |
PE文件种类
严格地说OBJ(对象)文件之外的所有文件都是可执行的。DLL,SYS文件虽然不能直接在shell中运行,但是可以使用其他方法(调试器,服务等)执行。
VA&RVA
VA 指的是进程虚拟内部的绝对地址,RVA相对虚拟地址,指从某个基准位置(ImageBase)开始的相对地址VA与RVA满足下面的换算关系。
RVA+ImageBase=VA
PE内部信息大多以RVA形式存在的。原因在于,PE文件(主要是DLL)加载到进程虚拟内存的特定位置时,该位置可能已经加载了其他的PE文件(DLL)。此时必须通过重定位将其加载到其他位置。如果使用VA,则无法正常访问。因此使用RVA来定位,即使发生了重定位,只要相对于基准位置的相对地址没有变化,就能正常访问。
32位window OS中,各进程分配有4GB的虚拟内存,因此进程中VA值的范围是 00000000~ FFFFFFFF
最新文章
- win10 右键菜单添加Git Hash Here
- [Java] HashMap的用法
- MVC架构和SSH框架对应关系
- [JavaScript] js实现简单的代码运行框
- 动态插入图片到 svg 中
- Performance Monitor采集性能数据
- 移动端 canvas插入多张图片生成一张可保存到手机图片
- CSS3属性——“box-flex”
- github windows pycharm 设置
- centos7下kubernetes(12。kubernetes-service)
- Confluence 6 系统运行信息中的 JVM 内存使用情况
- No.02——第一次使用Android Studio,并创建出Hello World
- Autofac创建实例的方法总结[转]
- 配置SpringBoot-从日志系统配置说起
- Day01 html详解
- 浏览器组成、线程及event loop
- nginx日志配置(cookie,header,post等字段记录)
- 通过文件路径读取CSV表格内的数据
- web安全-xss攻击
- python模块详解 YAML和configparser