描述
开 本: 16开纸 张: 胶版纸包 装: 平装是否套装: 否国际标准书号ISBN: 9787113219864
在讲解细节上,本书循序渐进地向读者介绍了黑客攻击程序、安全防护工具、远程控制软件、网络安全管理软件的原理及具体编程实现方法,从当前热门的黑客软件和安全防护工具中选择典型案例,深入分析。
第1章 黑客入门,Socket
API开发必知 1
1.1
Windows API和Socket 1
1.1.1
Windows API编程的优点 1
1.1.2
Socket通信流程 2
1.2 服务器端Socket的操作 3
1.2.1
在初始化阶段调用WSAStartup 3
1.2.2
建立Socket 4
1.2.3
绑定端口 4
实例1.1 bind函数调用示例 5
1.2.4
监听端口 6
1.2.5
accept函数 6
实例1.2 accept函数示例 7
1.2.6
WSAAsyncSelect函数 7
实例1.3 响应Socket事件的结构代码 8
1.2.7
结束服务器端与客户端Socket连接 8
1.3 客户端Socket的操作 9
1.3.1
建立客户端的Socket 9
1.3.2
发起连接申请 9
实例1.4 connect函数示例 9
1.4
Socket数据的传送 9
1.4.1
TCP Socket 与UDP Socket 10
1.4.2
发送和接收数据的函数 10
1.5 自定义CMyTcpTran通信类 12
1.5.1
为什么要使用类 13
1.5.2
Visual C 中创建通信类 13
实例1.5 CMyTcpTran类头文件 15
1.5.3
CMyTcpTran类的代码实现 17
实例1.6 CMyTcpTran类方法的函数实现 17
实例1.7 Socket通信库初始化实现方法 18
实例1.8 初始化套接字资源 18
实例1.9 创建连接通信函数的实现
20
实例1.10 初始化Socket资源的接收函数 21
实例1.11 发送套接字数据的函数实现
23
1.6 小结 25
第2章 专业风范,网络扫描器的开发实现 26
2.1 扫描器的产生及原理 26
2.1.1
扫描器的产生 26
2.1.2
不同扫描方式扫描器原理及性能简介 27
2.2 主机扫描技术 29
2.2.1
ICMP Echo扫描 29
2.2.2
ARP扫描 30
2.3 端口扫描技术 31
2.3.1
常用端口简介 31
2.3.2
TCP connect扫描 32
2.3.3
TCP SYN 扫描 33
2.4 操作系统识别技术 33
2.4.1
根据ICMP协议的应用得到TTL值 33
2.4.2
获取应用程序标识 35
2.4.3
利用TCP/IP协议栈指纹鉴别 35
2.4.4
操作系统指纹识别依据 36
2.4.5
操作系统指纹识别代码实现 39
2.4.6
Web站点猜测 48
2.4.7
综合分析 49
实例2.1 一段端口检测程序代码 50
2.5 扫描器程序实现 52
2.5.1
ICMP echo扫描原理 52
2.5.2
ICMP echo扫描的实现方法 53
实例2.2 ICMP扫描程序类定义 54
实例2.3 ICMP扫描的代码实现 55
实例2.4 ICMP扫描判断主机存活 58
2.5.3
ARP扫描的原理 59
2.5.4
ARP扫描的实现方法 60
实例2.5 ARP设备扫描的实现方式 60
实例2.6 ARP扫描程序实例 64
2.5.5
TCP SYN扫描的原理 66
2.5.6
TCP SYN扫描的实现方法 66
实例2.7 TCP SYN扫描实例 66
2.5.7
综合应用实例——ARP欺骗程序 70
2.5.8
ARP欺骗的原理 70
2.5.9
Winpcap环境初始化 70
实例2.8 Winpcap驱动程序初始化 70
2.5.10
欺骗主程序 77
实例2.9 ARP欺骗程序的实现方法 77
2.6 资产信息扫描器开发 83
2.6.1
资产信息扫描器的应用范围 83
2.6.2
snmp协议扫描的原理 84
2.6.3
snmp协议扫描的实现方法 84
实例2.10 snmp协议扫描的实现方法 84
2.7 小结 87
第3章 提升,暴力破解和防范 88
3.1 针对应用程序通信认证的暴力破解 88
3.1.1
FTP协议暴力破解原理 88
3.1.2
FTP协议暴力破解实现方法 88
实例3.1 FTP暴力破解程序代码 89
3.1.3
IMAP协议破解原理 92
3.1.4
IMAP协议破解方法 92
实例3.2 IMAP协议破解 92
3.1.5
POP3协议暴力破解原理 94
3.1.6
POP3协议暴力破解实现方法 95
实例3.3 POP3协议暴力破解 95
3.1.7
Telnet协议暴力破解原理 98
3.1.8
Telnet协议暴力破解实现方法 98
实例3.4 Telnet协议暴力破解 98
3.2 防范恶意扫描及代码实现
101
3.2.1
防范恶意扫描的原理 101
3.2.2
防范恶意扫描的实现方法 102
实例3.5 防范恶意扫描程序的框架
102
3.3 小结 106
第4章 用代码说话,拒绝服务攻击与防范 107
4.1 拒绝服务原理及概述 107
4.1.1
拒绝服务攻击技术类别 107
4.1.2
拒绝服务攻击形式 108
4.2 拒绝服务攻击原理及概述
109
4.2.1
DoS攻击 109
4.2.2
DDoS攻击 110
4.2.3
DRDoS攻击 110
4.2.4
CC攻击 111
4.3 拒绝服务攻击代码实现
112
4.3.1
DoS实现代码的原理 112
实例4.1 典型UDP Flood攻击 117
实例4.2 SYN Flood攻击代码示例 120
实例4.3 典型TCP多连接攻击程序示例 123
实例4.4 ICMP Flood攻击数据包构造 127
实例4.5 ICMP Flood攻击 130
4.3.2
DRDoS攻击的代码实现 132
实例4.6 InitSynPacket函数实现过程 134
实例4.7 InitIcmpPacket函数实现过程 136
实例4.8 SYN反射线程实现方式 136
实例4.9 ICMP反射攻击线程实现 138
实例4.10 开启反射攻击线程 140
实例4.11 反射攻击线程 140
4.3.3
CC攻击的代码实现 143
实例4.12 CC攻击代码实现 143
4.3.4
修改TCP并发连接数限制 146
实例4.13 修改TCP并发连接线程 146
4.4 拒绝服务攻击防范 151
4.4.1
拒绝服务攻击现象及影响 151
4.4.2
DoS攻击的防范 151
4.4.3
DRDoS攻击的防范 152
4.4.4
CC攻击的防范 152
实例4.14 ASP程序Session认证 153
实例4.15 ASP程序判断真实IP地址 153
4.5 小结 154
第5章 你也能开发“病毒” 155
5.1 感染功能描述 155
5.1.1
话说熊猫烧香 155
5.1.2
何为“下载者” 156
5.1.3
感染功能描述 157
5.2 感染型下载者工作流程
165
5.3 感染所有磁盘 166
5.3.1
感染所有磁盘原理 167
5.3.2
感染所有磁盘的实现方法 167
实例5.1 感染所有磁盘的代码 167
5.4 感染U盘、移动硬盘 167
5.4.1
U盘、移动硬盘感染的原理 167
5.4.2
U盘、移动硬盘感染的实现方法 168
实例5.2 U盘感染实现代码 171
5.5 关闭杀毒软件和文件下载的实现 171
5.5.1
关闭杀毒软件的原理 171
5.5.2
关闭杀毒软件和文件下载的实现方法 172
实例5.3 关闭杀毒软件和文件下载
172
5.6 结束指定进程 176
5.6.1
结束指定进程的原理 177
5.6.2
结束指定进程的实现方法 177
实例5.4 结束指定进程 177
5.6.3
暴力结束进程 178
实例5.5 暴力结束进程 178
实例5.6 下载执行程序 186
5.7 局域网感染 187
5.7.1
局域网感染原理 187
5.7.2
局域网感染的实现方法 187
实例5.7 局域网同网段扫描并感染的代码实现 187
实例5.8 IPC连接操作 190
5.8 隐藏进程 191
5.8.1
隐藏进程的原理 192
5.8.2
隐藏进程的实现方法 192
5.9 感染可执行文件 193
5.9.1
感染可执行文件的原理 193
5.9.2
感染可执行文件的实现方法 193
实例5.9 汇编查找kernel.dll的地址 193
实例5.10 遍历文件目录查找.exe文件路径 196
实例5.11 全盘搜索.exe文件 197
5.10
感染网页文件 197
5.10.1
感染网页文件的原理 197
5.10.2
感染网页文件的实现方法 197
实例5.12 向指定文件尾部写入代码
197
实例5.13 搜索网页文件并调用感染函数
198
实例5.14 设置文件隐藏属性 199
5.11
多文件下载 200
5.11.1
多文件下载的原理 200
5.11.2
多文件下载的实现方法 200
5.12
自删除功能 202
5.12.1
自删除功能的原理 202
5.12.2
自删除功能的实现方法 202
实例5.15 程序自删除功能 202
5.13
下载者调用外部程序 203
5.13.1
下载者调用外部程序的原理 203
5.13.2
下载者调用外部程序的实现方法 203
实例5.16 zxarps.exe程序帮助信息 203
实例5.17 释放资源调用ARP攻击程序 206
实例5.18 调用ARP攻击程序循环攻击C段IP地址 207
5.14
“机器狗”程序 208
5.14.1
“机器狗”程序原理 208
5.14.2
“机器狗”代码实现 209
实例5.19 “机器狗”释放驱动并安装执行的代码实现 209
实例5.20 驱动感染userinit.exe
213
5.15
利用第三方程序漏洞 216
实例5.21 迅雷溢出漏洞利用文件Thunder.js
217
5.16
程序其他需要注意的地方 219
5.16.1
窗口程序的创建 219
实例5.22 创建窗口程序的代码实现
219
5.16.2
应用程序互斥处理 220
实例5.23 应用程序互斥处理 220
5.16.3
禁止关闭窗口 221
5.17
小结 221
第6章 你当然也能开发杀毒程序
222
6.1 下载者的防范措施 222
6.1.1
U盘感染的防范 222
6.1.2
驱动级病毒的防范 224
6.1.3
阻止第三方程序引起的漏洞 226
6.1.4
本地计算机防范ARP程序运行 227
6.1.5
其他需要注意的地方 228
6.2
U盘病毒防火墙的开发 228
6.2.1
U盘病毒防火墙的功能及实现技术 228
6.2.2
U盘病毒防火墙的代码实现 229
实例6.1 全盘检测AutoRun.inf文件 229
实例6.2 单个磁盘的扫描检测程序
229
实例6.3 删除病毒文件 231
实例6.4 格式化磁盘 231
实例6.5 调用System函数格式化磁盘 232
实例6.6 备份文件 232
实例6.7 增加注册表启动项 235
实例6.8 禁止系统自动播放功能
235
6.3 小结 237
第7章 攻防的高难度的动作 238
7.1
Rootkit与系统内核功能 238
7.1.1
Rootkit简介 238
7.1.2
Rootkit相关的系统功能 238
7.1.3
Rootkit的分类及实现 239
实例7.1 IRPS形式的Rootkit编码实现 241
7.2
Rootkit对抗杀毒软件 243
7.2.1
增加空节来感染PE文件 244
实例7.2 给程序增加空字节 244
7.2.2
通过Rootkit来绕过KIS 7.0 的网络监控程序 251
实例7.3 编程绕过KIS 252
7.2.3
HIV绕过卡巴斯基主动防御的方法 253
实例7.4 HIV绕过卡巴斯基 253
7.2.4
关于进程PEB结构的修改实现 255
实例7.5 进程PEB结构的修改实现 255
实例7.6 修改PEB信息 258
7.2.5
结束AVP的批处理 259
实例7.7 结束AVP的批处理程序 259
7.3
Rootkit程序实例 262
实例7.8 RootKit程序保护文件功能 262
实例7.9 上层应用程序调用sys驱动 268
7.4 小结 270
第8章 没开发过自己的软件,怎么成大师 271
8.1 远程控制软件简介 271
8.1.1
远程控制软件的形式 271
8.1.2
远程控制软件的特点 272
8.2 远程控制软件的功能 273
8.2.1
反弹连接功能 273
8.2.2
动态更新IP功能 273
8.2.3
详细的计算机配置信息的获取 274
8.2.4
进
对专业人士来说,“黑客”并不神秘。黑客技术也只是计算机安全技术分支之一,也是有章可循的。有人利用黑客技术做“小偷”类违法犯罪的事情,我们需要培养出技术更强、训练有素的“警察”即可。本书就是这样一本希望通过揭秘网络底层开发技术,培养出更多更优秀的系统、网络安全软件开发者。
“能编写出属于自己的黑客软件”一直是很多网络安全爱好者梦寐以求的。为了让更多的网络安全爱好者能够迅速掌握黑客软件、安全工具的开发技术,也为了提高国内网络安全技术的整体水平,笔者精心编写了本书。
笔者根据自己多年的学习和工作经验,结合当前网络安全技术最新的发展态势,循序渐进地为读者讲解如何在Visual C 环境下开发各种黑客工具和安全软件。本书旨在技术上为读者提供一个学习的方法和参考,其中部分技术可能存在一定的破坏性,需要读者在学习时慎重使用并用于合适的测试环境。本书以实例开发了安全软件的雏形,源代码发布在出版社网站上,请读者移步下载,或者到QQ学习交流群82481994中下载。
本书的内容安排
本书共分为三篇,共15章,以网络编程最基本的Windows Sockets API开始,逐步介绍简单的网络扫描器技术,让读者轻松入门。通过常见黑客工具及下载者程序的编写和防范,让读者对编程技术有一个更大的提高。在读者掌握了一定的黑客软件开发基础后,笔者开始介绍Rootkit编程技术及远程控制技术,让读者通过一个完整综合的实例学习Visual C 开发黑客软件。最后结合笔者的工作经验介绍了网络准入技术和网络蜘蛛等拓展技术,供有兴趣的读者深入学习。
第一篇(第1~3章):初入门径
讲述了使用Visual C 开发黑客软件,尤其是基于网络的黑客软件必须具备的理论基础及入门级的编程实例。通过本章学习,读者可以掌握Windows Sockets API编程开发的技术、网络扫描程序及认证程序破解的编程实现,从而为进一步提高编程水平打下基础。
第二篇(第4~7章):做一个专业的黑客
讲述了拒绝服务攻击技术的原理及实现,感染型下载者程序的功能、原理及编程实现,Rootkit技术的编程实现。通过本章学习,读者的黑客编程技术将得到很大提高。本章介绍的3类典型程序是当前互联网最为流行的黑客攻击技术或实现方式。同时针对下载者程序,笔者还讲解了如何有针对地防范,并通过U盘病毒防火墙的形式予以实现。
第三篇(第8~15章):成为大师的修炼
本篇通过一个完整的黑客软件——“远程控制软件”的功能、原理、设计、实现及优化等方面,为读者深入剖析了一个完整黑客软件的开发流程。本篇是前几章编程技术的综合,是各种技术的综合运用。笔者在本篇详细地介绍了编程中的各个细节,同时首次公开了部分远程控制软件的关键代码。并且结合笔者的工作和学习经验,介绍了网络准入技术、网络蜘蛛、SSDT恢复等技术的原理及实现方式。对于希望进一步提高自己黑客软件开发技术的读者无疑是一个拓展机会。通过学习本篇,为读者将来开发出自己的网络安全工具或软件提供了必要的铺垫作用。
本书的特点
从Windows Sockets API编程基础到最基本的网络扫描器编程,从基本黑客攻击程序到基于认证的网络程序破解,从流行下载者程序的编程实现到U盘防火墙等安全工具,从Windows底层的Rootkit编程到远程控制软件开发,从网络准入控制结束到网络蜘蛛等,本书逐个讲解各类黑客软件的实现原理,并通过代码编程实现,其中很多代码尚属首次公开。
本书的特点主要体现在以下几个方面:
? 本书的编排采用循序渐进的方式,适合对Visual C 程序开发有一定了解,并对黑客程序开发抱有极大兴趣的网络安全爱好者。
? 本书结合笔者多年的工作和学习经验积累,通过对流行网络安全技术中典型案例的编程实现,为读者提供了快速学习和进步的参考。
? 本书在介绍大量网络安全技术实现原理时,都提供了典型的案例和参考的图例。读者通过对原理的学习,能够掌握Visual C 开发黑客工具的具体技术,同时也能更加深入地理解网络安全技术的具体细节,从而提高自身的技术水平。
? 本书除了介绍主流的安全技术及编程方法,还涉及Rootkit、SSDT恢复等系统底层编程技术,对于希望提高黑客软件开发技术的读者无疑是一个很大的帮助。
? 本书突破常规,对重要的编程技术和细节没有遮遮掩掩,其中部分功能实现的代码尚属首次公开。当然,为了防止一些具有破坏性的程序被错误使用造成不必要的破坏,笔者对光盘中的部分代码做了技术处理,相信有一定编程基础的读者能够自行解决。
? 本书虽然以黑客软件开发为基本出发点,但是又不仅限于黑客技术;笔者更多的是从技术角度探讨技术原理及实现方法,同时将网络安全思想时刻灌注其中。书中涉及的U盘防火墙、网络准入技术等都是笔者对当前互联网黑客攻击泛滥的思考和防范方法的具体实现。
适合阅读本书的读者
本书由河南城建学院的赵笑声编写。全书由浅入深,由理论到实践,尤其适合对Visual C 环境有一定了解,同时对黑客软件开发抱有极大兴趣的初级读者学习并逐步完善自己的知识结构。具体来说,以下读者应该仔细研读本书:
? 希望进入应用软件开发行业的新手。
? 迫切希望提高个人开发测试技能和水平的初级程序测试人员。
? 具备一定的研发理论知识但是缺乏实践的软件研发工程师。
? 希望了解国内外黑客软件开发的动向以及最新反黑客软件的开发人员。
评论
还没有评论。