《C++ 黑客编程揭秘与防范(第2版)》—第6章6.9节 总结

6.9 总结
C++ 黑客编程揭秘与防范(第2版)
本章介绍了PE结构的基础部分、OD的使用及调试API函数等。相信读者对PE结构解析、OD调试工具使用及调试原理有了一定的了解。本章还介绍了一些基础的也是非常必要的加解密知识。读者在以后学习更多相关知识后会发现,这些基础知识对学习加解密知识是非常重要的。

本章最后的部分介绍了KeyMake工具的使用。通过KeyMake的具体实例,读者可以深刻领会本章前面所学知识的精要之处。KeyMake工具十分强大,如果在接触前面的知识前直接接触KeyMake工具,会觉得它很神奇,但是通过自己编写关于文件补丁、内存补丁和内存注册机的实例代码后,就会觉得KeyMake工具的基础与原理其实并不复杂,甚至读者会自己设计出一个更强大的KeyMake工具。

本章的知识除了可以应用到加密与解密方面,还可以应用在免杀、加壳脱壳、反调试、反病毒等方面的。希望读者在掌握原理后多动手实践。

时间: 2024-10-10 17:07:38

《C++ 黑客编程揭秘与防范(第2版)》—第6章6.9节 总结的相关文章

《C++ 黑客编程揭秘与防范(第2版)》—第6章6.4节PE相关编程实例

6.4 PE相关编程实例 C++ 黑客编程揭秘与防范(第2版) 前面讲的都是概念性的知识,本节主要编写一些关于PE文件结构的程序代码,以帮助读者加强对PE结构的了解. 6.4.1 PE查看器 写PE查看器并不是件复杂的事情,只要按照PE结构一步一步地解析就可以了.下面简单地解析其中几个字段内容,显示一下节表的信息,其余的内容只要稍作修改即可.PE查看器的界面如图6-26所示. PE查看器的界面按照图6-26所示的设置,不过这个可以按照个人的偏好进行布局设置.编写该PE查看器的步骤为打开文件并创建

《C++ 黑客编程揭秘与防范》—第1章1.1节编程语言和开发环境的选择

第1章 黑客编程入门 C++ 黑客编程揭秘与防范 你是否曾经在用别人开发的工具尝试"入侵",你是否希望开发出自己的黑器--相信很多人有着这种近似相同的经历.本章将简单介绍黑客编程及工具开发.如果你是初学编程,如果你从来没有接触过黑客软件的开发,如果你急于想了解黑客编程方面的知识--那么就请继续往下阅读. 1.1 编程语言和开发环境的选择 C++ 黑客编程揭秘与防范 初学者刚开始学习编程语言最头疼的问题就是如何选择编程语言及合适的开发环境,下面就来具体介绍一下. 有人认为学编程就是学编程

《C++ 黑客编程揭秘与防范》——1.1 编程语言和开发环境的选择

1.1 编程语言和开发环境的选择 C++ 黑客编程揭秘与防范 初学者刚开始学习编程语言最头疼的问题就是如何选择编程语言及合适的开发环境,下面就来具体介绍一下. 有人认为学编程就是学编程语言,而VC.VB这样的开发环境只是工具,不需要学.这个想法是错误的,因为开发环境提供了很多开发工具,如VC这个集成开发环境就提供了与之对应的PSDK.MFC等.除了语言以外,要开发特定的软件是需要开发包和开发工具支持的.况且,编程语言也是一种工具,用于和计算机进行交流的工具.所以我们既要学习编程语言,也要学习开发

《C++ 黑客编程揭秘与防范》——1.3 简单API的介绍

1.3 简单API的介绍 C++ 黑客编程揭秘与防范 下面介绍一些在黑客编程中会用到的API函数,尽量排一点简单易用的函数,用简单的几行代码来完成一定的功能,希望大家能在这里体会到编程乐趣,不至于被大段的代码影响了自己前进的心情. 1.3.1 复制自身程序到Windows目录和系统目录下 一般的病毒木马都有这种类似的功能,完成这个功能其实并不复杂,我们来拆解思考一下实现这段代码的步骤. 复制是一个拷贝的过程.既然是拷贝,就要知道拷贝的原位置和目的位置.也就是整个过程其实分3步,首先要得到自身程序

