目录
第1章计算机网络基础及常用工具1
1.1计算机网络基本组成和协议1
1.1.1常用网络设备和子网划分2
1.1.2局域网常用的网络服务4
1.1.3上网过程实例: 一次Web访问5
1.2IPv4协议报文格式6
1.3网络流量分析和构造常用工具简介7
1.3.1tcpdump7
1.3.2Wireshark9
1.3.3Scapy11
1.3.4Burp Suite15
1.4网络基础实验16
1.4.1实验1: 使用tcpdump分析ICMP流量17
1.4.2实验2: 使用Wireshark分析访问Web过程19
1.4.3实验3: 使用Scapy构造ICMP Echo Request数据包21
1.4.4实验4: 使用Burp Suite修改HTTP请求25
1.5思考题27
第2章局域网安全28
2.1局域网协议概述28
2.1.1以太网协议28
2.1.2ARP30
2.1.3DHCP32
2.2局域网常见攻击34
2.2.1MAC地址泛洪攻击34
2.2.2ARP攻击36
2.2.3DHCP攻击39
2.3局域网攻击实验41
2.3.1实验1: ARP缓存污染攻击41
2.3.2实验2: ARP中间人攻击44
2.3.3实验3: DHCP拒绝服务攻击46
2.3.4实验4: DHCP假冒攻击49
2.4思考题51
第3章传输层协议常见攻击与防范52
3.1传输层协议简介52
3.1.1TCP简介52
3.1.2UDP简介56
3.1.3协议的端口57
3.2传输层常见攻击的原理与防范措施58
3.2.1端口扫描及资产探查58
3.2.2TCP SYN泛洪攻击61
3.2.3TCP会话的劫持与重置62
3.2.4UDP 反射放大攻击64
3.3传输层安全实验65
3.3.1实验1: 资产探查与端口扫描66
3.3.2实验2: SYN洪泛攻击与防范68
3.3.3实验3: TCP连接重置70
3.3.4实验4: TCP会话劫持72
3.4思考题74
第4章域名系统安全75
4.1域名系统的基本工作原理75
4.1.1互联网域名空间76
4.1.2互联网域名解析过程78
4.1.3域名协议报文79
4.2域名系统的典型攻击及防范措施80
4.2.1DNS劫持攻击81
4.2.2DNS缓存污染攻击82
4.2.3DNS反射放大攻击83
4.2.4DNS重绑定攻击84
4.2.5常见DNS安全防护措施85
4.3域名系统安全实验86
4.3.1实验1: DNS缓存污染攻击实验87
4.3.2实验2: DNS反射放大攻击实验90
4.3.3实验3: DNS重绑定攻击93
4.4思考题97
第5章Web系统安全98
5.1Web系统及HTTP98
5.1.1Web客户端相关技术99
5.1.2Web服务器相关技术101
5.1.3统一资源定位符102
5.1.4HTTP103
5.1.5HTTP的状态管理和Cookie 109
5.1.6访问Web系统的一个例子111
5.2Web系统面临的常见威胁112
5.2.1身份假冒攻击112
5.2.2网络流量监听和中间人攻击113
5.2.3Web客户端和Web服务器端的系统入侵攻击114
5.2.4拒绝服务攻击114
5.3Web系统主要安全机制概要115
5.3.1沙箱116
5.3.2同源策略117
5.3.3浏览器插件的安全规则119
5.3.4HTTP Cookie的安全策略119
5.4Web系统常见攻击原理120
5.4.1SQL注入120
5.4.2跨站脚本130
5.4.3跨站请求伪造135
5.4.4服务器端请求伪造137
5.4.5文件上传漏洞142
5.5Web系统安全实验145
5.5.1实验1: SQL注入攻击146
5.5.2实验2: 跨站脚本攻击151
5.5.3实验3: 服务器端请求伪造攻击155
5.5.4实验4: 文件上传漏洞的利用159
5.6思考题163
第6章传输层安全协议与内容分发网络164
6.1传输层安全协议164
6.1.1传输层安全协议的设计目标164
6.1.2Web公钥证书基础165
6.1.3SSL/TLS发展历程169
6.1.4TLS协议工作原理169
6.2内容分发网络174
6.2.1内容分发网络的基本原理和主要功能174
6.2.2CDN的基本结构175
6.3TLS和CDN实验177
6.3.1实验1: Web服务配置TLS证书实验177
6.3.2实验2: 构建CDN对抗DoS攻击实验180
6.4思考题184
第7章电子邮件系统安全185
7.1电子邮件系统工作原理185
7.1.1电子邮件通信过程185
7.1.2电子邮件基础协议187
7.2电子邮件系统常见攻击及安全扩展协议190
7.2.1电子邮件身份伪造攻击190
7.2.2电子邮件身份验证机制190
7.2.3电子邮件身份验证绕过攻击198
7.3邮件系统安全实验206
7.3.1实验1: 搭建MTA、用命令行及Web两种MUA实现邮件收发207
7.3.2实验2: 邮件系统未配置安全扩展协议下的电子邮件伪造攻击213
7.3.3实验3: 邮件系统有安全扩展协议SPF下的电子邮件伪造攻击 ……215
7.3.4实验4: 实现有签名验证的邮件通信219
7.4思考题223
第8章防火墙技术224
8.1防火墙技术原理224
8.1.1防火墙介绍224
8.1.2包过滤防火墙226
8.1.3状态检测防火墙228
8.1.4应用层防火墙229
8.2Linux内置防火墙介绍230
8.2.1Netfilter介绍230
8.2.2iptables介绍232
8.3防火墙实验236
8.3.1实验1: 实现包过滤防火墙并尝试绕过该防火墙236
8.3.2实验2: 防火墙综合应用实验240
8.4思考题247
第9章虚拟专用网络248
9.1虚拟专用网络的工作原理248
9.1.1虚拟专用网络介绍248
9.1.2虚拟专用网络工作原理介绍248
9.2虚拟专用网络的关键技术和协议249
9.2.1虚拟网卡技术(TUN/TAP)249
9.2.2密码技术与密钥管理250
9.2.3用户和设备身份认证技术251
9.2.4隧道技术251
9.3虚拟专用网络实验255
9.3.1实验1: 使用OpenSSL实现加密通信256
9.3.2实验2: 用虚拟网卡实现数据包收发259
9.3.3实验3: 实现基于SSL/TLS双向认证的加密VPN261
9.4思考题 266
第10章网络入侵检测技术267
10.1网络入侵检测技术的基本原理267
10.1.1入侵检测系统的发展历程267
10.1.2常见的入侵检测技术269
10.1.3网络入侵检测的当前挑战270
10.2典型网络入侵检测系统272
10.2.1Snort系统简介及语法规则272
10.2.2Zeek系统简介及语法规则276
10.2.3典型网络入侵检测系统对比279
10.3入侵检测实验280
10.3.1实验1: 基于Snort的Web SQL注入攻击检测280
10.3.2实验2: 基于Zeek的恶意挖矿通信流量检测286
10.4思考题291
第11章网络安全在线实验平台292
11.1网络安全在线实验平台简介292
11.2教材配套实验的使用方法294
11.2.1个人学习294
11.2.2学校教学294
参考文献297