黑客攻防从入门到入狱 网络安全与黑客攻防宝典

《网络安全与黑客攻防宝典》由浅入深、循序渐进地介绍了计算机网络安全的知识体系。全书共分21章,内容涵盖网络的基础知识、黑客初步、操作系统漏洞与应用软件漏洞的攻防、BBS与Blog的漏洞分析、信息收集、扫描目标、渗透测试、网络设备的攻击与防范、木马分析、病毒分析、网络脚本攻防、SQL注入攻防、防火墙技术、入侵检测技术、计算机取证、无线网络安全等内容。本书最大的特色在于知识全面、实例丰富,每一节的例子都经过精挑细选,具有很强的针对性,读者可以通过亲手实践进而掌握安全防护的基本要领和技巧。

《网络安全与黑客攻防宝典》适合初、中级用户学习网络安全知识时使用,同时也可作为高级安全工程师的参考资料。
第1部分 黑客基础篇1
第1章 网络基础知识2
1.1 OSI模型2
1.1.1 物理层3
1.1.2 数据链路层3
1.1.3 网络层4
1.1.4 传输层4
1.1.5 会话层4
1.1.6 表示层5
1.1.7 应用层5
1.2 TCP/IP基础5
1.2.1 TCP/IP协议参考模型5
1.2.2 主机与网络层6
1.2.3 互联网层6
1.2.4 传输层6
1.2.5 应用层6
1.2.6 IP协议7
1.2.7 UDP协议8
1.2.8 TCP协议9
1.2.9 ARP协议10
1.2.10 ICMP协议11
1.2.11 HTTP协议12
1.2.12 FTP协议12
1.2.13 TCP/IP协议的分析工具Ethereal13
1.2.14 入侵检测工具Snort14
1.2.15 Windows自带的Netstat工具15
1.3 与互联网相关的一些知识15
1.3.1 域名系统15
1.3.2 动态主机配置协议DHCP16
1.3.3 TCP/IP上的NetBIOS16
1.3.4 服务器消息块SMB18
1.4 网络相关知识19
1.4.1 计算机端口基础知识19
1.4.2 计算机的安全分析工具20
1.5 小结21
第2章 黑客基础22
2.1 黑客文化简史22
2.1.1 黑客文化的古文化时期22
2.1.2 黑客的UNIX时代23
2.1.3 今天的黑客23
2.2 帽子问题23
2.2.1 “黑色”的黑客精神23
2.2.2 帽子的划分24
2.3 国内的黑客发展历史24
2.4 早期著名的黑客25
2.4.1 约翰?德拉浦25
2.4.2 理查德?M?史托曼25
2.4.3 罗伯特?莫里斯25
2.4.4 凯文?米特尼克26
2.5 著名的黑客组织26
2.5.1 Blackhat26
2.5.2 L0pht26
2.5.3 中国绿色兵团27
2.6 黑客常用攻击手法:踩点27
2.6.1 社交工程27
2.6.2 搜索引擎27
2.6.3 Whois方法28
2.6.4 DNS查询28
2.7 黑客常用攻击手法:扫描28
2.7.1 Ping扫描28
2.7.2 ICMP查询28
2.7.3 操作系统指纹识别28
2.7.4 端口扫描29
2.7.5 拓扑自动发现29
2.8 黑客常用攻击手法:渗透29
2.8.1 弱口令29
2.8.2 开放端口29
2.8.3 开放服务30
2.8.4 操作系统版本信息30
2.8.5 操作系统的漏洞信息30
2.8.6 应用软件的漏洞信息30
2.9 黑客常用攻击手法:权限提升30
2.10 黑客常用攻击手法:木马与远程控制31
2.10.1 木马的原理31
2.10.2 著名的木马31
2.11 使用防火墙防护个人计算机32
2.11.1 防火墙的基本原理32
2.11.2 防火墙的功能32
2.11.3 基于状态的防火墙32
2.11.4 基于代理的防火墙33
2.11.5 防火墙的不足33
2.12 使用杀毒软件防护个人计算机33
2.12.1 杀毒软件的原理33
2.12.2 杀毒软件的特点33
2.13 使用木马清除工具检查木马34
2.13.1 木马清除工具的原理34
2.13.2 反间谍软件34
2.13.3 木马清除工具的局限性34
2.14 一些常见的安全事件34
2.14.1 拒绝服务攻击35
2.14.2 蠕虫引起的互联网瘫痪问题36
2.14.3 僵尸网络36
2.14.4 网络“钓鱼”37
2.15 黑客的道德与法律问题38
2.16 黑客软件开发工具38
2.16.1 Visual Basic编程语言介绍38
2.16.2 Delphi编程语言介绍41
2.16.3 Visual C++编程语言介绍44
2.17 小结46
第2部分 漏洞、木马与病毒篇47
第3章 漏洞基础知识48
3.1 Windows操作系统漏洞48
3.1.1 Microsoft Windows内核消息处理本地缓冲区溢出漏洞的简介48
3.1.2 Microsoft Windows内核消息处理本地缓冲区溢出漏洞的实战49
3.1.3 Microsoft Windows内核消息处理本地缓冲区溢出漏洞的安全解决方案50
3.1.4 Microsoft Windows LPC本地堆溢出漏洞的简介51
3.1.5 Microsoft Windows LPC本地堆溢出漏洞的实战51
3.1.6 Microsoft Windows LPC本地堆溢出漏洞的安全解决方案53
3.1.7 Microsoft OLE和COM远程缓冲区溢出漏洞简介54
3.1.8 Microsoft OLE和COM远程缓冲区溢出漏洞的实战54
3.1.9 Microsoft OLE和COM远程缓冲区溢出漏洞的安全解决方案56
3.1.10 Microsoft Windows GDI+ JPG解析组件缓冲区溢出漏洞简介56
3.1.11 Microsoft Windows GDI+JPG解析组件缓冲区溢出漏洞的实战57
3.1.12 Microsoft Windows GDI+JPG解析组件缓冲区溢出漏洞的安全解决方案59
3.1.13 Microsoft Windows图形渲染引擎安全漏洞简介61
3.1.14 Microsoft Windows图形渲染引擎安全漏洞的实战61
3.1.15 Microsoft Windows图形渲染引擎安全漏洞的安全解决方案64
3.1.16 Microsoft UPnP 缓冲溢出漏洞简介65
3.1.17 UPnP 缓冲区溢出漏洞的实战65
3.1.18 UPnP 缓冲区溢出漏洞的安全解决方案66
3.1.19 Microsoft RPC接口远程任意代码可执行漏洞66
3.1.20 Microsoft RPC接口远程任意代码可执行漏洞的实战68
3.1.21 Microsoft RPC接口远程任意代码可执行漏洞的安全解决方案69
3.1.22 Microsoft WINS服务远程缓冲区溢出漏洞70
3.1.23 Microsoft WINS服务远程缓冲区溢出漏洞的实战72
3.1.24 Microsoft WINS服务远程缓冲区溢出漏洞的安全解决方案74
3.2 IIS漏洞74
3.2.1 IIS的基础知识74
3.2.2 IIS漏洞基础知识76
3.2.3 printer漏洞77
3.2.4 .printer漏洞的实战78
3.2.5 .printer漏洞的安全解决方案81
3.2.6 Unicode目录遍历漏洞81
3.2.7 Unicode目录遍历的实战83
3.2.8 Unicode目录遍历的安全解决方案86
3.2.9 .asp映射分块编码漏洞86
3.2.10 .asp映射分块编码漏洞的实战87
3.2.11 .asp映射分块编码漏洞的安全解决方案89
3.2.12 WebDAV远程缓冲区溢出漏洞89
3.2.13 WebDAV远程缓冲区溢出漏洞实战91
3.2.14 WebDAV远程缓冲区溢出漏洞的安全解决方案92
3.2.15 WebDAV超长请求远程拒绝服务攻击漏洞92
3.2.16 WebDAV超长请求远程拒绝服务攻击漏洞实战94
3.2.17 WebDAV超长请求远程拒绝服务攻击漏洞的安全解决
方案96
3.2.18 WebDAV XML消息处理远程拒绝服务漏洞96
3.2.19 WebDAV XML消息处理远程拒绝服务漏洞实战97
3.2.20 WebDAV XML消息处理远程拒绝服务漏洞的安全解决方案99
3.2.21 Microsoft FrontPage Server Extensions远程缓冲区溢出漏洞100
3.2.22 Microsoft FrontPage Server Extensions远程缓冲区溢出漏洞实战102
3.2.23 Microsoft FrontPage Server Extensions远程缓冲区溢出漏洞的安全解决方案103
3.3 Serv-U漏洞104
3.3.1 Serv-U FTP服务器MDTM命令程缓冲区溢出漏洞104
3.3.2 Serv-U FTP服务器MDTM命令远程缓冲区溢出漏洞实战106
3.3.3 Serv-U FTP服务器MDTM命令远程缓冲区溢出漏洞的安全解决方案108
3.3.4 Serv-U本地权限提升漏洞108
3.3.5 Serv-U本地权限提升漏洞实战110
3.3.6 Serv-U本地权限提升漏洞的安全解决方案113
3.4 小结113
第4章 BBS与Blog的入侵实例114
4.1 存在上传漏洞的BBS的入侵实例114
4.1.1 Google可寻找的BBS系统114
4.1.2 注册BBS资料116
4.1.3 获取Cookie117
4.1.4 生成网页木马121
4.1.5 上传网页木马122
4.1.6 漏洞的防护125
4.2 存在脚本漏洞的BBS的入侵实例126
4.2.1 暴库漏洞的原理127
4.2.2 Google存在暴库漏洞的BBS论坛目标127
4.2.3 注册BBS资料129
4.2.4 获取论坛管理员密码131
4.2.5 获取管理员账户133
4.2.6 获取管理员前台密码136
4.2.7 获取Cookie138
4.2.8 破解管理员后台密码141
4.2.9 安全解决方案143
4.3 与数据库相关的Blog的入侵实例143
4.3.1 漏洞的检测143
4.3.2 了解Dlog系统的结构144
4.3.3 尝试入侵146
4.3.4 上传网页木马153
4.3.5 安全解决方案158
4.4 基于Cookie欺骗的Blog入侵实例159
4.4.1 漏洞的检测159
4.4.2 了解L-Blog系统的结构161
4.4.3 获取Cookie进行Cookie欺骗162
4.4.4 安全解决方案168
4.5 小结168
第5章 信息收集169
5.1 针对目标的信息搜集169
5.1.1 什么是踩点169
5.1.2 确定目标范围170
5.2 Google搜索技术170
5.2.1 Google的基本功能170
5.2.2 site:对搜索的网站进行限制174
5.2.3 filetype:在某一类文件中查找信息174
5.2.4 inurl:搜索的关键字包含在URL链接中175
5.2.5 intitle:搜索的关键字包含在网页标题中176
5.2.6 inanchor:搜索的关键字包含在网页的anchor链点内176
5.2.7 link:搜索所有链接到某个URL地址的网页177
5.2.8 cache:从Google服务器上的缓存页面中查询信息178
5.2.9 Google相关工具178
5.2.10 Google与黑客181
5.3 Whois:注册信息查询工具184
5.3.1 ARIN:国际域名注册机构185
5.3.2 APNIC:亚太域名注册机构186
5.3.3 CNNIC:中国域名注册机构186
5.4 DNS查询188
5.4.1 主机名和IP地址188
5.4.2 主机名的解析189
5.4.3 主机名的分布190
5.4.4 DNS的工作方式191
5.4.5 主DNS服务器193
5.4.6 辅DNS服务器193
5.4.7 从主DNS服务器向辅DNS服务器传送数据194
5.4.8 客户机请求解析的过程195
5.4.9 主机IP地址查询实例196
5.4.10 使用nslookup命令查询IP地址197
5.4.11 使用nslookup查询其他类型的域名198
5.4.12 使用nslookup指定使用的名字服务器199
5.4.13 使用nslookup检查域名的缓存时间200
5.5 路由跟踪与IP追踪205
5.5.1 TraceRoute:路由跟踪205
5.5.2 VisualRoute:IP追踪207
5.6 小结208
第6章 扫描目标209
6.1 漏洞扫描器的历史209
6.2 确定正在运行的服务209
6.2.1 Ping扫描210
6.2.2 ICMP查询211
6.2.3 确定运行的TCP服务和UDP服务的旗标212
6.3 端口扫描原理214
6.3.1 标准端口与非标准端口的划分214
6.3.2 标准端口和非标准端口的含义216
6.3.3 TCP/IP的“三次握手”216
6.3.4 端口扫描应用217
6.3.5 Nessus扫描器218
6.3.6 X-Scan扫描器220
6.4 扫描方法简介223
6.4.1 TCP Connect扫描224
6.4.2 TCP SYN扫描225
6.4.3 TCP FIN扫描226
6.4.4 圣诞树扫描227
6.4.5 TCP空扫描227
6.4.6 TCP ACK扫描228
6.4.7 TCP Windows扫描229
6.4.8 TCP RPC扫描229
6.4.9 UDP扫描229
6.5 操作系统(OS)的识别230
6.5.1 主动协议栈指纹识别技术231
6.5.2 被动协议栈指纹识别技术232
6.5.3 其他的指纹识别技术234
6.6 扫描过程中的攻击技术239
6.6.1 IP欺骗239
6.6.2 DNS欺骗240
6.6.3 Sniffing攻击240
6.6.4 缓冲区溢出241
6.7 扫描工具241
6.7.1 Nmap:扫描器之王241
6.7.2 Nessus:分布式的扫描器243
6.7.3 X-Scan:国内最好的扫描器244
6.8 小结244
第7章 渗透测试245
7.1 渗透的原理245
7.1.1 渗透基础知识245
7.1.2 缓冲区溢出攻击的基础知识245
7.1.3 缓冲区溢出漏洞的攻击方式246
7.1.4 缓冲区溢出的防范246
7.1.5 堆溢出246
7.1.6 格式化串漏洞利用技术248
7.1.7 内核溢出利用技术249
7.2 数据库的渗透251
7.2.1 数据库的用户与权限251
7.2.2 SQL注入技术252
7.2.3 使用Nessus进行数据库渗透测试255
7.3 Web应用的渗透259
7.3.1 CGI渗透测试技术260
7.3.2 使用Nessus进行Web应用渗透测试261
7.3.3 使用Wikto进行Web应用渗透测试265
7.4 Metasploit:渗透测试工具269
7.4.1 Metasploit基础269
7.4.2 命令行界面的Metasploit270
7.4.3 图形界面的Metasploit274
7.5 小结276
第8章 网络设备的攻击277
8.1 网络设备概述277
8.1.1 交换机277
8.1.2 三层交换技术278
8.1.3 局域网交换机的种类278
8.1.4 交换机应用中的问题279
8.1.5 路由器279
8.1.6 路由选择281
8.1.7 路由协议281
8.1.8 路由算法282
8.2 ASS基础283
8.3 SNMP原理284
8.3.1 SNMP基础知识284
8.3.2 SNMP v1286
8.3.3 SNMP v2286
8.4 TraceRoute技术287
8.4.1 TraceRoute原理287
8.4.2 TraceRoute工具288
8.5 攻击网络设备289
8.5.1 SNMP的安全性分析289
8.5.2 利用TFTP291
8.6 小结292
第9章 木马分析293
9.1 木马的基本概念293
9.1.1 木马的定义293
9.1.2 木马的特征293
9.1.3 木马的基本功能:远程监视、控制294
9.1.4 木马的基本功能:远程视频监测295
9.1.5 木马的基本功能:远程管理295
9.1.6 木马的基本功能:发送信息296
9.1.7 木马的基本功能:获得主机信息296
9.1.8 木马的基本功能:修改系统注册表297
9.1.9 木马的基本功能:远程命令297
9.1.10 连接型木马298
9.1.11 用途型木马300
9.1.12 木马的发展方向300
9.1.13 灰鸽子木马301
9.2 木马的行为分析305
9.2.1 木马常用隐藏手段305
9.2.2 木马的自启动技术307
9.2.3 木马连接的隐藏技术308
9.3 冰河远程控制309
9.3.1 配置服务端310
9.3.2 服务端的基本特征311
9.3.3 冰河的使用312
9.3.4 冰河的手工卸载313
9.4 上兴远程控制314
9.4.1 配置自动上线315
9.4.2 配置服务端程序315
9.4.3 上兴远程控制的基本特征315
9.4.4 上兴远程控制的使用316
9.4.5 手工删除上兴远程控制320
9.5 RAdmin321
9.5.1 配置服务端321
9.5.2 安装服务端322
9.5.3 RAdmin的特征322
9.5.4 RAdmin的使用324
9.5.5 手工删除RAdmin325
9.6 木马的防范325
9.6.1 查:检查系统进程与服务326
9.6.2 堵:控制木马的活动327
9.6.3 杀:消除木马的隐患327
9.7 netstat命令327
9.7.1 netstat命令用法328
9.7.2 用netstat命令来监测木马329
9.8 使用冰刃检查木马活动329
9.8.1 利用冰刃查看进程329
9.8.2 利用冰刃查看端口330
9.8.3 注册表330
9.8.4 用冰刃查看文件331
9.8.5 用冰刃查看启动组332
9.8.6 用冰刃查看系统服务332
9.8.7 利用冰刃查找木马实战332
9.9 Ethereal:网络抓包工具334
9.9.1 Ethereal使用介绍334
9.9.2 对木马的监测335
9.10 小结336
第10章 病毒分析337
10.1 计算机病毒基础337
10.1.1 计算机病毒的定义337
10.1.2 计算机病毒发展简史338
10.1.3 计算机病毒的特征338
10.1.4 计算机病毒的程序结构340
10.1.5 计算机病毒的存储结构340
10.1.6 计算机病毒的分类342
10.1.7 计算机病毒的入侵方式344
10.1.8 计算机病毒的命名345
10.1.9 计算机病毒的生命周期346
10.2 计算机病毒分析347
10.2.1 早期的DOS病毒介绍347
10.2.2 宏病毒347
10.2.3 文件型病毒348
10.2.4 引导型病毒350
10.3 蠕虫病毒350
10.3.1 蠕虫的基本结构和传播过程351
10.3.2 蠕虫传播的模式分析351
10.3.3 安全防御蠕虫的传播351
10.3.4 尼姆达(Nimda)病毒352
10.3.5 W32.Sircam病毒352
10.3.6 SCO炸弹353
10.3.7 “斯文”病毒354
10.3.8 SQL蠕虫355
10.3.9 一个简单的蠕虫实验355
10.4 网页脚本病毒357
10.4.1 网页脚本病毒的背景知识357
10.4.2 “欢乐时光”病毒358
10.4.3 一个简单的脚本及恶意网页实验359
10.5 即时通信病毒分析360
10.5.1 即时通信病毒背景介绍360
10.5.2 MSN性感鸡361
10.6 操作系统漏洞攻击病毒分析362
10.6.1 漏洞攻击病毒背景介绍362
10.6.2 红色代码362
10.6.3 冲击波病毒363
10.6.4 震荡波病毒364
10.7 病毒发展的新阶段――移动通信病毒分析365
10.7.1 移动通信病毒背景介绍365
10.7.2 移动通信病毒的特点366
10.7.3 手机病毒的传播途径366
10.7.4 手机病毒的攻击方式367
10.7.5 防范移动通信病毒的安全建议368
10.8 网络钓鱼概述368
10.8.1 网络钓鱼背景介绍368
10.8.2 网络钓鱼的手段和危害369
10.8.3 利用电子邮件“钓鱼”369
10.8.4 防范网络钓鱼的安全建议370
10.9 流氓软件概述370
10.9.1 流氓软件的分类及其危害371
10.9.2 删除流氓软件的工具371
10.9.3 流氓软件的安全防范374
10.10 其他操作系统病毒374
10.10.1 Linux与UNIX病毒374
10.10.2 MAC OS病毒375
10.11 小结376
第3部分 网络攻防篇377
第11章 网络安全防范378
11.1 聊天工具安全防范378
11.1.1 QQ聊天工具安全防范378
11.1.2 WLM与安全防范383
11.2 IE漏洞安全防范385
11.2.1 MIME漏洞的防范385
11.2.2 IE执行程序漏洞的防范386
11.2.3 IE浏览器安全防范387
11.3 网络炸弹安全防范391
11.3.1 IE窗口炸弹的防范391
11.3.2 QQ信息炸弹的防范391
11.3.3 电子邮件炸弹的防范393
11.4 电子邮件安全防范394
11.4.1 邮件客户端的防范394
11.4.2 网络邮箱的防范396
11.5 小结397
第12章 网站脚本的攻防398
12.1 脚本攻击概述398
12.1.1 网站后台漏洞介绍398
12.1.2 网页脚本攻击的分类399
12.2 常见脚本攻防399
12.2.1 常见的ASP脚本攻防399
12.2.2 JavaScript语言与HTML脚本语言的防护400
12.3 跨站脚本的攻防401
12.3.1 HTML输入概述402
12.3.2 跨站脚本攻击剖析402
12.3.3 跨站脚本攻击的安全防护403
12.4 网站管理账号的防护403
12.4.1 DCP-Portal系统安全防护403
12.4.2 动网文章管理系统账号破解与防护404
12.5 论坛的防护404
12.5.1 BBSXP论坛安全防护404
12.5.2 Leadbbs论坛安全防护405
12.6 小结405
第13章 防火墙技术406
13.1 防火墙概述406
13.1.1 防火墙的功能406
13.1.2 防火墙的模型407
13.1.3 防火墙发展史408
13.1.4 防火墙的发展趋势408
13.1.5 防火墙的局限性409
13.1.6 防火墙的脆弱性410
13.2 防火墙基础知识411
13.2.1 防火墙的分类411
13.2.2 包过滤防火墙411
13.2.3 代理服务器防火墙413
13.2.4 个人防火墙414
13.2.5 分布式防火墙414
13.3 防火墙体系结构415
13.3.1 堡垒主机415
13.3.2 非军事区(DMZ)416
13.3.3 屏蔽路由器(Screening Router)416
13.3.4 体系结构417
13.3.5 防火墙的发展趋势418
13.3.6 防火墙的规则418
13.4 防火墙选型与产品简介419
13.4.1 防火墙选型原则419
13.4.2 防火墙产品介绍420
13.5 天网防火墙421
13.5.1 天网防火墙操作界面422
13.5.2 天网防火墙开放端口应用425
13.5.3 应用自定义规则防止常见病毒426
13.5.4 打开Web和FTP服务427
13.5.5 在线升级功能428
13.6 瑞星防火墙429
13.6.1 安装瑞星防火墙429
13.6.2 瑞星防火墙操作界面430
13.6.3 瑞星防火墙的主菜单433
13.7 基于Linux的防火墙iptables437
13.7.1 iptables的发展历史437
13.7.2 iptables原理437
13.7.3 启动iptables438
13.7.4 iptables命令439
13.7.5 iptables防火墙应用举例441
13.7.6 内核Netfilter框架的使用443
13.8 小结446
第14章 入侵检测技术447
14.1 入侵检测技术概述447
14.1.1 入侵检测系统功能447
14.1.2 入侵检测系统的模型448
14.1.3 IDS的数据来源449
14.2 入侵检测方法449
14.2.1 异常入侵检测技术450
14.2.2 误用入侵检测技术450
14.3 入侵检测系统的设计原理451
14.3.1 主机入侵检测系统(HIDS)451
14.3.2 网络入侵检测系统(NIDS)452
14.3.3 分布式结构的入侵检测系统454
14.4 入侵检测系统产品选型原则与产品
介绍455
14.4.1 入侵检测系统产品选型原则455
14.4.2 入侵检测系统产品介绍455
14.5 在Windows系统中安装Snort456
14.5.1 软件准备工作457
14.5.2 安装Web服务器457
14.5.3 为Apache安装PHP支持459
14.5.4 安装MySQL数据库463
14.5.5 安装ADODB、ACID和JpGraph467
14.5.6 安装包捕获库WinPcap469
14.5.7 安装Snort IDS470
14.6 在Linux系统中安装Snort476
14.6.1 软件准备工作477
14.6.2 Linux操作系统下安装源代码软件的基础知识477
14.6.3 安装Apache、MySQL和PHP480
14.6.4 安装LibPcap库482
14.6.5 安装pcre软件包482
14.6.6 安装Snort软件包482
14.6.7 配置ACID485
14.6.8 测试485
14.7 Snort配置文件snort.conf487
14.7.1 定义变量487
14.7.2 配置动态装载库489
14.7.3 配置预处理器489
14.7.4 配置输出插件489
14.7.5 添加运行时配置指示符490
14.7.6 定制自己的规则集490
14.8 入侵检测技术发展趋势492
14.8.1 入侵防御系统IPS492
14.8.2 硬件IDS492
14.9 统一威胁管理(UTM)494
14.9.1 UTM采用的技术495
14.9.2 UTM 发展趋势496
14.10 小结496
第4部分 常见攻防技术篇497
第15章 网络封锁与代理突破498
15.1 网络封锁概述498
15.2 代理服务器软件498
15.2.1 代理服务器软件CCProxy499
15.2.2 Socks代理软件502
15.2.3 花刺代理软件503
15.2.4 代理猎手软件506
15.2.5 在线代理服务器508
15.3 网络工具代理509
15.3.1 MSN代理工具设置509
15.3.2 Foxmail代理工具设置511
15.4 SSH隧道介绍512
15.4.1 SSH隧道概述513
15.4.2 建立SSH隧道513
15.5 共享网络的使用514
15.5.1 拨号共享网络的使用514
15.5.2 路由器共享网络的使用519
15.6 小结522
第16章 操作系统与文件加密技术523
16.1 操作系统密码的破解523
16.1.1 密码破解软件SAMInside523
16.1.2 密码破解软件LC5525
16.1.3 清空系统管理员密码528
16.2 利用系统权限寻找漏洞528
16.2.1 利用替换系统文件的方法进行攻击528
16.2.2 利用本地溢出进行攻击530
16.3 操作系统中的加密设置531
16.3.1 设置电源管理密码531
16.3.2 设置屏幕保护密码532
16.3.3 计算机锁定加密设置533
16.3.4 驱动器隐藏与显示534
16.3.5 给硬盘加写保护535
16.3.6 给光盘加写保护536
16.4 系统登录加密538
16.4.1 防止Windows匿名登录538
16.4.2 设置Windows XP安全登录539
16.5 常用软件与文件加密540
16.5.1 Word文档加密541
16.5.2 Excel文档加密542
16.5.3 文本加密器543
16.5.4 文件夹的隐藏与加密545
16.5.5 禁止修改文件的属性547
16.5.6 压缩软件加密548
16.6 常用加密软件介绍549
16.6.1 EFS加密549
16.6.2 万能加密器550
16.6.3 PGP工具软件551
16.7 小结554
第17章 SQL注入攻防技术555
17.1 SQL注入基础555
17.1.1 SQL注入概述555
17.1.2 SQL注入的原理556
17.1.3 SQL注入的危害与风险556
17.2 ASP与PHP环境下的SQL注入556
17.2.1 SQL注入数据库的判断557
17.2.2 ASP+Access注入剖析557
17.2.3 破解MD5加密560
17.2.4 ASP+SQL Server注入剖析562
17.2.5 PHP+MySQL注入剖析564
17.3 常见Web注入566
17.3.1 HTML注入566
17.3.2 JSP和ASPX注入568
17.3.3 Cookie注入568
17.4 SQL注入的防护570
17.4.1 ASP防注入系统介绍570
17.4.2 PHP防注入系统介绍572
17.5 小结573
第18章 欺骗攻击技术与安全防范574
18.1 URL欺骗574
18.1.1 URL介绍574
18.1.2 URL欺骗原理与防范575
18.2 Cookie欺骗576
18.2.1 Cookie欺骗介绍576
18.2.2 Cookie欺骗原理与防范576
18.3 DNS劫持技术578
18.3.1 DNS介绍578
18.3.2 DNS劫持技术578
18.3.3 DNS劫持技术的防范578
18.4 ARP欺骗580
18.4.1 ARP概述580
18.4.2 ARP协议原理580
18.4.3 ARP欺骗原理580
18.4.4 ARP欺骗攻击的防护581
18.5 小结581
第19章 后门技术与痕迹清理583
19.1 常见后门介绍583
19.1.1 账号后门583
19.1.2 系统服务后门588
19.1.3 漏洞后门594
19.1.4 木马程序后门596
19.1.5 Winshell服务器后门602
19.2 RootKit技术604
19.2.1 RootKit技术概述604
19.2.2 NTRootKit后门604
19.2.3 RootKit专用检测工具介绍606
19.3 黑客之门608
19.3.1 黑客之门介绍608
19.3.2 黑客之门的配置与安装608
19.3.3 连接黑客之门609
19.4 后门的防范610
19.4.1 Windows XP风险后门610
19.4.2 操作系统内置后门的防范612
19.5 日志信息的清理614
19.5.1 手动清理本地计算机日志614
19.5.2 清理远程计算机日志616
19.5.3 清理FTP和WWW日志616
19.6 使用日志工具清理日志617
19.6.1 使用elsave工具清理日志617
19.6.2 使用CleanllSLog工具清理日志618
19.7 小结619
第20章 计算机取证620
20.1 电子证据620
20.1.1 电子证据的概念620
20.1.2 电子证据的特点622
20.1.3 常见的电子证据623
20.2 计算机取证原则625
20.3 获取证物626
20.3.1 获取证物的原则626
20.3.2 收集信息的策略627
20.4 使用FinalData软件627
20.4.1 安装FinalData627
20.4.2 使用FinalData629
20.5 使用EasyRecovery软件631
20.5.1 EasyRecovery的功能631
20.5.2 使用EasyRecovery632
20.6 使用盘载操作系统637
20.6.1 ERD Commander盘载操作系统637
20.6.2 Windows PE盘载操作系统645
20.7 硬盘分析649
20.7.1 硬盘性能参数649
20.7.2 硬盘接口结构650
20.7.3 PQMagic与硬盘结构651
20.8 加密与解密653
20.8.1 密码体制653
20.8.2 算法的分类654
20.8.3 PDF破解密码实战654
20.8.4 WinRAR破解密码实战656
20.9 计算机取证常用工具659
20.9.1 EnCase:软件取证工具659
20.9.2 Quick View Plus:文件浏览器660
20.10 小结663
第21章 无线网络安全664
21.1 无线硬件设备664
21.1.1 访问点665
21.1.2 天线665
21.1.3 无线网卡665
21.1.4 手持设备666
21.1.5 无线设备的选购原则666
21.2 无线网络协议668
21.2.1 IEEE 802.11a协议668
21.2.2 IEEE 802.11b协议668
21.2.3 IEEE 802.11g协议671
21.2.4 IEEE 802.11i协议672
21.2.5 IEEE 802.11n协议674
21.2.6 蓝牙技术676
21.3 无线网络保护机制678
21.3.1 WEP协议678
21.3.2 WPA协议681
21.3.3 WEP升级到WPA684
21.4 无线网络安全工具685
21.4.1 NetStumbler686
21.4.2 Kismet691
21.4.3 AiroPeek NX694
21.4.4 AirSnort712
21.4.5 WEPCrack715
21.5 无线网络攻击与防护718
21.5.1 无线网络攻击718
21.5.2 无线网络防护720
21.6 小结720
附录A Windows的“运行”命令721
附录B 常见程序进程详解724
附录C 网络管理命令大全741
附录D 病毒特征码和木马进程759
附录E 术语表
http://book.itpub.net/tushu/book/2011/0501/77942.html


