网络分析技术揭秘:原理、实践与WinPcap深入解析

网络分析技术揭秘:原理、实践与WinPcap深入解析

查阅电子书
手机扫码
  • 微信扫一扫

    关注微信公众号

因版权原因待上架

编辑推荐

以WinPcap的源码分析为依托,深刻阐释了网络分析技术。

内容简介

本书结合名的开源软件库WinPcap来说明网络分析技术的实现原理及使用方法。其中包括WinPcap内核驱动,编译与使用,数据包的捕获、发送、内核过滤与接收,以及网络流量的统计与网络状态的分析重要内容,而且作者还通过修改内核级的源代码解决了开源代码本身尚未完成的一个重要功能:数据包的内核转储。经过系统深入的分析,读者既能对WinPcap的架构、使用与实现机制有深入的理解,又能快速熟悉操作系统内核与用户层交互的实现机制,并全面了解网络分析专业各方面的技术,进而将相关知识运用到实际项目中。

作者简介

作者吕雪峰,华中科技大学控制工程与控制理论专业硕士,资深软件工程师,国船电气(武汉)有限公司软件技术总监。是目前国内对WinPcap进行彻底分析研究的先驱,活跃于51CTO、ChinaUnix、CSDN等社区。对WinPcap与网络分析具有深入的理解,在《计算机应用》等学术期刊上发表核心论文多篇。尤精于嵌入式Linux。

章节目录

版权信息

前言

写本书的缘由

读者对象

所需技术基础

所需软、硬件环境

本书的组织结构

本书的约定

代码及相关更新

其他

第1章 揭开网络分析的神秘面纱

1.1 网络分析概述

1.2 网络分析的主要用途

1.3 黑客使用嗅探器的方法

1.4 被嗅探数据的真面目

1.4.1 使用嗅探器获得FTP的用户名和密码

1.4.2 使用嗅探器分析冲击波蠕虫(Blaster Worm)

1.5 常见的网络分析器

1.6 网络分析器的工作原理

1.6.1 以太网简介

1.6.2 理解开放系统互连(OSI)模型

1.6.3 了解CSMA/CD协议

1.6.4 IP、ICMP、TCP与UDP协议

1.6.5 硬件

1.6.6 欺骗交换机

1.7 嗅探器的检测

1.7.1 检测嗅探器的原理

1.7.2 防止网络嗅探可采取的安全措施

1.8 网络分析工具的主要功能组成

1.9 Wireshark的概述、安装与使用

1.9.1 Wireshark的概述

1.9.2 Wireshark的安装

1.9.3 Wireshark的使用

1.10 小结

第2章 初识网络分析基础库WinPcap

2.1 WinPcap概述

2.2 WinPcap的优点

2.3 WinPcap的使用者

2.4 WinPcap的体系架构

2.4.1 WinPcap的主要组成

2.4.2 数据包捕获的基本过程

2.4.3 WinPcap的驱动程序

2.4.4 WinPcap内核驱动的主要功能

2.5 用户空间库接口函数

2.5.1 wpcap.dll库中的重要函数

2.5.2 Packet.dll库中的重要函数

2.6 小结

第3章 网络分析工具的内核驱动基础知识

3.1 Windows驱动程序基础知识

3.1.1 驱动对象(DRIVER_OBJECT)

3.1.2 设备对象(DEVICE_OBJECT)

3.1.3 设备扩展(_DEVICE_EXTENSION)

3.1.4 IRP与派遣函数

3.1.5 同步处理

3.1.6 内核的内存操作

3.1.7 内存操作的运行时函数

3.1.8 内核的注册表操作

3.2 NDIS协议驱动程序

3.2.1 三种类型的网络驱动程序

3.2.2 协议驱动程序的特征结构体

3.3 小结

第4章 编译与使用WinPcap

4.1 源代码目录结构

4.2 构建驱动程序NPF

4.3 构建Packet.dll库

4.4 构建wpcap.dll库

4.5 安装NPF驱动程序与各库文件

4.6 使用WinPcap库进行程序开发的实例

4.7 小结

第5章 WinPcap驱动程序的初始化与清除

5.1 驱动程序中的初始化函数DriverEntry

5.1.1 DriverEntry函数的工作流程

5.1.2 DriverEntry函数的具体实现

5.2 驱动程序中的卸载函数DriverUnload

5.3 小结

第6章 获得与释放网络适配器设备列表

6.1 使用WinPcap选择合适的适配器

6.1.1 wpcap.dll库导出的相应函数

6.1.2 获得与释放网络适配器列表的实例

6.1.3 获取已安装设备高级信息的实例

6.2 获得网络适配器列表的幕后

6.2.1 wpcap.dll库中获得网络适配器列表的实现

6.2.2 Packet.dll库中获得网络适配器列表的实现

6.2.3 内核空间中获得网络适配器列表的实现

6.3 释放网络适配器列表的实现

6.4 小结

第7章 打开与关闭适配器

7.1 使用WinPcap打开与关闭适配器

7.1.1 wpcap.dll库导出的相应函数