《C++ 黑客编程揭秘与防范》——1.2 应用程序的调试

1.2 应用程序的调试 C++ 黑客编程揭秘与防范 在开发程序的过程中,除了编码以外还需要对程序进行调试,当编写的程序出现问题后,就要对程序进行调试.调试不是仅使用一个printf()或MessageBox()进行简单的输出来观察某个函数的返回值(虽然在调试的时候的确是对返回值观察较多),也不是对某个变量.某一时间的具体值的输出.调试是有专业的调试分析工具的,VC6不但提供代码编辑.代码编译.编译连接等功能,还提供了一个非常好用的调试工具.在编写完代码后,如果程序输出的结果是未知的,或者是没有预

《C++ 黑客编程揭秘与防范(第2版)》——6.1 PE文件结构

6.1 PE文件结构 C++ 黑客编程揭秘与防范(第2版) PE(Portable Executable),即可移植的执行体.在Windows平台(包括Win 9x.Win NT.Win CE--)下,所有的可执行文件(包括EXE文件.DLL文件.SYS文件.OCX文件.COM文件--)均使用PE文件结构.这些使用PE文件结构的可执行文件也称为PE文件. 普通的程序员也许没有必要掌握PE文件结构,因为其大多是开发服务性.决策性.辅助性的软件,比如MIS.HIS.CRM等软件.但是对于学习黑客编程

《C++ 黑客编程揭秘与防范(第2版)》—第6章6.3节PE结构的3种地址

6.3 PE结构的3种地址 C++ 黑客编程揭秘与防范(第2版) 在上一章中用OD调试器调试程序时看到的地址与本章使用C32Asm以十六进制形式查看程序时的地址形式有所差异.程序在内存中与在文件中有着不同的地址形式,而且PE相关的地址不只有这两种形式.与PE结构相关的地址形式有3种,且这3种地址形式可以进行转换. 6.3.1 与PE结构相关的3种地址 与PE结构相关的3种地址是VA(虚拟地址).RVA(相对虚拟地址)和FileOffset(文件偏移地址). VA(虚拟地址):PE文件映射到内存后

《C++ 黑客编程揭秘与防范(第2版)》——6.3 PE结构的3种地址

6.3 PE结构的3种地址 C++ 黑客编程揭秘与防范(第2版) 在上一章中用OD调试器调试程序时看到的地址与本章使用C32Asm以十六进制形式查看程序时的地址形式有所差异.程序在内存中与在文件中有着不同的地址形式,而且PE相关的地址不只有这两种形式.与PE结构相关的地址形式有3种,且这3种地址形式可以进行转换. 6.3.1 与PE结构相关的3种地址 与PE结构相关的3种地址是VA(虚拟地址).RVA(相对虚拟地址)和FileOffset(文件偏移地址). VA(虚拟地址):PE文件映射到内存后

《C++ 黑客编程揭秘与防范(第2版)》——第6章 加密与解密

第6章 加密与解密 C++ 黑客编程揭秘与防范(第2版) 本章介绍的是关于加密与解密的知识,但是从整篇的内容上来看很难找到具体的加密与解密的知识.本章主要介绍PE结构.调试API函数等相关的内容.加密与解密,简单来说,主要就是逆向与调试.这些知识在前面的章节已经介绍过了,而掌握本章的知识以后会提高逆向与调试的能力. PE结构是Windows下可执行文件的标准结构,可执行文件的装载.内存分布.执行等都依赖于PE结构,而在逆向分析软件时,为了有目的.更高效地了解程序,必须掌握PE结构.要掌握反病毒.

《C++ 黑客编程揭秘与防范(第2版)》——6.2 详解PE文件结构

6.2 详解PE文件结构 C++ 黑客编程揭秘与防范(第2版) PSDK的头文件Winnt.h包含了PE文件结构的定义格式.PE头文件分为32位和64位版本.64位的PE结构是对32位的PE结构做了扩展,这里主要讨论32位的PE文件结构.对于64位的PE文件结构,读者可以自行查阅资料进行学习. 6.2.1 DOS头部详解IMAGE_DOS_HEADER 对于一个PE文件来说,最开始的位置就是一个DOS程序.DOS程序包含了一个DOS头部和一个DOS程序体.DOS头部是用来装载DOS程序的,DOS