网络扫描技术揭秘

出版时间:2012-1  出版社:机械工业出版社华章公司  作者:李瑞民  
Tag标签:无  

内容概要

  《网络扫描技术揭秘:原理、实践与扫描器的实现》系统地介绍网络扫描器的概念、原理与设计方法,饱含作者十几年来在网络技术应用实践中不断总结的经验与技巧。作者从网络协议这样的基本概念开始,细致深入地分析了网络扫描器的原理,并用自己制作的大量工程代码,揭示了网络扫描器的实现方法与最佳实践。
  《网络扫描技术揭秘:原理、实践与扫描器的实现》首先介绍了网络扫描技术的概念、原理、算法等,以及网络协议的意义与编程概述,随后系统分析了各种扫描器的原理与设计方法,包括tcp/udp端口、netbios、snmp、icmp、基于协议的服务、基于应用的服务、命名管道、服务发现、漏洞扫描器等。书中在介绍每一种扫描器的时候,都是先介绍相应协议,然后对扫描器中要使用的api函数进行详细说明,使读者知道该扫描器的各种技术细节;还介绍了windows中相关协议程序的安装、配置、测试和验证等,使读者有了演习场地;最后展示了扫描器的编程实例。这种循序渐进、逐步深入的方式,使读者不仅全面地了解扫描器的细节,而且在遇到新情况时,能举一反三,对代码进行修改或调整。随书光盘还包含了作者精心制作与调试好的工程代码,可帮助读者快速上手,设计出自己需要的扫描器。
  《网络扫描技术揭秘:原理、实践与扫描器的实现》不仅是网管员和安全技术人员必备参考书,也适合于所有想深入理解计算机网络原理、全面了解网络扫描技术的学生、教师以及安全技术爱好者。

作者简介

李瑞民,工学博士,资深网络安全专家兼高级系统架构师。多年来一直专注于计算机安全技术、网络设备与信号监控等领域的研究与应用,对网络扫描技术以及串口监控、网口监控等设备类监控技术有深刻的认识。并在实践中总结出了串口通信中的嗅探技术以及通用串口协议语法。曾参与多个网络应用软件项目的研发,涉及网络安全、广播电视、通信等多个行业。曾发表论文二十余篇.拥有专利和著作权六项。此外。还积极倡导和推动开源事业,将自己精心编写的扫描器代码全部开源,旨在推动我国软件事业的发展。

书籍目录