7.1.2 关键数据结构pcap_t

7.1.3 打开与关闭网络适配器的实例

7.2 打开与关闭适配器的幕后

7.2.1 打开适配器的实现

7.2.2 关闭适配器的实现

7.3 小结

第8章 数据包的发送

8.1 使用WinPcap发送数据包

8.1.1 wpcap.dll库导出的相应函数

8.1.2 数据包发送实例

8.2 数据包发送的幕后

8.2.1 发送单个数据包的实现

8.2.2 单个数据包发送多次的实现

8.2.3 发送队列方式的实现

8.3 小结

第9章 数据包的内核过滤

9.1 基础知识

9.1.1 flex和bison简介

9.1.2 #line宏

9.1.3 以太网的典型帧结构

9.1.4 数据包过滤的原理简介

9.1.5 BPF虚拟机

9.1.6 Tcpdump与WinDump

9.1.7 BPF指令集实例

9.1.8 BPF过滤器的优化研究

9.1.9 BPF系统架构

9.2 WinPcap数据包过滤基础

9.2.1 数据包过滤过程

9.2.2 过滤表达式

9.2.3 编译过滤表达式生成过滤器的字节码

9.2.4 把过滤器字节码传递给内核

9.3 使用WinPcap过滤数据包

9.3.1 wpcap.dll库导出的相应函数

9.3.2 使用过滤器的实例

9.4 数据包过滤的幕后

9.4.1 wpcap.dll库中相应函数的实现

9.4.2 Packet.dll库对应的函数

9.4.3 驱动程序中对应的函数

9.4.4 NPF_tap函数的数据包过滤部分

9.5 小结

第10章 数据包的接收

10.1 使用WinPcap接收数据包

10.1.1 wpcap.dll库导出的相应函数

10.1.2 数据包接收的实例

10.2 数据接收的幕后

10.2.1 wpcap.dll库中相应函数的实现

10.2.2 Packet.dll库中相应函数的实现

10.2.3 内核空间部分的实现

10.3 小结

第11章 统计网络流量与网络状态

11.1 使用WinPcap进行网络统计的方法

11.1.1 wpcap.dll库导出的相应函数

11.1.2 统计实例

11.2 网络统计的幕后11.2.1工作模式

11.2.2 模式设置函数

11.2.3 网络流量统计的实现

11.2.4 网络状态统计的实现

11.3 小结

第12章 文件的存储与读取

12.1 libpcap文件存储格式

12.1.1 转储文件的头信息

12.1.2 每个数据包的头信息

12.2 使用WinPcap进行文件存储与读取

12.2.1 wpcap.dll导出的相应函数

12.2.2 文件存储与读取的实例

12.3 数据包文件存储的幕后

12.3.1 pcap_dump_open函数

12.3.2 pcap_dump函数

12.3.3 pcap_dump_flush函数

12.3.4 pcap_dump_close函数

12.4 数据包文件读取的幕后

12.5 内核文件转储的实现

12.5.1 wpcap.dll库中相应函数的实现

12.5.2 Packet.dll库中相应函数的实现

12.5.3 驱动程序中对应的函数

12.6 小结

第13章 修改源代码

13.1 给wpcap.dll增加设置重复发送次数的函数

13.1.1 修改步骤

13.1.2 测试结果

13.2 修改WinPcap的内核驱动代码

13.2.1 支持内核转储功能

13.2.2 测试内核统计与转储模式

13.2.3 支持大量数据包的转储

13.2.4 内核驱动程序修改后的源文件

13.3 小结

第14章 性能测试与分析

14.1 测试环境

14.2 测试实例

14.2.1 不同发送方式的比较

14.2.2 发送不同数据包长度的比较

14.2.3 不同接收方式的比较

14.3 小结

附录A 源语法规范

附录B 过滤表达式规范

附录C SYN洪泛攻击的详细资料

C.1 SYN洪泛攻击原理

C.2 使用WinPcap实现SYN洪泛攻击的方法

C.3 SYN洪泛攻击的防御

附录D ARP欺骗资料

D.1 ARP简介

D.2 ARP工作原理

D.3 常见ARP攻击类型

D.3.1 ARP扫描

D.3.2 ARP欺骗

D.4 局域网ARP欺骗的应对

D.4.1 ARP欺骗的常见情况

D.4.2 故障诊断

D.4.3 故障处理

D.4.4 使用网络分析工具找出ARP病毒源

D.5 常用的防护方法

D.5.1 静态绑定IP地址与MAC地址

D.5.2 使用ARP防护软件

D.5.3 使用具有防御ARP欺骗功能的路由器

D.6 ARP欺骗的正当用途

参考文献

网络分析技术揭秘:原理、实践与WinPcap深入解析是2012年由机械工业出版社华章分社出版,作者彭文波。

得书感谢您对《网络分析技术揭秘:原理、实践与WinPcap深入解析》关注和支持,如本书内容有不良信息或侵权等情形的,请联系本网站。

购买这本书