◆木马的基本概念                                             ◆本马常用攻击手段

◆木马程序的隐藏技术                                       ◆典型的木马:灰鸽子

◆流行的木马:冰河                                          ◆流行的木马:RAdmin

◆木马攻击的防范与清除                             ◆使用冰刃检查木马进程

◆Ethereal防范木马

 

“木马”程序也是一种病毒文件,但其与一般的病毒不同,它不会自我繁殖,也并不刻意地去感染其他文件。用户如果运行了木马程序,则会在自己机器上给黑客留下一个通行的门户,使施种者可以任意毁坏、窃取被种者的文件,甚至远程操控被种者的计算机。可以说,木马对用户的危害是非常大的,在本章中将对木马进行详细解释。

9.1  木马的基本概念

本节将介绍木马的一些基本概念。

9.1.1  木马的定义

木马(Trojan)这个名字来源于古希腊传说,它是指通过一段特定的程序(木马程序)来控制另一台计算机。木马通常有两个可执行程序:一个是客户端,即控制端;另一个是服务端,即被控制端。木马的设计者为了防止木马被发现,采用多种手段隐藏木马。木马服务一旦运行并与被控制端连接,则控制端将享有被控制端的大部分操作权限,例如给计算机增加口令,浏览、移动、复制、删除文件,修改注册表,以及更改计算机配置等。

