
【windows PE应用技术】
windows PE应用技术。
paradox_1_0
自由、努力、向上。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
《Windows PE权威指南》第16章补丁工具程序bind.asm的错误修改
当直接编译运行bind程序的时候发现目标程序打完补丁之后无法正常运行。看汇编源码终于找到了问题所在,本文找出了源程序的一个函数编写的错误并给出了正确写法。改正之后经bind程序打完补丁的目标程序可以正常运行。1._getValidHeadSize函数原汇编代码:;--------------------------------------; 获取目标PE头的数据的有效长度;-----...原创 2019-07-10 15:26:32 · 252 阅读 · 0 评论 -
对一个补丁工具程序的技术细节分析(WIN32汇编)
本文研究的是在目标PE中新增加一个节,并将可执行代码附加到该节中的技术。补丁工具中对文件头部做的修改主要包括以下字段:SizeOfHeader、SizeSofImage、AddressOfEntryPoint和NumberOfSections。补丁程序创造空间最好的做法是:按照PE数据结构的规则新增加一个节,然后将这个节有机的融合到PE文件中。为PE文件新增加一个节的空间,只需要扩充文件尾...原创 2019-07-06 16:35:50 · 469 阅读 · 0 评论 -
程序调用导入函数过程详解
在日常的程序开发中共享库的使用非常普遍,是代码重用非常重要的技术。那么程序是如何调用共享库中的代码段的呢?首先看一段汇编代码如下图,其中调用了两个导入函数MessageBoxA(user32.dll)和ExitProcess(kernel32.dll),以第一个函数为例进行分析,其中非常关键的一行代码是:JMP NEAR DWORD PTR DS:[BD2008],无条件转移指令跳转到0XBD20...原创 2019-11-06 14:20:26 · 905 阅读 · 1 评论 -
E9指令地址计算方法
jmp:相对跳转指令计算公式:E9后面的地址 = 目标地址 - 当前地址 - 5在编写嵌入式补丁程序的时候一般情况下最后一条指令便是E9指令,实际计算时可借助windows自带的计算器工具进行16进制计算:0x401B5F ... //E9跳转的目标地址...0x407000 E9 5A AB FF FF上面的具体计算:0x401B5F - 0x4...原创 2019-09-24 11:19:41 · 2592 阅读 · 0 评论