前 言
第 1 章 绪论
1.1 网络安全的概念
1.2 网络扫描的概念
1.2.1 服务和端口
1.2.2 网络扫描
1.3 网络扫描原理概述
1.4 扫描编程与客户端编程的区别
1.5 网络扫描的目的
1.6 网络扫描算法
1.6.1 非顺序扫描
1.6.2 高速扫描
1.6.3 分布式扫描
1.6.4 服务扫描
1.6.5 指纹识别算法
1.6.6 漏洞扫描
1.6.7 间接扫描
1.6.8 秘密扫描
1.6.9 认证扫描
1.6.10 代理扫描
1.6.11 手工扫描
1.6.12 被动扫描
1.7 网络扫描器的分类
1.8 网络扫描技术的发展史
1.8.1 手工扫描阶段
1.8.2 使用通用扫描器阶段
1.8.3 设计专用扫描器阶段
1.9 扫描器的限制
1.10 当前网络常见的漏洞
1.10.1 dos和ddos
1.10.2 缓冲区溢出
1.10.3 注入式攻击
1.10.4 明文传输
1.10.5 简单密码
第 2 章 网络协议和网络编程例程
2.1 常用的网络编程
2.1.1 tcp/ip协议编程
2.1.2 netbios/netbeui协议编程
2.1.3 win inet高层编程
2.1.4 命名管道和邮槽高层编程
2.2 扫描器中公用编程示例
2.2.1 ctreectrl控件的应用
2.2.2 clistctrl控件的应用
2.2.3 ini文件的操作
2.2.4 数据库ado的简单应用
2.2.5 ip格式的互换
2.2.6 windows操作系统类型的判断
2.2.7 多线程的局限性和使用方式
2.2.8 vc++下windows socket的使用
2.2.9 网卡的混杂模式
2.3 嵌入外部程序
2.3.1 可执行外部程序的几个函数
2.3.2 编程实例:使用重定向接收外部程序运行结果
2.3.3 编程实例:使用管道接收外部程序运行结果
第 3 章 tcp/udp端口扫描器的设计
3.1 端口扫描的概念
3.1.1 端口的概念
3.1.2 端口扫描原理
3.2 端口扫描技术
3.2.1 网络通信实例分析
3.2.2 tcp扫描
3.2.3 udp扫描
3.3 手工扫描
3.3.1 检测单主机单端口开与否
3.3.2 检测单主机单端口是否有相应服务
3.3.3 检测多主机或多端口
3.4 编程实例:tcp端口扫描器
3.4.1 程序主界面
3.4.2 程序代码
3.5 编程实例:udp端口扫描器
3.5.1 程序主界面
3.5.2 程序代码
第 4 章 netbios扫描器的设计
4.1 netbios协议的使用
4.1.1 查看和修改netbios配置
4.1.2 查看netbios配置的命令
4.2 ip和主机名的互换
4.2.1 主机名转ip地址
4.2.2 ip地址转主机名
4.3 mac地址的读取
4.4 本地域名、子网掩码、网卡类型的读取
4.5 用户名、共享目录、组列表的读取
4.5.1 unicode编程与ansi之间的互换
4.5.2 用户名列表的读取
4.5.3 共享目录的读取
4.5.4 组列表的读取
4.5.5 远端主机时间的读取
4.5.6 远端服务支持类型的读取
4.5.7 主机信息的读取
4.6 netbios的安全性
4.7 编程实例:反“ip欺骗”—mac地址扫描器的设计
4.7.1 反“ip欺骗”的原理
4.7.2 mac地址扫描器的主界面
4.7.3 程序代码
4.8 编程实例:netbios的通用扫描器
4.8.1 程序主界面
4.8.2 程序代码
第 5 章 snmp扫描器的设计
5.1 snmp协议
5.1.1 管理信息结构
5.1.2 管理信息库
5.1.3 通信协议
5.2 snmp的api
5.2.1 数据类型和常用结构
5.2.2 管理程序api
5.3 snmp安装和验证
5.4 编程实例:snmp通用读设工具
5.4.1 程序主界面
5.4.2 程序代码
5.5 编程实例:基于snmp的主机扫描器
5.5.1 程序主界面
5.5.2 程序代码
第 6 章 icmp扫描器的设计
6.1 icmp协议简介
6.2 ping与tracert命令简介
6.2.1 ping程序使用
6.2.2 tracert程序使用
6.3 icmp通信实例分析
6.4 icmp协议内容
6.4.1 目的不可达消息
6.4.2 超时消息
6.4.3 参数问题消息
6.4.4 源拥塞消息
6.4.5 重定向消息
6.4.6 回送请求或回送响应消息
6.4.7 时间戳请求和时间戳响应消息
6.4.8 信息请求或信息响应消息
6.5 icmp扫描的安全性
6.6 编程实例:快速多ip的icmp扫描器
6.6.1 程序主界面
6.6.2 程序原理
6.6.3 程序代码
第 7 章 基于协议的服务扫描器的设计
7.1 www服务扫描
7.1.1 www服务器架构
7.1.2 协议消息格式
7.1.3 www服务器的安装与配置
7.2 编程实例:www服务扫描器
7.2.1 扫描原理
7.2.2 程序主界面
7.2.3 程序代码
7.3 ftp服务扫描
7.3.1 ftp简介
7.3.2 ftp服务器的安装与配置
7.4 编程实例:ftp服务扫描器
7.4.1 程序主界面
7.4.2 程序代码
7.5 telnet服务扫描
7.5.1 telnet协议简介
7.5.2 telnet的安装与配置
7.6 编程实例:telnet服务扫描器
7.6.1 程序主界面
7.6.2 程序代码
7.7 email服务扫描
7.7.1 电子邮件协议简介
7.7.2 电子邮件服务器的安装与配置
7.8 编程实例:email服务扫描器
7.8.1 程序主界面
7.8.2 程序代码
第 8 章 基于应用的服务扫描器的设计
8.1 win inet编程接口
8.1.1 cinternetsession类
8.1.2 cinternetconnection类
8.1.3 chttpconnection类
8.1.4 cftpconnection类
8.1.5 cinternetfile类
8.1.6 cinternetexception类
8.2 编程实例:基于应用的www服务扫描器
8.3 编程实例:基于应用的ftp服务扫描器
8.4 网络资源协议
8.4.1 netresource结构
8.4.2 wnetopenenum函数
8.4.3 wnetenumresource函数
8.4.4 wnetcloseenum函数
8.5 编程实例:网络资源扫描器
8.5.1 程序主界面
8.5.2 程序代码
第 9 章 命名管道扫描器的设计
9.1 命名管道
9.2 命名管道api
9.2.1 命名管道的unc格式
9.2.2 命名管道编程的api
9.3 命名管道编程示例
9.3.1 命名管道服务器端
9.3.2 命名管道客户端
9.4 邮槽
9.4.1 邮槽的unc格式
9.4.2 邮槽编程的api
9.5 邮槽编程示例
9.5.1 邮槽服务器端编程
9.5.2 邮槽客户端编程
9.6 编程实例:sql server命名管道扫描器的设计
9.6.1 microsoft sql server 简介
9.6.2 程序主界面
9.6.3 程序代码
第10章 服务发现扫描器的设计
10.1 服务发现简介
10.2 upnp协议
10.2.1 寻址
10.2.2 发现
10.2.3 描述
10.2.4 控制
10.2.5 事件
10.2.6 展示
10.3 xml协议
10.4 ssdp协议分析实例
10.4.1 设备类型
10.4.2 协议消息格式
10.5 编程实例:服务发现扫描器
10.5.1 程序主界面
10.5.2 程序代码
第11章 漏洞扫描器的设计
11.1 注入式漏洞扫描器
11.1.1 sql注入式攻击原理
11.1.2 注入式攻击的局限性
11.1.3 单机模式或c/s模式的攻击
11.1.4 b/s模式下扫描程序设计
11.2 主机弱密码扫描
11.2.1 网络连接的api
11.2.2 密码穷举分析
11.2.3 程序主界面
11.2.4 程序代码
11.3 dos/ddos攻击
11.3.1 程序主界面
11.3.2 程序代码
11.4 明文密码嗅探
11.4.1 程序主界面
11.4.2 程序代码
11.5 端口对照
11.5.1 程序主界面
11.5.2 程序代码
第12章 扫描防范技术的研究
12.1 更换端口
12.2 预留陷阱技术
12.3 基于哨兵的端口扫描监测
12.3.1 程序主界面
12.3.2 程序代码
12.4 基于嗅探的端口扫描监测及ddos拒绝服务监测
12.4.1 程序主界面
12.4.2 程序代码
12.5 实时监测本地所有tcp/udp连接及端口
12.5.1 程序主界面
12.5.2 结构与函数api
12.5.3 程序代码
12.6 如何关闭端口
12.6.1 ftp端口
12.6.2 www端口
12.6.3 telnet端口
12.6.4 netbios端口
附录a 本书容易混淆概念解析
附录b windows socket错误返回码
附录c win inet错误返回码
附录d http错误返回码
参考文献
后记