9.1.2  木马的特征

从木马的定义中可以总结出木马的几大特征。

9.1.2.1  木马的隐藏性

如同其他所有的病毒一样,木马会想尽一切办法不被发现,这也正是木马和远程控制软件的主要区别。举个例子来说,进行局域网间通信的常用软件PCAnywhere就是一款远程通信软件。首先从安装方面来说,它需要一系列的操作,不像一般木马那样直接单击后就可以运行,并且不给出提示。其次在服务端运行时,当客户端与服务端连接成功后客户端上会出现很醒目的提示。而木马的服务端软件在运行时使用各种手段隐藏自己,不可能出现什么提示。总之,木马的隐蔽性主要体现在以下三个方面:

 

安装简单,一般直接单击就会运行,而且没有交互界面。不产生图标,木马程序虽然在系统启动时会自动运行,但它不会在任务栏中产生图标,从而不会让用户察觉出异常。木马程序自动在任务管理器中隐藏,并以“系统服务”的方式欺骗操作系统,让一般的用户根本无法看出其正在运行。

9.1.2.2  木马的自动运行性

黑客的目的自然是想长久控制被种植了木马的主机,而对于一般的程序而言,当系统重启之后就不再运行,除非用户主动运行,这显然与黑客的本来目的相违背。所以,能够随着系统启动或者其他程序启动而自动运行木马程序是它的一个必备功能。

