《C++黑客编程揭秘与防范(第二版)》是一本非常实用的书籍,主要以C++和黑客编程为基础,深入介绍了Win32应用层下的安全开发,书中详细讲解了在Windows系统下开发安全应用程序的方法,以及如何防范黑客攻击,书中还涵盖了恶意程序、专杀工具、扫描器等工具的开发,内容循序渐进,易于理解和实践,如果你对黑客技术和信息安全感兴趣,这本书是绝对不能错过的,欢迎下载阅读,你一定会受益匪浅。
内容介绍
市面上关于黑客入门的书籍较为繁多,比如黑客图解入门、黑客工具详解、黑客木马攻防等。但是,对于很多读者来说,可能并不是单单掌握简单的工具使用就能满足的。很多读者学习黑客知识是为了真正掌握与安全相关的知识。与安全相关的知识涉及面比较广,包括数据安全、存储安全、系统安全、Web安全、网络安全等,本书围绕Windows系统下应用层的开发来介绍一些关于安全方面的知识。
本书是《C++黑客编程揭秘与防范》的升级版,在前书的基础上新添加了一些内容,同时也删除了一些过时的内容。本书以Win32应用层下安全开发为中心,介绍Windows系统下的安全开发。
本书介绍了操作系统的相关操作,比如进程、线程、注册表等知识。当读者掌握了关于进程、线程、注册表等相关的开发知识后,就可以把一些常规的操作进程、注册表、文件等用代码进行实现,这样,一些日常的操作可与学习的编程知识相结合。除了操作的知识外,本书还介绍了关于网络应用程序的开发,了解Winsock的开发后,读者就会明白在应用层客户端与服务器端通信的原理。当然,本书除了介绍Win32开发外,还介绍了PE结构、调试接口、逆向等相关的知识。本书的最后部分介绍了关于恶意程序、专杀工具、扫描器等工具的开发。读者只要将前面章节的知识掌握后,后面的实例部分就水到渠成了。
目录
- 第1章 黑客编程入门
- 第2章 黑客网络编程
- 第3章 黑客Windows API编程
- 第4章 黑客内核驱动开发基础
- 第5章 黑客逆向基础
- 第6章 加密与解密
- 第7章 黑客高手的HOOK技术
- 第8章 黑客编程实例剖析
C和C++的区别: C是一个结构化语言,它的重点在于算法和数据结构。C程序的设计首要考虑的是如何通过一个过程,对输入(或环境条件)进行运算处理得到输出(或实现过程(事务)控制)。 C++,首要考虑的是如何构造一个对象模型,让这个模型能够契合与之对应的问题域,这样就可以通过获取对象的状态信息得到输出或实现过程(事务)控制。 所以C与C++的最大区别在于它们的用于解决问题的思想方法不一样。之所以说C++比C更先进,是因为“ 设计这个概念已经被融入到C++之中 ”。 C与C++的最大区别:在于它们的用于解决问题的思想方法不一样。之所以说C++比C更先进,是因为“ 设计这个概念已经被融入到C++之中 ”,而就语言本身而言,在C中更多的是算法的概念。那么是不是C就不重要了,错!算法是程序设计的基础,好的设计如果没有好的算法,一样不行。而且,“C加上好的设计”也能写出非常好的东西。 “黑客”一个听起来神秘又让人心生仰慕的词汇,有不少朋友问有木有黑客技术教,说实话,我虽然很懂。不过还是可以给大家介绍一下黑客入门知识该如何学习。 黑客有很多方向,较为常见的方向是基于网络攻击的。要做一个真正的黑客,编程是必须要学的。我的建议就是先C语言。大部分的黑客工作都能解决。 C语言也是几乎所有底层系统的语言。正是因为如此,深刻的学会C语言,并理解其运行原理对底层攻击有着重要的意义。简单的如学会scanf、sprintf之类的带来的溢出攻击的原理。深入一点的要学会堆栈传参数的原理,以及常见系统调用的位置。这才是个博大精深的事情。
面向对象的编程技术(OOP)技术是当前程序设计的主流方法学,概括地讲:OOP技术的主要特征在于三个方面:函数重载、数据的封装和类的继承。 对于一个复杂的功能软件而言,前期最重要的一部分工作是设计软件的整体结构。主要的考虑包括:要设计哪些主要的类,这些主要的类之间的关系怎样,例如类之间的继承和派生关系;类之间的消息传递和数据交换等。如果类的数量较多,系统较复杂的话,还应考虑软件功能模块的划分问题。 很多软件都是由一个执行程序(*.exe文件)附加多个动态链接库(DLL)组成。可以这样说,类是软件设计时的模块,而DLL库是软件运行时的模块,一个DLL库可以输出实现类似功能的一组类、函数以及资源。通常的做法是把一些功能相对集中、可重复利用率高的类和函数集成于一个动态链接库中,执行程序在运行时根据需要动态链接库并调用这些DLL库中输出的类和函数。这种动态的连接和调用关系也可以存在于动态链接库之间。