导入是这个PE文件在运行时,使用了其它PE文件中的函数,变量,类等这样的行为。导入表存储的是从其他PE文件导入过来的函数名,序号。在加载到内存之后,还存储这些函数的地址。 ...
重叠文件头 MZ文件头与PE文件头重叠。 offest 0 e_magic:magic number = 4D5A('MZ') offest 3C e_lfanew:File address of new exe header IMAGE_FILE_HEADER.SizeOfOptionalHead ...
分类:
其他好文 时间:
2019-04-27 00:40:21
阅读次数:
150
尝试编写代码获取PE文件的信息。 首先使用 打开一个PE文件并返回一个用于访问该对象的 。 然后调用 函数为该文件创建一个 ,此时为文件创建了一个视图,而并未将该视图映射进进程的地址空间,也就是尚未装载进入内存之中的意思吧。 Creating a file mapping object create ...
分类:
其他好文 时间:
2019-04-11 23:27:05
阅读次数:
248
将写代码过程比较重要的一些代码收藏起来,下边资料是关于C++ 获取PE文件自校验值的代码。 #include#include <imagehlp.h>#pragma comment(lib,"imagehlp") { char szFileName[] = "d:\newupdate.exe"; D ...
分类:
编程语言 时间:
2019-01-05 13:33:09
阅读次数:
234
1. 前述 可执行文件的格式是操作系统本身执行机制的反映,理解它有助于对操作系统的深刻理解,掌握可执行文件的数据结构及其一些机理,是研究软件安全的必修课。`PE(Portable Executable File Format)`是目前 windows 平台上的主流可执行文件格式。PE 文件衍生于早期 ...
分类:
其他好文 时间:
2018-12-28 20:39:48
阅读次数:
211
原文地址:https://www.cnblogs.com/qinfengxiaoyue/archive/2012/06/05/2535524.html #pragma可以说是C++中最复杂的预处理指令了,下面是最常用的几个#pragma指令: #pragma comment(lib,"XXX.lib ...
分类:
其他好文 时间:
2018-12-09 23:01:31
阅读次数:
204
题目链接:https://pan.baidu.com/s/1Q7MmJjff_3xMs2OvKbUdsw 提取码:t7jr 首先程序用了重定位,od和ida里面的地址不一样,我们用修改PE文件的Option Header中的Dll Characteristics,把这个的数据置为0,然后载入到调试器 ...
分类:
其他好文 时间:
2018-12-06 14:15:20
阅读次数:
269
一般通过虚拟机都是安装操作系统,但是有些时候,我们并不需要安装系统,而是仅仅需要启动pe,然后测试pe里面的功能能不能用。 一般通过虚拟机都是安装操作系统,但是有些时候,我们并不需要安装系统,而是仅仅需要启动pe,然后测试pe里面的功能能不能用。 一般通过虚拟机都是安装操作系统,但是有些时候,我们并 ...
分类:
系统相关 时间:
2018-12-05 16:24:56
阅读次数:
1041
0x00 前言 对于上篇所讲的那个练习,PE文件属于运行时解压缩文件,而且文件包含校验和检验,如果直接修改代码可能得花点功夫了。对于这种情况我们可以使用内嵌补丁轻松解决。 由上图我们知道要进行运行内嵌补丁,先得找到外壳程序跳往OEP的关键跳转。上篇我们已经知道4018083处为跳往OEP的关键跳。 ...
分类:
其他好文 时间:
2018-11-11 11:48:56
阅读次数:
162