9.1.2.3  木马的欺骗性

木马程序要达到长期隐蔽的目的,就必须借助系统中已有的文件,以防被发现。它经常使用的是常见的文件名或扩展名,如dll,win,sys和explorer等,或者仿制一些不易被人区别的文件名,如字母l与数字1、字母o与数字0,更有甚者干脆借用系统文件中已有的文件名,只不过保存在不同路径中。还有的木马程序为了隐藏自己,把自己设置成一个常用文件格式图标,比如说rar的压缩文件图标,当一不小心打开它时,它就马上运行。

9.1.3  木马的基本功能:远程监视、控制

现在的木马不仅仅是一个只提供远程控制功能的软件,它还提供了很多特殊功能,以方便黑客更好地控制远程主机。归纳起来可以分为:远程监视和控制、视频监测、远程管理和其他功能。

远程监视和控制是木马最主要的功能,通过这个功能,可以让黑客就像使用自己的计算机一样使用被种植了木马的机器。同时为了不引起对方的察觉,也可以只是远程监视,则对方的一举一动都在黑客的监视之下。图9.1是一个远程监视的例子。

 

图9.1  灰鸽子的远程监视

9.1.4  木马的基本功能:远程视频监测

这个功能是能够监测对方的视频情况,当对方有摄像头时,可以自动启动摄像头捕捉图像,相当于监视对方的环境。图9.2是一个视频监测的例子。

 

