封面
版权信息
前言
第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 WindowsSocket错误返回码
附录C Win Inet错误返回码
附录D HTTP错误返回码
参考文献
后记
更新时间:2018-12-31 14:57:24