首页
社区
课程
招聘
[原创]一个C++的PE文件操作类
发表于: 2015-12-6 18:11 8232

[原创]一个C++的PE文件操作类

2015-12-6 18:11
8232

最近也研究了一波PE文件结构,自己写了一个PE结构的类,不敢私藏,分享给大家了。
只写了一个基类,如果有需要扩展的同学自己继承基类,还是挺方便的。

//PeReadWrite.h 文件
#pragma once
class PeReadWrite
{
private:
  HANDLE hFile;
  HANDLE hMapping;
  PVOID pBaseAddr;
public:
  
  //构造函数
  PeReadWrite();
  //加载文件
  bool loadFile(CString filePath);
  //返回载入的地址
  DWORD getBaseAddr();
  //判断是否是PE文件
  bool isPeFile();
  //获取DOS头
  IMAGE_DOS_HEADER *getDosHeader();
  //获取NT头
  IMAGE_NT_HEADERS *getNtHeader();
  //获取节表起始
  IMAGE_SECTION_HEADER *getSectionStart();
  //获取导入表
  IMAGE_IMPORT_DESCRIPTOR *getImport();
  //获取导出表
  IMAGE_EXPORT_DIRECTORY *getExport();
  //获取重定位
  IMAGE_BASE_RELOCATION *getReLocation();
  //获取资源
  IMAGE_RESOURCE_DIRECTORY *getResource();
  //计算RvaToVa
  DWORD RvaToVa(DWORD rva);
  //关闭一系列操作
  void UnFile();
};

[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)

收藏
免费 3
支持
分享
最新回复 (10)
雪    币: 11
活跃值: (35)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
2
我需要转正..
2015-12-6 18:22
0
雪    币: 14
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
2015-12-7 16:10
0
雪    币: 47147
活跃值: (20460)
能力值: (RANK:350 )
在线值:
发帖
回帖
粉丝
4
kx够了,直接兑换邀请码转正。
2015-12-12 22:32
0
雪    币: 11
活跃值: (35)
能力值: ( LV3,RANK:30 )
在线值:
发帖
回帖
粉丝
5
感谢老大,话说我KX怎么突然变50了?之前一直30多
2015-12-13 15:46
0
雪    币: 8
活跃值: (33)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
6
make一下 回头看
2015-12-13 16:18
0
雪    币: 218
活跃值: (40)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
我也是正在学习pe,很好借鉴
2017-8-31 17:27
0
雪    币: 9
活跃值: (180)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
8
很好
2018-1-8 22:39
0
雪    币: 300
活跃值: (2477)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9
mark
2018-1-15 10:25
0
雪    币: 4390
活跃值: (4378)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
10
ylCplus 我需要转正..
//获取节表起始
IMAGE_SECTION_HEADER*  PeReadWrite::getSectionStart(){
    return  (IMAGE_SECTION_HEADER*)((DWORD)getNtHeader()  +  sizeof(IMAGE_NT_HEADERS));
}

这个有问题的,百度有资料.    比如PE头移位后的情况

百度搜索      PE  节表IMAGE_SECTION_HEADER的正确定位方法
2018-1-15 11:08
0
雪    币: 441
活跃值: (1055)
能力值: ( LV2,RANK:15 )
在线值:
发帖
回帖
粉丝
11
mark  以留后用!
2018-1-17 14:26
0
游客
登录 | 注册 方可回帖
返回
//