图9.2  灰鸽子的视频监测

9.1.5  木马的基本功能:远程管理

远程管理包括很多功能,比如远程文件管理、远程Telnet、远程注册表管理等,这些都是为了方便黑客控制主机而设置的。图9.3是一个远程文件管理的例子。

 

图9.3  远程文件管理

9.1.6  木马的基本功能:发送信息

图9.4是一个发送信息的例子。

 

图9.4  发送消息

9.1.7  木马的基本功能:获得主机信息

在客户端选择被控服务端,单击“远程控制命令”标签,弹出系统信息,这时可以得到被控服务端的详细信息,如图9.5所示。

图9.5  利用灰鸽子获得系统信息

其原理比较简单,一般获取机器情况的方法是调用相关的API,在这一点上与应用程序基本一致。

9.1.8  木马的基本功能:修改系统注册表

单击客户端上的“注册表编辑器”标签,展开远程主机,当看到远程主机的注册表时,就可以在上面进行修改、添加、删除等一系列操作了,如图9.6所示。

图9.6  修改注册表

9.1.9  木马的基本功能:远程命令

单击“命令广播”标签,选中要操作的主机,然后在“消息广播”标签中的“消息标题”文本框中输入“灰鸽子”,在“消息正文”文本框中输入“这是一个灰鸽子发的消息”,单击“发送”按钮,如图9.7所示。

图9.7  利用灰鸽子发送远程消息

9.1.10  连接型木马

自木马诞生至今,己经出现了多种类型,在此想一次性列举和说明是不可能的,更何况大多数木马都不是单一功能的木马,而往往是很多功能的集成品。木马可以按照连接方法和使用用途进行初步分类。

从连接方法来分,可以分为以下三类。

◆ 正向连接型

这种类型的客户端连接服务器的时候是直接根据服务器的IP地址和端口来进行连接,比如说Penumbra。其配置服务端的方式如图9.8所示。

 

图9.8  只打开服务端端口进行连接

这种方法直观、简单,但同时也存在相应的缺陷。

它要求知道对方的IP,这点对于不是固定IP的被控端而言,过一段时间IP改变后,控制端就无法连接了。为了弥补这个问题,一些正向连接型的木马工具提供了开机发邮件通知等方法在被控端一开机时就把主机信息通知给控制端。这也算是一种解决方法。对于有防火墙的主机,这种方法就不一定能成功,毕竟防火墙对于这种直接连接是比较敏感的。

基于以上缺陷,发展出了后面的反向连接型木马。

◆ 反向连接型

由于正向连接型的某些不足,后来的木马连接方式发生了变化,不再是由控制端去连接被控制端,而是控制端自动监听,由被控端来进行连接,比如流萤,如图9.9所示。

这个办法可以很好地解决以上的缺陷,但同时也有一个关键问题,那就是这个方法要求控制端有一个固定的公网IP。如果控制端IP是自动分配的话,过一段时间后IP发生变化,则被控端就不可能连接到了。

 

图9.9  反向连接服务端配置时需填写控制端的信息

◆ 反弹连接型