你可能喜欢
游戏引擎原理与实践 卷2:高级技术 电子书
本书共14章,主要讲解游戏引擎中的动画、渲染、多线程等高级技术。书中的主要内容包括骨骼蒙皮模型与动画基础,动画播放和插槽,动画混合,变形动画混合,逆向动力学(IK)与角色,光照渲染的发展史,渲染器接口,材质,流程渲染架构,光照与材质,后期效果,阴影,多线程,动态缓冲区和性能分析器。
Flink原理与实践 电子书
本书围绕大数据流处理领域,介绍FlinkDataStreamAPI、时间和窗口、状态和检查点、TableAPI&SQL等知识。书中以实践为导向,使用大量真实业务场景案例来演示如何基于Flink进行流处理。
深入浅出GAN生成对抗网络:原理剖析与TensorFlow实践 电子书
本书从Python基本语法入手,逐步介绍必备的数学知识与神经网络的基本知识,并利用介绍的内容编写一个深度学习框架TensorPy。然后描述GAN涉及的思想、模型与数学原理,接着便通过TensorFlow实现传统的GAN,并讨论为何一定需要生成器或判别器。接下来,介绍GAN各种常见的变体,包括卷积生成对抗网络、条件生成对抗网络、循环一致性、改进生成对抗网络、渐近增强式生成对抗网络等内容。
Wireshark网络分析从入门到实践 电子书
1.这是一本好用的工具书 对于对于网络运维人员、网络安全人员,WireShark是非常好的网络分析工具,这本优秀的基础工具书正是目前大家需要的。本书内容由浅入深,案例环环相扣,同时配备完整的代码资源,适合读者边学边练,从实践中夯实基础,掌握实践技能。 2.带读者体验身临其境的网络分析 本书系统地将WireShark与虚拟网络环境(ENSP)相结合,将WireShark的应用提升到真正实践的层面,可以帮助那些无法拥有真实网络设备的读者建立虚拟环境,从而降低学习者的门槛。除此之外,本书还采用Lua语言,扩展了Wireshark的功能。 3.这是一本经得起实践考验的教程 除此之外,本书的作者是拥有丰富经验高校教师,多年来培育了大量的网络安全方向工作人员,拥有多年的网络安全一线教学与实践经验,让你读书犹如老师在身边一对一地讲解。
深度学习原理与实践 电子书
(1)大量图例,简单易懂。作者亲自绘制了大量插图,力求还原深度学习的算法思想,分解和剖析晦涩的算法,用图例来表示复杂的问题。生动的图例也能给读者带来阅读乐趣,快乐地学习算法知识,体会深度学习的算法本质。 (2)简化公式,生动比喻。深度学习和机器学习类的书中通常会有大量复杂冗长的算法公式,为了避免出现读者读不懂的情况,本书尽可能地统一了公式和符号,简化相关公式,并加以生动的比喻进行解析。在启发读者的同时,锻炼读者分析问题和解决问题的能力。 (3)算法原理,代码实现。在介绍深度学习及相关算法的原理时,不仅给出了对应的公式,还给出了实现和求解公式的代码,让读者明确该算法的作用、输入和输出。原理与代码相结合,使得读者对深度学习的算法实现更加具有亲切感。 (4)深入浅出,精心剖析。理解深度学习需要一定的机器学习知识,本书在D1章介绍了深度学习与机器学习的关系,并简要介绍了机器学习的内容。在内容安排上,每章依次介绍模型框架的应用场景、结构和使用方式,最后通过真实的案例去全面分析该模型结构。目的是让读者可以抓住深度学习的本质。 (5)入门实践,案例重现。每一章最后的真实案例不是直接堆砌代码,而是讲解使用该算法模型的原因和好处。从简单的背景知识出发,使用前文讲解过的深度学习知识实现一个实际的工程项目。实践可以用于及时检验读者对所学知识的掌握程度,为读者奠定深度学习的实践基础。 将一本技术书籍写得通俗易懂谈何容易,但《深度学习原理与实践》这本书确实做到了。书中对近年来火热的深度学习理论知识进行简单剖析,化繁为简,没有局限于坐而论道,而是将实例和数学理论相结合,让读者能够快速理解各种模型并上手实践,值得细读。 --唐春明 广州大学数学与信息学科学院副院长 本书从原理、方法、实践这 3 个维度系统地介绍了深度学习的方方面面,内容详实,解读清晰,细节与全貌兼顾,既适合初学者阅读,也可以作为深入研究的参考用书。 --杨刚 西安电子科技大学教授 近年来出版的深度学习相关图书中,本书是我见过非常有指导意义的中文书籍之一。本书对 ANN、CNN、RNN 等模型进行深入浅出的介绍,引入大量图例和简化后的公式,让算法浅显易懂。每一章的实践内容都给人惊喜,强烈推荐! --吴健之 腾讯音乐高级工程师 作为产品经理,我能看懂的深度学习书籍实在太少了。本书恰到好处,插图丰富直观,数学公式简练,很喜欢此类风格的图书,易懂好学。即使你不是程序员或算法专家,该书也值得一看! --张瑞 中软国际高级产品经理