生活就像洋葱

书写,忘记
PE文件分析时ImageBase等基本信息的获得

在分析PE文件时,为了方便对映射在内存中的各个字段进行查询,经常会定义如下一个机构体:

typedef struct_MAP_FILE_STRUCT
{
   HANDLE hFILE;
   HANDLE hMapping;
   LPVOID ImageBase;
}MAP_FILE_STRUCT;

结构体中各个值的获得方式如下:

hFile=hFile=CreateFile(PE_filename,

                      GENERIC_READ|GENERIC_WRITE,

                      FILE_SHARE_READ,

                      NULL,

                     OPEN_EXISTING,

                     FILE_ATTRIBUTE_NORMAL,

                     NULL);

hMapping=CreateFileMapping(hFile,NULL,PAGE_READONLY,0,0,NULL);
ImageBase=MapViewOfFile(hMapping,FILE_MAP_READ,0,0,0);
*****************************************
(PE_Filename是一个指向目标文件路径的字符串指针)

posted on 2008-08-29 15:53  snowbow  阅读(715)  评论(0)    收藏  举报