这种反弹连接型木马是从反向连接型发展而来的,它也是由被控端去连接控制端,但其被控端的木马程序不知道控制端的IP,而是知道一个固定的网页文件地址,这个地址一般是网上的免费空间。在这个文件中存放的就是控制端的IP地址和端口。于是,被控端通过这个固定的文件就能知道控制端的信息,从而进行正确的连接。而当控制端IP地址变化后,黑客所要做的只是去该免费空间上修改这个文件的内容就可以了,完全不会影响控制端程序。这样就完美地解决了以上的问题。典型的例子就是灰鸽子,如图9.10所示。

 

图9.10  反弹型木马配置时需给出保存控制端地址的文件的网址

木马从连接方法上分就可以分为以上三类,当然现在很多工具都开始提供多种分类方式供黑客选择,可以说是越来越人性化了。


9.1.11  用途型木马

从使用用途上可以将木马分为以下几类。

◆ 远程控制类

远程控制木马是数量最多、危害最大,同时知名度也最高的一种木马,它可以让攻击者完全控制被感染的计算机,甚至完成一些连计算机主人都无法顺利进行的操作,其危害之大实在不容小觑。

◆ 窃取密码类

密码发送型木马专门为了盗取被感染计算机上的密码,木马一旦被执行,就会自动搜索内存、Cache、临时文件夹及各种敏感密码文件,一旦搜索到有用的密码,木马就会利用免费的电子邮件服务将密码发送到指定的邮箱,从而达到窃取密码的目的。这类木马大多使用25端口发送E-mail。

◆ 键盘记录类

这种木马只记录“受害者”的键盘敲击情况,并且在LOG文件里查找密码。键盘记录分为在线记录和离线记录两种形式,顾名思义,它们分别记录在线和离线状态下敲击键盘时的情况。

◆ 破坏类

这种木马唯一的功能就是破坏被感染计算机的文件系统,使其遭受系统崩溃或重要数据丢失的巨大损失。从这一点上来说,它和病毒很相像。不过,一般来说,这种木马的激活是由攻击者控制的,并且传播能力也比病毒逊色很多。

◆ DoS木马

当黑客入侵了一台计算机,给其种上DoS攻击木马,那么日后这台计算机(也称为“肉鸡”)就成为黑客发动DoS攻击的一个攻击源了。黑客控制的“肉鸡”数量越多,其发动DoS攻击取得的效果就越大。

◆ 代理木马

黑客在入侵的同时掩盖自己的足迹,防止别人发现自己的身份是非常重要的,因此给被控制的“肉鸡”种上代理木马,让其变成攻击者发动攻击的“跳板”就是代理木马最重要的任务。通过代理木马,攻击者可以在匿名的情况下使用Telnet、ICQ、IRC等程序,从而隐蔽自己的踪迹。

9.1.12  木马的发展方向

目前看来,木马可能向以下方向发展:

 

跨平台性  不仅在最普及的Windows系统下,Linux平台上也开始出现木马。模块化设计  现在的木马也有了模块化设计的概念,像bo、netbus、sub7等经典木马都有一些优秀的插件纷纷问世,就是一个很好的说明。更新、更强的感染模式  传统的修改ini文件和注册表的手法已经不能适应更加隐秘的需要,目前的很多木马的感染方式已经开始悄悄转变成像病毒一样。即时通知  现在的木马已经有了即时通知的功能,如IRC和ICQ通知等。更强、更多的功能  黑客是不会满足于现状的,以后的木马可能出现更多、更强大的功能。

9.1.13  灰鸽子木马

灰鸽子是目前国内最流行的木马软件,在每年的木马排行榜上都高居首位,但是灰鸽子同时又是一个典型的木马,它具有前面介绍的所有性质,所以有必要简单了解该木马,以便加深读者对木马的认识。

9.1.13.1  灰鸽子的特点

灰鸽子具有所有木马的共同点,如:

 

只用一个端口来传输所有通信数据,而普通同类软件都用到了两个或两个以上的端口来完成。支持可以控制互联网连接共享、HTTP透明代理上网的计算机。软件智能读取系统设定的代理服务器信息,无须用户设置。无须知道服务端IP,自动上线功能让服务端自动上线报道。灰鸽子专用的上线系统无须注册免费域名,同时提供了备用上线方式,在专用上线系统出现故障时,可以使用该备用上线方式来自动上线。在使用专用上线系统时,还可以控制远程主机通过Socks5代理来中转自动上线。自动上线可以在第一次设置分组、自定义上线图像、上线备注等,这样都可以轻而易举地找到目标主机,同时设置了连接密码以保证服务主机的安全性。同时具有搜索符合条件的主机的功能,如从主机窗口筛选可以列出只有某个窗口的一批主机,例如玩某个游戏的主机;从主机进程筛选可以列出运行了某个程序的一批主机,例如QQ.exe,找到打开了QQ自动上线的主机有哪些。管理远程电脑的文件系统,支持复制、粘贴、删除、断点下载、上传文件或文件夹,文件内容均以加密方式传输,确保通信的安全性。包括远程系统信息、剪切板信息、进程管理、窗口管理、键盘记录、服务管理、管理管理、MS-DOS模拟、代理服务控制等远程控制命令。可以像操作本机注册表一样编辑远程注册表。常用命令广播让控制主机拥有更多的方便。详细的在线主机表显示了主机IP地址、地址位置、电脑名称、系统版本、备注等信息。除了具有语音监听、语音发送,还有远程视频监控功能,只要远程计算机有摄像头,且正常打开没有被占用,就可以看到远程摄像头捕获的图片,还可以把远程摄像头捕获的画面存为Mpeg-1格式。远程语音也可以录制成WAV声音文件。可以设置服务端开放Socks5代理服务器功能和HTTP代理服务功能。不需要第三方软件支持,支持Windows 9x/Me/2000/XP/2003。软件附带有4款实用工具。

 

EXE工具  可以修改任何EXE文件图标,支持真彩色。内网端口映射器  它允许将局域网内的服务映射到互联网上,使在局域网内部也能使用自动上线功能。FTP服务器  可以开放本机FTP服务。Web服务器  可以建立一个简单的Web服务器。

 

服务端程序在Windows 2000/XP/2003可以以服务启动,支持发送多种组合键,如Ctrl+Alt+Delete组合键等,适用于管理服务器主机。远程屏幕捕获还可以录制为Mpeg-1文件格式。全中文友好操作界面。

9.1.13.2  灰鸽子的使用

按照以下步骤可以一步一步地使用灰鸽子。

 

    下载灰鸽子,它可以从很多站点下载到,这里就不特别说明了。本书使用的版本是2006帝国免杀版。

    申请一个免费空间,作为中转服务器。网上很多这种免费空间,如图9.11所示。

 

图9.11  免费空间申请

    申请成功后,会得到一个Web地址和一个FTP管理地址,如图9.12所示。

    设置自动上线。打开灰鸽子客户端,选择自动上线,这个版本只有“FTP更新IP”,其他版本可能会有点不一样。在需要的地方填写刚刚获得的ftp地址信息,然后单击“更新IP到FTP空间”按钮,如图9.13所示。

有的网站对一些敏感文件名称做了过滤,这时需要改一下上传文件名。

    更新成功后可以用浏览器查看刚更新的文件,如图9.14所示。

    现在就可以开始配置服务端了。单击灰鸽子客户端的“配置服务程序”按钮,打开如图9.15所示对话框。首先填写“自动上线设置”选项卡,其中IP通知的地方就填刚才查看到IP文件的地址,其他信息都按各自需要进行填写,如图9.15所示。

 

图9.12  申请成功后的信息

图9.13  设置自动上线

图9.14  更新到FTP空间中的IP内容

图9.15  服务器配置

    接下来设置“安装选项”选项卡和默认功能,如图9.16所示。

图9.16  设置“安装选项”

     然后配置“启动项设置”选项卡,如图9.17所示。

图9.17  配置启动项设置

     “代理服务”不需要配置,配置“高级选项”选项卡,如图9.18所示。

     “插件功能”不需要配置。最后单击“生成服务器”按钮,则会在指定的地方生成一个.exe的服务端。