章节摘录

版权页:插图:1.2.2 网络扫描扫描源于物理术语,是通过对一定范围内的光或电信号进行检测处理,然后以数值或图形方式进行展示的一个操作。网络扫描也一样,是通过对一定范围内的主机的某种属性进行试探性地连接和读取操作,最终将结果展示出来的一种操作。端口具有独占性,一旦一个服务使用了某个端口,则另外的服务不能再使用这个端口。端口的占用原则是:先申请的先使用,后申请的在申请时报错。同时,上述的这种对应关系,只是一种约定,但任何操作系统都没有强制软件遵照执行,因此在使用时,存在如下几个情况:某个主机不向外界提供WWW服务,所以该主机的80端口是空闲的。但该主机上的另一个不提供WWW服务的程序使用了80端口。因此,该主机80端口是对外打开的,但不提供WWW服务。某主机虽然提供WWW服务,但该主机并不想让别的人都知道该主机提供该服务,于是该主机的管理员将该主机上的WWW服务的端口由默认的80端口,改为了其他的端8000,并将该端口告诉了他允许访问的用户。在这种情况下,需要通过其他联系方式通知所有允许访问的主机。某主机对外界想同时提供基于ASP的WWW服务和基于JSP的WWW服务,二者虽然同为WWW服务,但运行机制、配置等各不相同,并且没有一个通用的软件能同时提供,且二者占用了同一个端口80,于是该主机的管理员将ASP设定为80端口,而将JSP的端口设定为8080端口,并在双方主页上互相告知对方端口的存在。

编辑推荐

