网络安全高级软件编程技术(配光盘) / 计算机科学与技术学科前沿丛书、计算机科学与技术学科研究生系列教材(中文版)
¥49.00定价
作者: 吴功宜,张建忠等
出版时间:2016-09
出版社:清华大学出版社
- 清华大学出版社
- 9787302219040
- 1-2
- 49717
- 16开
- 2016-09
- 工学
- 计算机科学与技术
- TP393.08
- 计算机
作者简介
内容简介
本书的作者队伍是由南开大学计算机系、国家计算机病毒应急处理中心的人员组成。作者在总结多年网络安全科研与教学实践经验的基础上,设计了12个“近似实战”的网络安全软件设计与编程训练的课题。训练课题覆盖了从密码学在网络通信中的应用,网络端口扫描、网络嗅探器、网络诱骗、网络入侵检测、安全Web、防火墙,到Linux内核网络协议栈程序加固、网络病毒与垃圾邮件的检测与防治技术。训练课题接近研究的前沿,覆盖了网络安全研发的主要领域与方向。完成网络安全训练课题的操作系统选择为Linux,完成训练课题不限定任何特殊的硬件环境与编程语言。通过在Linux环境中完成网络安全软件的设计与编程训练,提高读者研发具有自主知识产权的网络安全技术和产品的能力。本书可以作为计算机、信息安全、软件工程、通信工程、电子信息及相关专业的硕士与工程硕士研究生、博士研究生的教材或参考书,以及本科计算机专业,信息安全专业高年级学生网络安全教材或参考书,也可作为网络安全高级软件编程人才的培训教材与研发工作参考手册。
目录
第1章 网络安全课程内容、编程训练要求与教学指导
1.1 网络安全技术的特点
1.1.1 网络安全与现代社会安全的关系
1.1.2 网络安全与信息安全的关系
1.1.3 网络安全与网络新技术的关系
1.1.4 网络安全与密码学的关系
1.1.5 网络安全与国家安全战略的关系
1.2 网络安全形势的演变
1.2.1 Internet安全威胁的总体发展趋势
1.2.2 近期网络安全威胁的主要特点
1.3 网络安全技术研究的基本内容
1.3.1 网络安全技术研究内容的分类
1.3.2 网络攻击的分类
1.3.3 网络安全防护技术研究
1.3.4 网络防病毒技术研究
1.3.5 计算机取证技术研究
1.3.6 网络业务持续性规划技术研究
1.3.7 密码学在网络中的应用研究
1.3.8 网络安全应用技术研究
1.4 网络安全技术领域自主培养人才的重要性
1.4.1 网络安全技术人才培养的迫切性
1.4.2 网络安全技术人才培养的特点
1.5 网络安全软件编程课题训练的基本内容与目的
1.5.1 基于DES加密的TCP聊天程序编程训练的基本内容与目的
1.5.2 基于RSA算法自动分配密钥的加密聊天程序编程训练的基本
内容与目的
1.5.3 基于MD5算法的文件完整性校验程序编程训练的基本内容与目的
1.5.4 基于Raw Socket的Sniffer设计与编程训练的基本内容与目的
1.5.5 基于OpenSSL的安全Web服务器设计与编程训练的基本内容与目的
1.5.6 网络端口扫描器设计与编程训练的基本内容与目的
1.5.7 网络诱骗系统设计与编程训练的基本内容与目的
1.5.8 入侵检测系统设计与编程训练的基本内容与目的
1.5.9 基于Netfilter和IPTables防火墙系统设计与编程训练的基本内容与目的
1.5.10 Linux内核网络协议栈加固编程训练的基本内容与目的
1.5.11 利用Sendmail收发和过滤邮件系统设计与编程训练的基本内容与目的
1.5.12 基于特征码的恶意代码检测系统的设计与编程训练的基本内容与目的
1.6 网络安全软件编程课题训练教学指导
1.6.1 网络安全软件编程训练课题选题的指导思想
1.6.2 网络安全软件编程训练课题选题覆盖的范围
1.6.3 网络安全软件编程训练课题编程环境的选择
1.6.4 网络安全软件编程训练选题指导
第2章 Linux网络协议栈简介
2.1 Linux网络协议栈概述
2.1.1 Linux网络协议栈的设计特点
2.1.2 Linux网络协议栈代码中使用的固定实现模式
2.1.3 TCP/IP协议栈中主要模块简介
2.2 Linux网络协议栈中报文发送和接收流程导读
2.2.1 报文在Linux网络协议栈中的表示方法
2.2.2 报文发送过程
2.2.3 报文接收过程
第3章 基于DES加密的TCP聊天程序
3.1 本章训练目的与要求
3.2 相关背景知识
3.2.1 DES算法的历史
3.2.2 DES算法的主要特点
3.2.3 DES算法的基本内容
3.2.4 TCP协议
3.2.5 套接字
3.2.6 TCP通信相关函数介绍
3.3 实例编程练习
3.3.1 编程练习要求
3.3.2 编程训练设计与分析
3.4 扩展与提高
3.4.1 高级套接字函数
3.4.2 新一代对称加密协议AES
3.4.3 DES安全性分析
第4章 基于RSA算法自动分配密钥的加密聊天程序
4.1 编程训练目的与要求
4.2 相关背景知识
4.3 实例编程练习
4.3.1 编程训练要求
4.3.2 编程训练设计与分析
4.4 扩展与提高
4.4.1 RSA安全性
4.4.2 其他公钥密码体系
4.4.3 使用Select机制进行并行通信
4.4.4 使用异步I/O进行通信优化
第5章 基于MD5算法的文件完整性校验程序
5.1 本章训练目的与要求
5.2 相关背景知识
5.2.1 MD5算法的主要特点
5.2.2 MD5算法分析
5.3 实例编程练习
5.3.1 编程练习要求
5.3.2 编程训练设计与分析
5.4 扩展与提高
5.4.1 MD5算法与Linux口令保护
5.4.2 Linux系统GRUB的MD5加密方法
5.4.3 字典攻击与MD5变换算法
第6章 基于Raw Socket的网络嗅探器程序
6.1 本章训练目的与要求
6.2 相关背景知识
6.2.1 原始套接字
6.2.2 TCP/IP网络协议栈结构
6.2.3 数据的封装与解析
6.3 实例编程练习
6.3.1 编程练习要求
6.3.2 编程训练设计与分析
6.4 扩展与提高
6.4.1 使用libpcap捕获数据报
6.4.2 使用tcpdump捕获数据报
第7章 基于OpenSSL的安全Web服务器程序
7.1 本章训练目的与要求
7.2 相关背景知识
7.2.1 SSL协议介绍
7.2.2 OpenSSL库
7.2.3 相关数据结构分析
7.3 实例编程练习
7.3.1 编程练习要求
7.3.2 编程训练设计与分析
7.4 扩展与提高
7.4.1 客户端认证
7.4.2 基于IPSec的安全通信
第8章 网络端口扫描器的设计与编程
8.1 本章训练目的与要求
8.2 相关背景知识
8.2.1 ping程序
8.2.2 TCP扫描
8.2.3 UDP扫描
8.2.4 使用原始套接字构造并发送数据包
8.3 实例编程练习
8.3.1 编程练习要求
8.3.2 编程训练设计与分析
8.4 扩展与提高
8.4.1 ICMP扫描扩展
8.4.2 TCP扫描扩展
8.4.3 系统漏洞扫描简介
8.4.4 Linux环境中Nmap的安装与使用
第9章 网络诱骗系统设计与实现
9.1 本章训练目的与要求
9.2 相关背景知识
9.2.1 网络诱骗系统的技术手段
9.2.2 网络诱骗系统分类
9.2.3 可加载内核模块介绍
9.2.4 Linux系统调用实现原理
9.2.5 Linux键盘输入实现原理
9.3 实例编程练习
9.3.1 编程练习要求
9.3.2 编程训练设计与分析
9.4 扩展与提高
9.4.1 其他键盘输入的截获方法
9.4.2 实现LKM在系统启动时自动加载
9.4.3 隐藏LKM模块
9.4.4 隐藏相关文件
9.4.5 基于Linux网络协议栈下层设备驱动实现通信隐藏
9.4.6 网络诱骗系统的发展趋势
……
第10章 入侵检测模型的设计与实现
第11章 基于Netfilter防火墙的设计与实现
第12章 Linux内核网络协议栈加固
第13章 利用Sendmail实现垃圾邮件过滤的软件编程
第14章 基于特征码的恶意代码检测系统的设计与实现
参考文献
1.1 网络安全技术的特点
1.1.1 网络安全与现代社会安全的关系
1.1.2 网络安全与信息安全的关系
1.1.3 网络安全与网络新技术的关系
1.1.4 网络安全与密码学的关系
1.1.5 网络安全与国家安全战略的关系
1.2 网络安全形势的演变
1.2.1 Internet安全威胁的总体发展趋势
1.2.2 近期网络安全威胁的主要特点
1.3 网络安全技术研究的基本内容
1.3.1 网络安全技术研究内容的分类
1.3.2 网络攻击的分类
1.3.3 网络安全防护技术研究
1.3.4 网络防病毒技术研究
1.3.5 计算机取证技术研究
1.3.6 网络业务持续性规划技术研究
1.3.7 密码学在网络中的应用研究
1.3.8 网络安全应用技术研究
1.4 网络安全技术领域自主培养人才的重要性
1.4.1 网络安全技术人才培养的迫切性
1.4.2 网络安全技术人才培养的特点
1.5 网络安全软件编程课题训练的基本内容与目的
1.5.1 基于DES加密的TCP聊天程序编程训练的基本内容与目的
1.5.2 基于RSA算法自动分配密钥的加密聊天程序编程训练的基本
内容与目的
1.5.3 基于MD5算法的文件完整性校验程序编程训练的基本内容与目的
1.5.4 基于Raw Socket的Sniffer设计与编程训练的基本内容与目的
1.5.5 基于OpenSSL的安全Web服务器设计与编程训练的基本内容与目的
1.5.6 网络端口扫描器设计与编程训练的基本内容与目的
1.5.7 网络诱骗系统设计与编程训练的基本内容与目的
1.5.8 入侵检测系统设计与编程训练的基本内容与目的
1.5.9 基于Netfilter和IPTables防火墙系统设计与编程训练的基本内容与目的
1.5.10 Linux内核网络协议栈加固编程训练的基本内容与目的
1.5.11 利用Sendmail收发和过滤邮件系统设计与编程训练的基本内容与目的
1.5.12 基于特征码的恶意代码检测系统的设计与编程训练的基本内容与目的
1.6 网络安全软件编程课题训练教学指导
1.6.1 网络安全软件编程训练课题选题的指导思想
1.6.2 网络安全软件编程训练课题选题覆盖的范围
1.6.3 网络安全软件编程训练课题编程环境的选择
1.6.4 网络安全软件编程训练选题指导
第2章 Linux网络协议栈简介
2.1 Linux网络协议栈概述
2.1.1 Linux网络协议栈的设计特点
2.1.2 Linux网络协议栈代码中使用的固定实现模式
2.1.3 TCP/IP协议栈中主要模块简介
2.2 Linux网络协议栈中报文发送和接收流程导读
2.2.1 报文在Linux网络协议栈中的表示方法
2.2.2 报文发送过程
2.2.3 报文接收过程
第3章 基于DES加密的TCP聊天程序
3.1 本章训练目的与要求
3.2 相关背景知识
3.2.1 DES算法的历史
3.2.2 DES算法的主要特点
3.2.3 DES算法的基本内容
3.2.4 TCP协议
3.2.5 套接字
3.2.6 TCP通信相关函数介绍
3.3 实例编程练习
3.3.1 编程练习要求
3.3.2 编程训练设计与分析
3.4 扩展与提高
3.4.1 高级套接字函数
3.4.2 新一代对称加密协议AES
3.4.3 DES安全性分析
第4章 基于RSA算法自动分配密钥的加密聊天程序
4.1 编程训练目的与要求
4.2 相关背景知识
4.3 实例编程练习
4.3.1 编程训练要求
4.3.2 编程训练设计与分析
4.4 扩展与提高
4.4.1 RSA安全性
4.4.2 其他公钥密码体系
4.4.3 使用Select机制进行并行通信
4.4.4 使用异步I/O进行通信优化
第5章 基于MD5算法的文件完整性校验程序
5.1 本章训练目的与要求
5.2 相关背景知识
5.2.1 MD5算法的主要特点
5.2.2 MD5算法分析
5.3 实例编程练习
5.3.1 编程练习要求
5.3.2 编程训练设计与分析
5.4 扩展与提高
5.4.1 MD5算法与Linux口令保护
5.4.2 Linux系统GRUB的MD5加密方法
5.4.3 字典攻击与MD5变换算法
第6章 基于Raw Socket的网络嗅探器程序
6.1 本章训练目的与要求
6.2 相关背景知识
6.2.1 原始套接字
6.2.2 TCP/IP网络协议栈结构
6.2.3 数据的封装与解析
6.3 实例编程练习
6.3.1 编程练习要求
6.3.2 编程训练设计与分析
6.4 扩展与提高
6.4.1 使用libpcap捕获数据报
6.4.2 使用tcpdump捕获数据报
第7章 基于OpenSSL的安全Web服务器程序
7.1 本章训练目的与要求
7.2 相关背景知识
7.2.1 SSL协议介绍
7.2.2 OpenSSL库
7.2.3 相关数据结构分析
7.3 实例编程练习
7.3.1 编程练习要求
7.3.2 编程训练设计与分析
7.4 扩展与提高
7.4.1 客户端认证
7.4.2 基于IPSec的安全通信
第8章 网络端口扫描器的设计与编程
8.1 本章训练目的与要求
8.2 相关背景知识
8.2.1 ping程序
8.2.2 TCP扫描
8.2.3 UDP扫描
8.2.4 使用原始套接字构造并发送数据包
8.3 实例编程练习
8.3.1 编程练习要求
8.3.2 编程训练设计与分析
8.4 扩展与提高
8.4.1 ICMP扫描扩展
8.4.2 TCP扫描扩展
8.4.3 系统漏洞扫描简介
8.4.4 Linux环境中Nmap的安装与使用
第9章 网络诱骗系统设计与实现
9.1 本章训练目的与要求
9.2 相关背景知识
9.2.1 网络诱骗系统的技术手段
9.2.2 网络诱骗系统分类
9.2.3 可加载内核模块介绍
9.2.4 Linux系统调用实现原理
9.2.5 Linux键盘输入实现原理
9.3 实例编程练习
9.3.1 编程练习要求
9.3.2 编程训练设计与分析
9.4 扩展与提高
9.4.1 其他键盘输入的截获方法
9.4.2 实现LKM在系统启动时自动加载
9.4.3 隐藏LKM模块
9.4.4 隐藏相关文件
9.4.5 基于Linux网络协议栈下层设备驱动实现通信隐藏
9.4.6 网络诱骗系统的发展趋势
……
第10章 入侵检测模型的设计与实现
第11章 基于Netfilter防火墙的设计与实现
第12章 Linux内核网络协议栈加固
第13章 利用Sendmail实现垃圾邮件过滤的软件编程
第14章 基于特征码的恶意代码检测系统的设计与实现
参考文献