图9.18  配置“高级选项”

     接下来就是如何让对方运行你的程序了,这不在本书的介绍范围内。下面假设对方已经运行了这个程序,则在你的灰鸽子的客户端自动上线处就会出现其机器了,如图9.19所示。

图9.19  自动上线

自动上线之后的所有活动都随客户端自己了,这里就不再详细介绍。


9.2  木马的行为分析

木马的行为是指木马在被种植机器上进行的活动,这些活动包括隐藏、自启动和网络连接。明白了这些内在的知识才能对木马有个完整的认识。首先对木马而言,隐藏自己是一个必须要解决的问题,下面先介绍木马的常用隐藏手段。

9.2.1  木马常用隐藏手段

木马程序的服务端为了避免被发现,多数都要进行隐藏处理。想要隐藏木马的服务器,可以伪隐藏,也可以真隐藏。伪隐藏,就是指程序的进程仍然存在,只不过让它消失在进程列表里;真隐藏则是让程序彻底消失,不以一个进程或者服务的方式工作。

下面分别介绍这两种不同的隐藏方法。

9.2.1.1  伪隐藏技术

伪隐藏的方法是比较容易实现的,对于Windows NT/2000等,其方法就是通过API的拦截技术,通过建立一个后台的系统钩子,拦截PSAPI的EnumProcessModules等相关函数,以此实现对进程和服务的遍历调用的控制,当检测到进程ID(PID)为木马程序的服务端进程时直接跳过,这样就实现了进程的隐藏。金山词霸等软件就是使用了类似的方法,拦截了TextOutA和TextOutW函数,截获了屏幕输出,实现即时翻译。同样,这种方法也可以用在进程隐藏上。

9.2.1.2  真隐藏技术

当进程为真隐藏时,则此木马的服务端程序运行后,就不应该具备一般进程,也不应该具备服务,即完全地进入了系统的内核。为了达到这个目的,黑客不把服务端程序作为一个应用程序,而将其作为一个其他应用程序的线程,把自身注入其他应用程序的地址空间。这个应用程序对于系统来说,是一个绝对安全的程序,这样就达到了彻底隐藏的效果,也导致查杀黑客程序难度的增加。

最直接的例子就是在灰鸽子程序配置时,会提示使用IEXPLORE.EXE启动服务端程序,这就表示是注入到IEXPLORE.EXE来进行隐藏的,如图9.20所示。

隐藏后,在系统的任务管理器中是无法找到的,如图9.21所示。

 

       

          图9.20  灰鸽子的隐藏技术                              图9.21  隐藏进程

光凭自己观察是无法发现什么痕迹的,但实际上它已经注入到IEXPLORE.EXE并进行连接了。通过工具可以查看,如图9.22所示。

 

图9.22  发现隐藏的进程

如图9.22所示,可以发现IEXPLORE.EXE进程其实已经在运行,并且已经被注入,所以给出红色标志。该工具会在后面章节中详细介绍。

至此,大家对黑客的隐藏手段有了一定的了解,下面来看看木马的自启动技术。

9.2.2  木马的自启动技术

为了达到长期控制主机的目的,当主机重启之后必须让木马程序再次运行,这样就需要其具有一定的自启动能力。让程序自启动的方法比较多,常见的有加载程序到启动组、写程序启动路径到注册表等。下面介绍几种常见的方法。

9.2.2.1  加载程序到启动组

如果木马隐藏在启动组,虽然不是十分隐蔽,但那里确实是自动加载运行的好场所,因此还是有木马喜欢在此驻留的。常见的启动组包括:

 

“开始”菜单中的启动项,对应的文件夹是C:Documents and Settings用户名[开始]菜单程序启动。注册表[HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionRun]项。注册表[HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionRun]项。

9.2.2.2  修改文件关联

修改文件关联是木马常用的手段,比方说正常情况下TXT文件的打开方式为记事本程序,但一旦感染了木马,则TXT文件就会被修改为用木马程序打开,冰河就是这样做的。冰河通过修改HKEY_CLASSES_ROOTtxtfilewhellopencommand,将%SystemRoot%system32NOTEPAD.EXE %1改为C:WINDOWSSYSTEMSYSEXPLR.EXE%l,这样,一旦双击一个TXT文件,原本应用记事本程序打开该文件,现在却变成启动木马程序了。


9.2.2.3  注册成为服务项

将服务端程序注册为一个自启动的服务也是很多后门应用的手段,其在注册表中的键值是[HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServices],可以在这个键值下进行查找,比如灰鸽子就是这样,如图9.23所示。

 

图9.23  灰鸽子的自启动

以上粗略地介绍了几种常用的木马自启动技术。还有很多其他技术,平台不同方法也就不同,如果读者感兴趣可以去相关安全网站上查阅。

9.2.3  木马连接的隐藏技术

木马程序数据传递的方法最常见的是使用TCP和UDP传输数据,这种方法通常是利用Winsock与目标主机的指定端口建立连接,使用send和recv等API进行数据传递。

这种方法的好处是简单,易于使用,但缺点是隐蔽性比较差,往往容易被一些工具软件发现。例如在命令行状态下使用netstat命令,就可以查看到当前活动的TCP和UDP连接。

 

C:Documents and Settingsbigball>netstat -n

Active Connections

Proto Local Address Foreign Address State

TCP 192.0.0.9:1032 64.4.13.48:1863 ESTABLISHED

TCP 192.0.0.9:1112 61.141.212.95:80 ESTABLISHED

TCP 192.0.0.9:1135 202.130.239.223:80 ESTABLISHED

TCP 192.0.0.9:1142 202.130.239.223:80 ESTABLISHED

TCP 192.0.0.9:1162 192.0.0.8:139 TIME_WAIT

TCP 192.0.0.9:1169 202.130.239.159:80 ESTABLISHED

TCP 192.0.0.9:1170 202.130.239.133:80 TIME_WAIT

 

但是,黑客仍然可以使用以下两种方法躲避侦察。

◆ 合并端口法

使用特殊的手段,在一个端口上同时绑定两个TCP或者UDP连接(比如80端口的HTTP),以达到隐藏端口的目地。

◆ 修改ICMP头法

根据ICMP(Internet Control Message Protocol)协议进行数据的发送,原理是修改ICMP头的构造,加入木马的控制字段。这样的木马具备很多新特点,如不占用端口、使用户难以发觉等。同时,使用ICMP可以穿透一些防火墙,从而增加了防范的难度。

之所以具有这种特点,是因为ICMP不同于TCP和UDP,ICMP工作于网络的应用层,不使用TCP协议。关于网络层次的结构,如图9.24所示。

 

 

 

ICMP

UDP

IGMP

ARP

RARP

IP

硬件

TCP

图9.24  网络层次结构图


9.3  冰河远程控制

该软件主要用于远程监控,具体功能包括:

 

自动跟踪目标主机屏幕变化,同时可以完全模拟键盘及鼠标输入。即在被控端屏幕变化的同时,控制端的一切键盘及鼠标操作都将反映在被控端屏幕上(局域网适用)。记录各种口令信息。包括开机口令、屏保口令、各种共享资源口令及绝大多数在对话框中出现过的口令信息。获取系统信息。包括计算机名、注册公司、当前用户、系统路径、操作系统版本、当前显示分辨率、物理及逻辑磁盘信息等多项系统数据。限制系统功能。包括远程关机、远程重启计算机、锁定鼠标、锁定系统热键及锁定注册表等多项功能限制。远程文件操作。包括创建、上传、下载、复制、删除文件或目录、文件压缩、快速浏览文本文件、远程打开文件(提供了4种不同的打开方式:正常、最大化、最小化和隐藏方式)等多项文件操作功能。注册表操作。包括对主键的浏览、增删、复制、重命名和对键值的读写等所有注册表操作功能。发送信息。以4种常用图标向被控端发送简短信息。点对点通讯。以聊天室形式同被控端进行在线交谈。

 