《网络扫描技术揭秘:原理、实践与扫描器的实现》是一类重要的网络安全技术。通过对网络的扫描,网络管理员可以了解网络的安全配置和运行的应用服务缺陷,赶在黑客攻击之前发现安全漏洞,客观评估网络风险等级,随后根据扫描的结果弥补网络安全漏洞,更正系统中的错误配置。如果说防火墙和网络监控系统是被动的防御手段,那么网络扫描就是一种主动的排查措施,可以有效减少黑客攻击成功的概率,做到防患于未然。《网络扫描技术揭秘:原理、实践与扫描器的实现》全面系统地介绍网络扫描技术的概念、原理和分类,用实例讲解了各种扫描器的设计方法,涉及ICMP、SNMP、SSDP、HTTP、FTP、Telnet等与网络安全息息相关的协议内容,最后给出了防扫描技术的研究成果。《网络扫描技术揭秘:原理、实践与扫描器的实现》所有实例都直接来自实战操作,并且所有扫描器均提供源代码工程文件,可帮助读者快速上手,设计出自己需要的扫描器。《网络扫描技术揭秘:原理、实践与扫描器的实现》最大的特点就是几乎囊括了当前所有的扫描方式,而每一种方式又是八仙过海,各显神通这些扫描方式包括:ICMP扫描:快速ICMP扫描可以扫描出哪些主机是运行的,进而初步预测一下对方的操作系统类型。这便于在某一不熟悉的网段中快速定位哪些主机可以作为下一步的扫描对象。端口扫描:以快速、非顺序的扫描算法高效率地扫出对方TCP/UDP端口的状态。相对于后续的扫描,端口扫描通常是网络攻击的第一步。NetBIOS扫描:扫描出对方的组名、用户名、目录,甚至是密码。如果有幸扫出对方管理员的密码,那随后的操作和使用自己的计算机差别就不大了。SNMP扫描:只要对方提供SNMP协议的支持,那么你在本地任务管理器中能看到什么,就能在对方任务管理器中看到什么。基于协议和基于应用的扫描:该扫描的最大优势就是发现对方提供的服务类型,对于常规的WWW、FTP、Telnet服务,一切尽收眼底,为后面的漏洞扫描搜集素材。漏洞扫描:漏洞扫描的主要目的就是发现漏洞、实现攻击,其作用不言而喻。命名管道扫描:作为一种冷僻的扫描方式,自然有其独特的使用领域,对于一些专有的场景,正是该扫描方式大显身手的场所,也许别人花费九牛二虎之力完成的任务,在这里只是探囊取物。服务发现扫描:服务发现扫描是“温柔一刀”,因为这种扫描方式不用背负黑客工具的神秘名声,完全可以作为一个受欢迎的网络管理工具。总之,系统主机五花八门,而扫描的方式也是多种多样,无论怎样的系统,总能找到合适的扫描方式。资深网络安全专家十余年研究与实践经验的结晶,重点突出,针对性地讲解了核心网络扫描技术的原理与最佳实践,实战性强,各种主流扫描器的设计方法和原理尽含其中,附有完整源代码可供参考。网络安全是一个永恒的话题。中国是一个早在五千年前就发现面对困难时“堵”不如“疏”的伟大国家。面对网络安全也是一样,与其“讳疾忌医”。不如“坦然面对”。网络扫描是一切网络攻击的基础,也是检测自身安全防护系统的有效方法。因此,网络管理员和安全技术人员完全有必要掌握端口、服务等概念和技术。并利用扫描技术扫描自身系统。通过对扫描结果的判断,关闭无实质性作用的端口或服务。而对于必须开放的端口和服务,则尽可能地安装其漏洞补丁程序。

图书封面

图书标签Tags

评论、评分、阅读与下载


    网络扫描技术揭秘 PDF格式下载


用户评论 (总计17条)

 
 

  •   内容很多,详细,再有整体源代码就更好了
  •   纯粹垃圾。没有什么深度,很多地方居然在介绍WINDOWS 的API。。。作者这是在骗稿费吗??只要看看TCP/IP详解,弄清楚这些协议之间的数据包格式、规范,自然就懂了。
  •   还没有看,不过应该不错,32个赞
  •   书的质量很好,不错,推荐
  •   其实书收到后,还没有怎么看呢,不过看纸张都还好
  •   这是为了上个学期的一门课程而购买的书,书写的不错,不足之处就是用的平台比较老了。
  •   还没看,不好评论,不过该书的质量很好,到手都是用封塑封着的,而且纸张的质量也很好,等看了再来评论。
  •   暂时还没看,看目录还好
  •   还可以啦,排版啥的都挺好的
  •   这一次总共买了四本安全方面的书,其中有三本有问题,本来打算在当当买但还是贵了几块钱而且我没当当的网银,所以只好在卓越买,我以前也在卓越买过很多书和其他的东西,但这一次是让我最失望的一次。刚开始没发现问题,夏天一热,手上容易出汗,然后拿着在看,竟然书上的字体可以退色,稍微用力一插,字体就模模糊糊了。而且我买了《0day软件漏洞分析》竟然中间有十多页重印看不清,我... 阅读更多
  •   这本书能够通过扫描深入理解网络的拓扑结构,还可以帮助编写自己的扫描程序。特别是光盘中有很多示例,拿来就能用。很棒!
  •   很专业的计算机图书
  •   网络扫描
  •   实践经验丰富的一本书
  •   网络扫描技术揭秘
  •   scan
  •   很好很强大,送人的,偏编程的扫描书。
 

250万本中文图书简介、评论、评分,PDF格式免费下载。 第一图书网 手机版

京ICP备13047387号-7