Windows PE 第十三章 PE补丁技术】的更多相关文章

PE补丁技术 这章很多东西之前都见过,也单独总结过,比如动态补丁里说的远程代码注入,还有hijack什么的.之前整理过的这里就不细说了,大体说下思路.这里总结一些之前没总结过的东西. 资料中把补丁分为两类,静态补丁和动态补丁.然后有总结了下补丁的基本要素:进程通讯能力.良好的读写其他进程地址能力.正确识别要补丁目标进程.在其他进程地址空间执行代码的能力. 进程通信: 管道通信(有名管道和匿名管道).邮件槽.剪切板.共享内存.消息机制.socket等等具体细节概念请自行百度. (1)动态补丁 读写…
这一章的上半部分大体介绍了下PE文件头,下半部分是详细介绍里面的内容,这一章一定要多读几遍,好好记记基础概念和知识,方便之后的学习. 简单回忆一下: 3.4  PE文件头部解析 3.4.1 DOS MZ头 IMAGE_DOS_HEADER DOS MZ头的下面是DOSS Stub.整个DOSS Stub是一个字节块,其内容随着链接时使用的连接器不同而不同,PE中没有与之对应的相关结构. 3.4.2 PE头标识Signature 紧跟在DOS Stub后面的是PE头标识Signature.与大部分…
第三章  PE头文件 本章是全书重点,所以要好好理解,概念比较多,但是非常重要. PE头文件记录了PE文件中所有的数据的组织方式,它类似于一本书的目录,通过目录我们可以快速定位到某个具体的章节:通过PE文件头部分对某些数据结构的描述,我们也可以定位到那些不在头文件部的信息,比如导入表数据.导出表数据.资源表数据等. 3.1  PE的数据组织方式 这一节说了很多,举了两个例子,分别是图书馆存书1和图书馆存书2,细节我不介绍了,是基本的数据结构应用,没有难点.最后说PE数据组织方式类似于存书2的例子…
3.5  数据结构字段详解 3.5.1  PE头IMAGE_NT_HEADER的字段 1.IMAGE_NT_HEADER.Signature +0000h,双字.PE文件标识,被定义为00004550h.也就是"P""E"加上两个0,这也是PE这个称呼的由来.如果更改其中任何一个字节,操作系统就无法把该文件识别为正确的PE文件.通过修改这个字段,会导致PE文件在32位系统中加载失败,但由于这个文件的其他部分(特别是DOS头)还没有被破坏,系统还是可以识别出其为DOS…
获取pE头相关的内容,就是类似如下内容 原理:比较简单,直接读取PE到内存,然后直接强转就行了. #include <windows.h> #include <stdio.h> #include <tchar.h> #pragma warning(disable:4996) void viewImageFileCharacteristics(WORD); int _tmain(int argc, TCHAR *argv[]) { PIMAGE_DOS_HEADER pI…
RVA-FOA之间转换 1.首先PE头加载到内存之后是和文件头内容一样的,就算是偏移不同,一个是磁盘扇区大小(400H)另一个是内存页大小(1000H),但是因为两个都是开头位置,所以相同. 2.看下IMAGE_SECTION_HEADER定义 也就是这样: 然后就可以算了(RVA->FOA) (1) RVA20 < RVA < RVA30 可以知道在第二节 (2) 然后 off = RVA - RVA20 ,得出距离第二节的偏移off (3) FOA = FOA 20 + off 求出…
0 前言 此篇文章想写如何通过工具手查导出表.PE文件代码编程过程中的原理.文笔不是很好,内容也是查阅了很多的资料后整合出来的.希望借此加深对PE文件格式的理解,也希望可以对看雪论坛有所贡献.因为了解PE文件格式知识点对于逆向破解还是病毒分析都是很重要的,且基于对PE文件格式的深入理解还可以延伸出更多非常有意思的攻防思维. 1 导出表查询工具 1 ) dumpbin VS自带的工具,有很多的功能.但用来查询程序的导出表也非常方便,使用例子如下: dumpbin.exe /EXPORTS D:\P…
PE变形技术 这章东西太多,太细了.这里我只记录了一些重点概念.为后面学习做铺垫. PE变形:改变PE结构之后,PE加载器依然可以成功加载运行我们的程序. 一 变形常用技术: 结构重叠技术.空间调整技术.数据转移技术.数据压缩技术. 下面是相关概念只是(我只整理重点) 1.结构重叠技术: 结构重叠技术是指在不影响正常性能的前提下,将某些数据结构进行重叠的技术.在缩小PE的变形中将大量使用这种技术. 重叠能成功通常是以为以下三点: (1)被覆盖的数据可能是另一个结构中的无用数据. (2)有用的数据…
@date: 2016/11/24 @author: dlive ​ PE (portable executable) ,它是微软在Unix平台的COFF(Common Object File Format 通用对象文集格式)的基础上制成的. ​ PE文件是指32位的可执行文件,也称PE32,64位的可执行文件称为PE+或者PE32+ ​ PE文件的种类 种类 主扩展名 可执行系列 exe ,scr 驱动程序系列 sys, vxd 库系列 dll, dcx, cpl, drv 对象文件系列 ob…
反调试技术,恶意代码用它识别是否被调试,或者让调试器失效.恶意代码编写者意识到分析人员经常使用调试器来观察恶意代码的操作,因此他们使用反调试技术尽可能地延长恶意代码的分析时间.为了阻止调试器的分析,当恶意代码意识到自己被调试时,它们可能改变正常的执行路径或者修改自身程序让自己崩溃,从而增加调试时间和复杂度.很多种反调试技术可以达到反调试效果.这里介绍当前常用的几种反调试技术,同时也会介绍一些逃避反调试的技巧. 一.探测Windows调试器 恶意代码会使用多种技术探测调试器调试它的痕迹,其中包括使…