其界面如图9.25所示。

 

图9.25  冰河主界面

9.3.1  配置服务端

首先冰河是一个主动连接型的木马,所以不需要申请中转服务器,直接配置服务端程序即可。在工具栏中单击“配置本地服务器程序”按钮,打开如图9.26所示对话框。

 

图9.26  配置服务端

首先选择待配置文件,这个文件在冰河目录里;之后进行各种配置,如进行“基本设置”,如图9.27所示。

 

图9.27  进行“基本设置”

然后切换到“自我保护”选项卡,进行相应的设置,如图9.28所示。

 

图9.28  进行“自我保护”配置

“邮件通知”不需要进行配置,直接单击“确定”按钮,服务端就配置完毕了。

9.3.2  服务端的基本特征

查看系统进程,会发现KERNEL32.EXE,如图9.29所示。在C:Windowssystem32文件夹下会发现KERNEL32.EXE文件,如图9.30所示。

         

          图9.29  冰河进程                                 图9.30  服务端程序

启动组中会添加KERNEL32.EXE,注册表键值为HKEY_LOCAL_MACHINESOFTWARE MicrosoftWindowsCurrentVersionRun,如图9.31所示。

图9.31  冰河的启动项

注意,以上特征根据服务端配置的不同可能会有所不同。

9.3.3  冰河的使用

单击“添加主机”按钮,输入种植服务端的主机信息,如图9.32所示。添加成功之后,就可以看到对方主机的情况了,如图9.33所示。

 

               

     图9.32  添加主机                                图9.33  添加主机成功

要进行屏幕监控,单击“查看屏幕”按钮,选择相应的设置,即可看到对方的屏幕,如图9.34所示。

 

图9.34  屏幕查看

可以看出冰河的屏幕监控功能不是很好。

“冰河信使”是一个给服务端发送信息的功能,单击“冰河信使”按钮,弹出菜单,在其中填写相应的信息,单击“发送”按钮,则服务端的主机上会弹出发送的信息,如图9.35所示。

文件管理功能是另外一个功能。在“文件管理器”选项卡中,可以像操作自己的计算机一样操作远程主机,如图9.36所示。

 

图9.35  冰河信使

图9.36  冰河文件管理

远程命令是冰河的主要功能,里面有各种类型的命令,在“命令控制台”选项卡中就可以看到。如图9.37所示,是一个获得系统信息的命令。


9.3.4  冰河的手工卸载

黑客攻防从入门到入狱 网络安全与黑客攻防宝典

最后介绍一下如何手工卸载冰河,专业卸载工具很多,这里就不介绍了。

 

     打开注册表regedit.exe。

图9.37  远程命令

     进入HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionRun。

     查找两个路径并删除C:windowssystemkernel32.exe和C:windowssystemsysexplr.exe。

     关闭regedit.exe,重新启动Windows。

     删除C:windowssystem32kernel32.exe和C:windowssystem32sysexplr.exe木马程序。

这是根据标准配置来进行服务端配置的删除方法,其余配置可以相应进行处理。


9.4  上兴远程控制

这是一个反弹连接型木马,所以需要配置中转服务器(用之前申请的那个地址),其客户端界面如图9.38所示。

图9.38  上兴远程控制界面

9.4.1  配置自动上线

单击客户端的“更新IP”按钮,在弹出的窗口中输入之前申请的免费空间的信息,然后单击“更新”按钮,则客户端信息就保存到了中转服务器中,如图9.39所示。

9.4.2  配置服务端程序

单击客户端的“配置服务端”按钮,在弹出的窗口中填入相应的信息,如图9.40所示。

                  

               图9.39  配置中转服务器                          图9.40  配置服务端

单击“生成服务端”按钮,然后选择放置服务端的位置,之后就可以看到生成的服务端了。

9.4.3  上兴远程控制的基本特征

上兴远程控制的基本特征如下:

 

由于在配置服务端时可以隐藏进程,所以在任务管理器中无法找到该进程,但通过工具可以看到被注入的IEXPLORE.EXE,如图9.41所示。

图9.41  被注入的IEXPLORE.EXE进程

图9.42  注册的服务项

图9.43  服务在注册表中的键值

注册成为了服务项,如图9.42所示。在注册表中的键值如图9.43所示。

9.4.4  上兴远程控制的使用

实现远程屏幕功能,只要单击客户端的“远程屏幕”按钮,就可以看到对方的屏幕内容了,如图9.44所示。

图9.44  远程屏幕

在屏幕监视界面中有“键盘控制”和“鼠标控制”两个按钮,单击按钮则可以进行相应的远程控制。

单击“文件管理”按钮,在客户端左下方选中欲操作的主机并展开,可以看到主机的硬盘分区情况,然后就可以进行相应的文件操作了,如图9.45所示。

 

图9.45  文件管理

单击“注册表”按钮,可以看到对方主机的注册表。还有很多功能可以选择,如图9.46所示。

 

图9.46  注册表控制

单击客户端上的“服务管理”按钮,再单击右侧的“查看服务”按钮,就可以看到远程主机上的所有服务信息。右侧还有很多对服务进行操作的按钮,如图9.47所示。

 

图9.47  服务管理

单击“进程管理”按钮,然后再单击“查看进程”按钮,就可以查看对方机器中所有的进程。同时还提供有“终止进程”功能,如图9.48所示。

 

图9.48  进程管理

单击“命令提示符”按钮,会出现一个类似终端的界面,可以在其中进行相应的操作,如图9.49所示。

 

图9.49  命令提示符界面

“键盘记录”功能可以记录远程用户的键盘操作。单击“键盘记录”按钮,在弹出的窗口中单击“启动键盘记录”按钮,这时就可以慢慢等待服务端的用户输入信息了。过一段时间后单击“终止键盘记录”按钮,然后单击“查看键盘记录”按钮,即可看到对方在这段时间内所有的键盘记录,如图9.50所示。

 

图9.50  键盘记录

“批量命令”包含了一些有用的小功能,如这里试验的“开启代理”功能。单击“批量开启代理”按钮,选中要操作的主机,然后在“开启HTTP代理”中单击“开启代理”按钮,就可以看到服务器中开启的端口,如1080端口已经打开了,如图9.51所示。

 

图9.51  打开代理

对上兴远程控制的使用就介绍到这里,下面介绍如何手工删除服务端。



9.4.5  手工删除上兴远程控制

手工删除上兴远程控制的步骤如下:

 

     先运用第三方软件结束IEXPLORE.EXE进程,如图9.52所示。

 

图9.52  结束进程

     然后进入注册表删除服务项,如图9.53所示。

 

图9.53  删除服务项

     进入C:Program FilesCommon FilesMicrosoft SharedMSInfo目录删除文件,如图9.54所示。

图9.54  删除文件



  

爱华网本文地址 » http://www.aihuau.com/a/365451/338505876488.html

更多阅读

Ansys有限元分析-ansys13.0从入门到实战 有限元分析软件ansys

如何快速高效的学习ANSYS??很多人都有疑问,why?相对于其他应用型软件而言,ANSYS作为大型权威性的有限元分析软件,对提高解决问题的能力是一个全面的锻炼过程,是一门相当难学的软件,因而,要学好ANSYS,对学习者就提出了很高的要求ansys13.0从入

国际象棋从入门到精通 国际象棋入门快易精

国际象棋从入门到精通林敏君早在几年前,我写过一篇《不可不看的优秀国际象棋书》,今天重温旧帖,觉得有些内容应该重写了,一些不适合自学的及重复的内容应该删去,本着精简实用的原则重新推荐合适的教材。近年我国的国际象棋事业发展迅

声明:《黑客攻防从入门到入狱 网络安全与黑客攻防宝典》为网友斷橋殘影分享!如侵犯到您的合法权益请联系我们删除