本书介绍了网络监听与信息安全的基本理论和关键技术,主要包含4部分内容:第1部分介绍网络体系结构、TCP/IP协议族、局域网技术与网络编程的一些基础知识。第2部分介绍网络监听技术,包括包捕获、过滤、协议分析的程序设计基础和一些监听工具的介绍。第3部分介绍防范监听技术、保证信息安全的一些方法,包括消除网络结构隐患、检测与清除监听器和使用加密技术等。第4部分为实例学习,其中第10章介绍一些较简单实例,主要是对前面3部分内容的一些应用,第11章介绍如何设计并编程实现一个大型网络监听系统。\r\n\r\n 本书主要面向对网络监听与信息安全有兴趣的读者,全书内容丰富,讲解由浅入深,有很强的实用性和指导性。\r\n
\r\n
1章 计算机网络体系结构1 \r\n\r\n 1.1 基础知识与常见术语1 \r\n\r\n 1.1.1 网络功能与协议1 \r\n\r\n 1.1.2 包与帧2 \r\n\r\n 1.1.3 网络规模分类4 \r\n\r\n 1.1.4 网络类型与网络操作系统 4 \r\n\r\n 1.2 开放系统互连参考模型5 \r\n\r\n 1.2.1 物理层6 \r\n\r\n 1.2.2 数据链路层6 \r\n\r\n 1.2.3 网络层7 \r\n\r\n 1.2.4 传输层7 \r\n\r\n 1.2.5 会话层7 \r\n\r\n 1.2.6 表示层8 \r\n\r\n 1.2.7 应用层8 \r\n\r\n 1.2.8 OSI模型综述8 \r\n\r\n 1.3 TCP/IP参考模型10 \r\n\r\n 1.3.1 网络接口层11 \r\n\r\n 1.3.2 网际层11 \r\n\r\n 1.3.3 传输层12 \r\n\r\n 1.3.4 应用层12 \r\n\r\n 1.4 网络接口层及其相关协议13 \r\n\r\n 1.4.1 面向字符的链路层协议和面向比特的链路层协议13 \r\n\r\n 1.4.2 高级数据链路控制规程HDLC14 \r\n\r\n 1.4.3 X.25的链路层协议LAPB16 \r\n\r\n 1.4.4 点到点(PPP)协议17 \r\n\r\n 1.5 网际层及其相关协议18 \r\n\r\n 1.5.1 IP协议18 \r\n\r\n 1.5.2 消息控制协议 22 \r\n\r\n 1.5.3 地址解析/反向地址解析协议24 \r\n\r\n 1.6 传输层及其相关协议26 \r\n\r\n 1.6.1 面向连接的TCP协议26 \r\n\r\n 1.6.2 无连接的UDP协议30 \r\n\r\n 1.7 应用层及其相关协议30 \r\n\r\n 1.7.1 客户/服务器模式30 \r\n\r\n 1.7.2 域名系统(DNS)31 \r\n\r\n 1.7.3 远程登录(TELNET)31 \r\n\r\n 1.7.4 文件传输协议(FTP)33 \r\n\r\n 1.7.5 简单邮件传输协议(SMTP)35 \r\n\r\n 第2章 局域网技术39 \r\n\r\n 2.1 局域网概述39 \r\n\r\n 2.1.1 局域网定义39 \r\n\r\n 2.1.2 局域网简史39 \r\n\r\n 2.1.3 局域网特点40 \r\n\r\n 2.1.4 局域网组成40 \r\n\r\n 2.2 网络接口卡与硬件编址40 \r\n\r\n 2.2.1 网卡基本结构 41 \r\n\r\n 2.2.2 网卡参数42 \r\n\r\n 2.2.3 硬件编址与包过滤42 \r\n\r\n 2.2.4 硬件编址方式 44 \r\n\r\n 2.2.5 广播与多播44 \r\n\r\n 2.2.6 帧格式45 \r\n\r\n 2.2.7 隐式帧网络46 \r\n\r\n 2.3 局域网拓扑结构 47 \r\n\r\n 2.3.1 星型拓扑结构 47 \r\n\r\n 2.3.2 环形拓扑结构 48 \r\n\r\n 2.3.3 总线拓扑结构 48 \r\n\r\n 2.3.4 树型结构49 \r\n\r\n 2.3.5 点对点连接49 \r\n\r\n 2.3.6 网状结构50 \r\n\r\n 2.4 局域网体系结构 50 \r\n\r\n 2.4.1 IEEE 802局域网参考模型50 \r\n\r\n 2.4.2 IEEE 802局域网标准53 \r\n\r\n 2.4.3 以太网技术54 \r\n\r\n 2.4.4 令牌环网58 \r\n\r\n 2.6 局域网互连设备 62 \r\n\r\n 2.5.1 转发器 62 \r\n\r\n 2.5.2 中继器 63 \r\n\r\n 2.5.3 网桥 63 \r\n\r\n 2.5.4 集线器 66 \r\n\r\n 2.5.5 路由器 69 \r\n\r\n 第3章 网络编程基础 73 \r\n\r\n 3.1 NetBIOS简介 73 \r\n\r\n 3.1.1 NetBIOS通信 73 \r\n\r\n 3.1.2 NetBIOS编程 74 \r\n\r\n 3.1.3 小结 76 \r\n\r\n 3.2 Socket原理与通信规范 76 \r\n\r\n 3.2.1 Socket基础知识 76 \r\n\r\n 3.2.2 客户机/服务器模式 78 \r\n\r\n 3.3 Winsock编程基础 79 \r\n\r\n 3.3.1 Winsock简史 79 \r\n\r\n 3.3.2 Winsock体系结构 79 \r\n\r\n 3.3.3 Socket类型 80 \r\n\r\n 3.3.4 Winsock库加载和卸载 81 \r\n\r\n 3.3.5 Winsock初始化与关闭 81 \r\n\r\n 3.3.6 Winsock协议信息 83 \r\n\r\n 3.3.7 字节顺序 84 \r\n\r\n 3.4 IP家族 85 \r\n\r\n 3.4.1 定址 86 \r\n\r\n 3.4.2 获取主机信息 87 \r\n\r\n 3.5 构架TCP/IP应用程序框架 90 \r\n\r\n 3.5.1 Windows Socket与Berkeley Socket的差异 91 \r\n\r\n 3.5.2 隐藏UNIX和WINDOWS SOCKET API的区别 92 \r\n\r\n 3.5.3 TCP/IP框架设计基础 94 \r\n\r\n 3.5.4 TCP/UDP服务器/客户机框架 101 \r\n\r\n 3.6 RAW SOCKET编程 111 \r\n\r\n 3.6.1 创建原始套接字 111 \r\n\r\n 3.6.2 设置套接字选项 112 \r\n\r\n 3.6.3 创建并填充相应协议头 115 \r\n\r\n 3.6.4 后续步骤 116 \r\n\r\n 第4章 网络监听与过滤技术 118 \r\n\r\n 4.1 包捕获 118 \r\n\r\n 4.1.1 利用以太网络的广播特性进行监听 119 \r\n\r\n 4.1.2 基于路由器的网络底层信息监听技术 120 \r\n\r\n 4.2 包过滤与分解 122 \r\n\r\n 4.2.1 过滤原理 122 \r\n\r\n 4.2.2 包分解 122 \r\n\r\n 4.2.3 BPF包捕获与过滤机制 122 \r\n\r\n 4.3 系统无关捕获函数库 131 \r\n\r\n 4.3.1 Libpcap体系结构 131 \r\n\r\n 4.3.2 WinPcap体系结构 134 \r\n\r\n 4.3.3 使用pcap库 135 \r\n\r\n 第5章 协议分析模块 154 \r\n\r\n 5.1 协议分析总控函数与数据结构 154 \r\n\r\n 5.1.1 协议分析总控函数 154 \r\n\r\n 5.1.2 报文协议信息 157 \r\n\r\n 5.1.3 统计信息 160 \r\n\r\n 5.2 链路层支持 162 \r\n\r\n 5.3 网络层支持 166 \r\n\r\n 5.3.1 IP协议支持 166 \r\n\r\n 5.3.2 ARP/RARP协议支持 177 \r\n\r\n 5.3.3 ICMP协议支持 179 \r\n\r\n 5.4 传输层支持 189 \r\n\r\n 5.4.1 TCP协议支持 189 \r\n\r\n 5.4.2 UDP协议支持 198 \r\n\r\n 第6章 网络监听技术--网管角度 201 \r\n\r\n 6.1 监听概述 201 \r\n\r\n 6.2 监听的实施 202 \r\n\r\n 6.2.1 广播式以太网 202 \r\n\r\n 6.2.2 交换式以太网 203 \r\n\r\n 6.3 监听预防 208 \r\n\r\n 6.4 几种常见的监听工具介绍 209 \r\n\r\n 第7章 监听防范 218 \r\n\r\n 7.1 局域网内的防护 218 \r\n\r\n 7.1.1 通信线路的保护 218 \r\n\r\n 7.1.2 计算机防电磁泄漏 218 \r\n\r\n 7.1.3 访问控制 219 \r\n\r\n 7.1.4 使用安全的网络结构 222 \r\n\r\n 7.1.5 针对ARP欺骗的防范技术 223 \r\n\r\n 7.1.6 WinNT/2K的安全简介 223 \r\n\r\n 7.2 对外部网络的防护 228 \r\n\r\n 7.2.1 防火墙技术 228 \r\n\r\n 7.2.2 虚拟专网(VPN)技术 230 \r\n\r\n 7.3 平台漏洞及其补救措施举例 234 \r\n\r\n 第8章 监听检测 238 \r\n\r\n 8.1 监听检测的原理 238 \r\n\r\n 8.1.1 广播式以太网中的监听检测 238 \r\n\r\n 8.1.2 交换式以太网中的监听检测 239 \r\n\r\n 8.2 木马病毒的检测与清除 240 \r\n\r\n 8.2.1 木马病毒原理及特点简述 240 \r\n\r\n 8.2.2 木马病毒的检测与清除 241 \r\n\r\n 8.2.3 常见木马病毒的检测与清除 242 \r\n\r\n 8.3 监听检测工具AntiSniff 247 \r\n\r\n 第9章 信息加密与保护 251 \r\n\r\n 9.1 密码学概论 251 \r\n\r\n 9.1.1 密码学常用术语 251 \r\n\r\n 9.1.2 单向散列函数 252 \r\n\r\n 9.1.3 对称密码 253 \r\n\r\n 9.1.4 非对称密码 255 \r\n\r\n 9.1.5 密钥的管理 256 \r\n\r\n 9.1.6 加密技术的应用 257 \r\n\r\n 9.2 安全算法设计:对称密码技术与DES算法 259 \r\n\r\n 9.2.1 原理与设计 260 \r\n\r\n 9.2.2 处理密钥 260 \r\n\r\n 9.2.3 处理64位数据块 261 \r\n\r\n 9.2.4 关于解密 267 \r\n\r\n 9.2.5 程序总括 267 \r\n\r\n 9.2.6 DES算法源程序 268 \r\n\r\n 9.2.7 DES安全性分析 282 \r\n\r\n 9.3 安全算法设计:非对称密码技术与RSA算法 285 \r\n\r\n 9.3.1 RSA算法设计 285 \r\n\r\n 9.3.2 RSA算法源程序 288 \r\n\r\n 9.3.3 RSA算法安全性分析 309 \r\n\r\n 9.4 安全协议:安全套接层(SSL)协议 312 \r\n\r\n 9.4.1 安全协议概述 312 \r\n\r\n 9.4.2 SSL协议的起源 315 \r\n\r\n 9.4.3 SSL协议概述 315 \r\n\r\n 9.4.4 协议规范 315 \r\n\r\n 9.4.5 相关技术 319 \r\n\r\n 第10章 实例学习 321 \r\n\r\n 10.1 利用WinpCap捕获局域网数据帧 321 \r\n\r\n 10.1.1 WinpCap使用说明 321 \r\n\r\n 10.1.2 示例代码 322 \r\n\r\n 10.2 利用WinSock的新特性捕获Win2K下IP数据分组 325 \r\n\r\n 10.2.1 原理简述 325 \r\n\r\n 10.2.2 示例代码 325 \r\n\r\n 10.3 Windows 2000下简单的IP监听程序 327 \r\n\r\n 10.3.1 封装进行数据捕获操作的工作者线程的CListener类 328 \r\n\r\n 10.3.2 主界面对话框类 332 \r\n\r\n 10.3.3 简单IP地址过滤 337 \r\n\r\n 10.4 组建一个安全的子网 338 \r\n\r\n 10.5 简单的监听检测程序 338 \r\n\r\n 10.6 设计Windows 98/2000下的简单邮件加密程序 343 \r\n\r\n 10.6.1 整体结构 343 \r\n\r\n 10.6.2 BASE64编解码 344 \r\n\r\n 10.6.3 程序源码 344 \r\n\r\n 第11章 一个完善的监听/监听检测实例 356 \r\n\r\n 11.1 功能概述及运行一览 356 \r\n\r\n 11.1.1 功能概述 356 \r\n\r\n 11.1.2 运行情况 356 \r\n\r\n 11.1.3 程序的编译与安装 358 \r\n\r\n 11.2 总体设计 358 \r\n\r\n 11.3 界面设计 358 \r\n\r\n 11.3.1 主界面设计 360 \r\n\r\n 11.3.2 过滤器设置界面 378 \r\n\r\n 11.4 数据包的捕获与过滤 384 \r\n\r\n 11.4.1 数据捕获驱动程序 384 \r\n\r\n 11.4.2 数据的过滤 402 \r\n\r\n 11.5 监听检测 405 \r\n\r\n 11.6 数据解码与显示 413 \r\n\r\n 11.7 数据存储与加载 414 \r\n\r\n 11.8 捕获示例 417 \r\n
\r\n
Sniffer(监听)最初是提供给管理员的一类极具威力的网络工具, 使用这类工具可以监视网络的状态. 数据流动情况以及网络卜传输的信息并利用这些信息来分析网络性能. 排除网络故障. 建立在监听技术基础上的网络分析仪是专业网络工程师必不可少的工具, 其全球市场每年达数十亿美元.
监听工具能有效地截获网上的数据, 因此它同时也成为黑客最喜爱的工具. 黑客运行监听程序以暗中监视他人的网络状况. 窃取明文传输的密码和各种机密数据, 对网络信息安全造成极大威胁. 为保护网络关键数据传输的安全, 通常必须采用各种反监听措施以保证信息不被窃取.
监听技术及其防范是本书的两大主题. 全书共分4个部分, 共11章, 内容由浅入深.
第1部分包括第1章一串3章, 介绍网络基础知识, 主要面向对网络及网络编程不很熟悉的读者.
第1章讲述网络体系结构与TCP/IP协议族, 重点在于分析各常用协议数据包格式, 为以后的协议分析打下基础.
第2章讲述作为监听技术主要舞台的局域网技术, 包括网络接口卡. 局域网拓扑结构. 主要的局域网类型和一些网络互连设备.
第3章讲述网络编程, 包括NetBIOS标准接口和Socket编程. 本章最后介绍的Raw socket是实现网络监听的一种重要技术.
第2部分包括第4章~第6章, 讲解网络监听技术.
第4章讲述包捕获与过滤技术, 包括包捕获. 过滤和分解机制, 重点介绍了BPF模型与pcap库接口以及如何使用它们进行监听.
第5章讲述如何设计协议分析模块进行数据包分析. 数据包分析可以说是网络监听的真正目的, 也是监听程序设计的难点所在. 本章结合前面所学内容, 实际设计并编码实现了一个协议分析模块, 提供对TCP/IP体系结构中从链路层到传输层几种常用协议的支持.
第6章面向网络管理者角度讲述网络监听技术, 主要包括监听的原理与实施, 并介绍了几种常用的监听工具.
第3部分包括第7章~第9章, 讲述如何防范网络监听, 保证信息安全.
第7章介绍通用的网络和系统安全策略, 包括局域网内的防范(访问控制. 使用安全的网络结构等). 对外部网络的防护(防火墙. 虚拟专用网等). 本意最后介绍了一些常见平台漏洞与补救方法.
第8章讲述如何检测网络监听程序和木马病毒的存在, 并介绍了监听检测工具anti-sniff的使用.
第9章介绍了保证信息安全的一种关键技术:数据加密, 内容主要包括密码学的一些基本概念. 加密技术的应用. 安全算法(以对称算法DES与非对称算法RSA为例)与安全协议(以SSL为例)的设计与实现.
第4部分包括第10章~第11章, 主要是实例学习.
第10章介绍了一些较简单的实例, 主要是对前面3部分内容的应用.
第11章介绍如何设计并编程实现一个较完善的网络监听系统.
本书内容除第4部分实例学习是建立在特定系统上之外, 其余各部分均与具体操作系统无关, 其内容可适用于Windows. UNIX. Linux等平台.
由于作者水平有限, 书中难免有不足和疏忽之处, 恳请读者和各位同仁批评指正. 全书有关的源代码请到http://www. ucbook.com上下载.
编者
无封面