十年匠心定制 · 商业建站与技术教学双线并行 咨询热线:400-886-1026 service@lmnt.cn
ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

《计算机网络-自顶向下方法》8.10 小结、课后习题和Wireshark实验 读书笔记

《计算机网络-自顶向下方法》8.10 小结、课后习题和Wireshark实验 读书笔记 目录导语一、第8章知识体系回顾二、复习题三、习题四、Wireshark实验探究TLS五、IPsec实验本章核心总结必看结语导语大家好呀恭喜你来到第8章的最后一节这一章我们学习了计算机网络中的安全——从网络安全的基本概念到密码学原理到报文完整性和数字签名到端点鉴别到安全电子邮件PGP到TLS/HTTPS到IPsec/VPN到无线网络安全再到防火墙和入侵检测系统。内容非常丰富几乎涵盖了网络安全的所有核心领域。这一节我们会做三件事第一回顾整个第8章的知识体系把零散的知识点串成一张网第二做一些复习题和习题检验和巩固所学第三用Wireshark实际抓包分析TLS握手过程并了解IPsec实验。理论结合实践才能真正掌握网络安全。准备好了吗让我们开始最后的冲刺一、第8章知识体系回顾1. 安全的层次结构第8章的内容可以按照TCP/IP协议栈的层次来组织层次安全技术对应章节应用层PGP安全电子邮件、HTTPS8.5运输层TLS/SSL8.6网络层IPsec、VPN8.7链路层WiFi安全WPA2/WPA3、4G/5G安全8.8运行安全防火墙、IDS/IPS8.9基础密码学、散列、数字签名、鉴别8.2-8.42. 核心概念地图整个第8章围绕四个安全目标展开机密性对称加密AES、公钥加密RSA、混合加密完整性散列函数SHA-256、MACHMAC鉴别数字签名、端点鉴别、数字证书可用性防火墙、IDS/IPS、DDoS防御密码学是基础8.2-8.4各层安全协议是应用8.5-8.8运行安全是防护8.9。3. 关键技术对比技术层次机密性完整性鉴别典型应用PGP应用层是是是安全邮件TLS运输层是是是服务器HTTPSIPsec网络层是是是VPNWPA2/3链路层是是是WiFi防火墙运行层---流量过滤IDS/IPS运行层---攻击检测/阻断二、复习题8.1 什么是网络安全1. 网络安全通信需要满足哪四个要素机密性只有授权方能理解消息、报文完整性消息未被篡改、端点鉴别确认对方身份、运行安全性保护网络基础设施。2. CIA三元组指什么机密性Confidentiality、完整性Integrity、可用性Availability。3. 列举三种常见的网络攻击类型。窃听被动截获数据、篡改修改数据、冒充伪造身份、DoS/DDoS拒绝服务、中间人攻击、恶意软件、钓鱼等。8.2 密码学原理4. 对称加密和公钥加密的主要区别是什么对称加密加密解密用同一个密钥速度快但密钥分发困难公钥加密用一对密钥公钥加密、私钥解密解决了密钥分发但速度慢。实际中用混合加密结合两者。5. 为什么AES取代了DESDES的56位密钥太短随着计算机算力提升可以被暴力破解1999年22小时破解。AES支持128/192/256位密钥更安全且算法设计更优。6. 什么是柯克霍夫原则加密算法应该公开只有密钥需要保密。安全性不依赖于算法的保密而依赖于密钥的保密。8.3 报文完整性和数字签名7. 密码散列函数需要满足哪些特性单向性不能从散列值反推输入、抗弱碰撞不能找到和指定输入有相同散列值的另一输入、抗强碰撞不能找到任意两个有相同散列值的输入、雪崩效应输入微小变化导致输出巨大变化。8. MAC和数字签名有什么区别MAC用共享密钥生成校验码提供完整性和来源鉴别但不能提供不可否认性双方都有密钥数字签名用私钥签名、公钥验证提供完整性、鉴别和不可否认性。9. 为什么需要数字证书解决公钥分发问题——确认某个公钥确实属于声称的身份。由可信的CA签发证书证明公钥和身份的绑定关系。8.4 端点鉴别10. 什么是重放攻击怎么防御重放攻击是攻击者窃听到鉴别消息后重新发送冒充合法用户。防御方法是使用nonce一次性随机数服务器每次发不同的nonce客户端用密钥加密nonce返回旧的nonce无效。11. 中间人攻击的原理是什么怎么防御攻击者插入到通信双方之间分别和双方建立连接双方都以为在直接通信。防御核心是验证公钥的真实性数字证书、证书固定、带外验证指纹。8.5 安全电子邮件12. PGP怎么同时实现加密和签名先对邮件计算散列值并用私钥签名然后生成随机会话密钥加密邮件签名再用收件人公钥加密会话密钥。收件人先用私钥解密得到会话密钥再解密邮件最后验证签名。13. PGP的Web of Trust和S/MIME的CA层次有什么不同PGP用去中心化的信任网——用户互相签名公钥通过信任链建立信任S/MIME用中心化的CA层次——由可信的CA签发证书通过证书链验证。8.6 TLS14. TLS握手的主要步骤是什么ClientHello版本加密套件随机数→ ServerHello选定参数随机数→ 服务器证书密钥交换参数 → 客户端验证证书发送加密的预主密钥 → 双方派生密钥 → 双方发送Finished消息验证握手完整性。15. 什么是前向保密TLS怎么实现前向保密指即使服务器的长期私钥在未来泄露之前的会话密钥也不会被破解。TLS通过ECDHE临时椭圆曲线Diffie-Hellman实现——每次会话生成临时密钥对用完即弃长期私钥只用于签名认证。16. TLS 1.3相比1.2有哪些主要改进1-RTT握手1.2是2-RTT、0-RTT恢复、强制前向保密、移除不安全算法RC4/MD5/3DES/CBC、握手消息加密、简化加密套件。8.7 IPsec和VPN17. IPsec的传输模式和隧道模式有什么区别传输模式只保护传输层数据保留原始IP首部开销小用于端到端通信隧道模式保护整个IP数据报添加新的外部IP首部开销大隐藏真实IP用于VPN。18. 什么是安全关联SASA是IPsec中发送方和接收方之间的单向逻辑连接定义了安全参数SPI、加密/鉴别算法和密钥、模式、生存期等。双向通信需要两个SA。19. AH和ESP的区别是什么AH只提供数据源鉴别和完整性不提供加密且不兼容NATESP同时提供加密和鉴别兼容NAT是目前的主流。8.8 无线网络安全20. WPA2四次握手的目的是什么在AP和STA之间协商出加密用的会话密钥PTK和GTK同时验证双方都拥有正确的PMK由WiFi密码派生。四次握手过程中WiFi密码本身不在网络上传输。21. WPA3相比WPA2的主要安全改进是什么用SAE同时对等认证替代PSK抵抗离线字典攻击强制前向保密支持192位加密简化IoT设备配置。22. 蜂窝网络AKA鉴权怎么实现双向认证网络通过用户返回的RES验证用户身份用户知道SIM卡中的长期密钥K用户通过验证AUTN用K加密的网络认证令牌确认网络是真实的防止伪基站。8.9 防火墙和IDS23. 包过滤防火墙和状态检测防火墙的区别包过滤对每个数据包独立检查IP/端口/协议不跟踪连接状态状态检测维护连接状态表只允许属于已建立连接的数据包通过更安全。24. IDS和IPS的区别IDS被动监控网络流量检测攻击并告警不阻断流量IPS在线部署检测到攻击后主动阻断。IDS误报不影响业务IPS误报会中断正常业务。25. 基于特征和基于异常的入侵检测各有什么优缺点基于特征的检测准确率高、误报低但只能检测已知攻击基于异常的检测能发现未知攻击零日漏洞但误报率高需要建立正常行为基线。三、习题习题1对称加密和公钥加密的性能对比假设AES-256的加密速度是100MB/sRSA-2048的加密速度是1000次/秒每次加密256字节。如果要加密一个10MB的文件只用AES加密需要多长时间只用RSA加密需要多长时间用混合加密AES加密文件RSA加密AES密钥需要多长时间解答AES10MB ÷ 100MB/s 0.1秒RSA10MB 10485760字节每次加密256字节需要10485760÷256 40960次40960÷1000 40.96秒混合加密AES加密文件0.1秒 RSA加密密钥一次0.001秒 ≈ 0.1秒结论混合加密比纯RSA快约400倍这就是为什么实际安全协议都用混合加密。习题2RSA计算假设p3q11仅用于演示实际用大素数计算n和φ(n)选择e3满足gcd(e,φ(n))1计算d对明文m7加密得到密文c解密密文c验证得到m7解答n p×q 3×11 33φ(n) (p-1)(q-1) 2×10 20d e^(-1) mod 203×721≡1 mod 20所以d7加密c m^e mod n 7^3 mod 33 343 mod 33 343-10×33 343-330 13解密m c^d mod n 13^7 mod 33。132169≡4134≡4216137134×132×13≡16×4×13832≡832-25×33832-8257。验证正确。习题3TLS握手分析在TLS 1.2握手中客户端发送的ClientHello包含client_random服务器发送的ServerHello包含server_random客户端发送用服务器公钥加密的pre_master_secret。请说明主密钥master_secret是怎么派生的以及为什么需要三个随机数client_random、server_random、pre_master_secret而不是只用pre_master_secret。解答主密钥通过PRF伪随机函数派生master_secret PRF(pre_master_secret, “master secret”, client_random server_random)需要三个随机数的原因pre_master_secret提供长期安全性由公钥加密保护client_random和server_random确保每次会话的主密钥不同即使pre_master_secret相同随机数不同则主密钥不同防止重放攻击每次握手的随机数不同增加熵提高密钥强度习题4防火墙规则设计公司网络有一个Web服务器192.168.1.10提供HTTP和HTTPS、一个邮件服务器192.168.1.20提供SMTP和IMAPS、员工工作站192.168.1.0/24。请设计包过滤防火墙规则满足外部可以访问Web服务器的80和443端口外部可以访问邮件服务器的25和993端口员工可以访问外部的HTTP、HTTPS、DNS禁止外部主动访问员工工作站禁止ICMP从外部进入解答规则按顺序匹配规则方向源IP目的IP协议目的端口动作1入站任意192.168.1.10TCP80,443允许2入站任意192.168.1.20TCP25,993允许3入站任意192.168.1.0/24TCP任意丢弃禁止外部主动访问内网4入站任意任意ICMP-丢弃5出站192.168.1.0/24任意TCP80,443允许6出站192.168.1.0/24任意UDP53允许DNS7出站192.168.1.0/24任意任意任意丢弃注意实际中还需要允许已建立连接的返回流量状态检测防火墙自动处理。四、Wireshark实验探究TLS实验目标通过Wireshark抓包观察TLS握手的完整过程理解ClientHello、ServerHello、证书、密钥交换、Finished等消息的结构和内容。实验环境电脑安装Wiresharkhttps://www.wireshark.org/浏览器Chrome/Firefox网络连接实验步骤第一步启动抓包打开Wireshark选择当前使用的网络接口如Wi-Fi或以太网在显示过滤器中输入tls或ssl只显示TLS相关数据包点击开始抓包鲨鱼鳍图标第二步访问HTTPS网站打开浏览器访问一个HTTPS网站如 https://www.example.com 或 https://www.baidu.com等待页面加载完成回到Wireshark停止抓包红色停止按钮第三步分析TLS握手在抓包结果中你应该能看到以下TLS握手消息Client HelloTLS版本如TLS 1.2或TLS 1.3客户端随机数32字节28字节随机数4字节时间支持的加密套件列表如TLS_AES_256_GCM_SHA384扩展字段SNI服务器名称指示、支持的曲线、签名算法等Server Hello选定的TLS版本服务器随机数选定的加密套件TLS 1.3中还包含密钥共享扩展Certificate服务器的数字证书链可以展开查看证书的颁发者、主题、有效期、公钥、签名算法Server Key ExchangeTLS 1.2ECDHE时服务器的ECDHE临时公钥参数用服务器私钥签名的参数Client Key ExchangeTLS 1.2客户端的ECDHE临时公钥或RSA加密的预主密钥Change Cipher Spec通知对方后续消息将使用协商好的密钥加密Finished第一个加密消息包含所有握手消息的摘要验证握手过程未被篡改第四步观察加密数据握手完成后后续的数据包都是 “Application Data”应用数据内容是加密的Wireshark只能看到加密后的密文看不到明文的HTTP请求和响应。这正是TLS提供机密性的体现。实验思考题你抓到的TLS握手用的是哪个版本TLS 1.2还是TLS 1.3服务器证书的颁发者是谁证书有效期是多长选定的加密套件是什么用的是哪种密钥交换算法RSA还是ECDHETLS 1.3的握手比TLS 1.2少了哪些消息为什么能不能从抓包中看到HTTP请求的URL为什么进阶解密TLS流量如果你想查看加密的应用数据内容可以配置SSLKEYLOGFILE设置环境变量SSLKEYLOGFILE/path/to/sslkeys.log用Chrome/Firefox访问HTTPS网站浏览器会把TLS会话密钥写入日志文件在Wireshark中编辑→首选项→Protocols→TLS→(Pre)-Master-Secret log filename选择日志文件Wireshark会用密钥解密应用数据显示明文HTTP内容注意这只能解密你自己浏览器的流量因为你有浏览器的会话密钥不能解密别人的流量。五、IPsec实验实验目标了解IPsec VPN的配置和工作原理观察IPsec隧道模式下的数据包封装理解ESP协议的加密和认证。实验环境推荐使用虚拟机两台Linux虚拟机如Ubuntu可以互相通信安装strongSwan开源IPsec实现sudo apt install strongswan或者使用网络模拟器如GNS3、Cisco Packet Tracer实验步骤概要第一步配置IPsec站点到站点VPN在两台Linux主机上配置strongSwan配置预共享密钥PSK或证书认证配置加密算法AES-256和完整性算法SHA-256配置隧道模式指定要保护的子网第二步建立IPsec连接从一端发起连接ipsec up 连接名观察IKEv2的四次消息交换IKE_SA_INIT和IKE_AUTH用ipsec status查看SA状态第三步抓包观察IPsec在中间链路上用Wireshark抓包从一端ping另一端观察ESP数据包外部IP首部隧道端点地址ESP首部SPI序列号加密的载荷原始IP数据报ESP尾部ESP认证数据ICV注意原始IP首部被加密看不到真实的源/目的IP第四步对比有无IPsec的数据包关闭IPsec抓包观察普通ICMP包明文可见原始IP首部和ICMP数据开启IPsec抓包观察ESP包加密只可见外部IP首部和ESP首部对比两者的区别理解隧道模式的封装实验思考题IPsec隧道模式下外部IP首部的源地址和目的地址是什么ESP包中能不能看到原始IP数据报的内容为什么IKEv2建立SA需要几次消息交换每次交换的作用是什么如果用传输模式而不是隧道模式数据包结构有什么不同IPsec和TLS都能提供加密它们在应用场景上有什么不同本章核心总结必看第8章「计算机网络中的安全」核心要点一、安全基础8.1-8.4CIA三元组机密性、完整性、可用性对称加密AES 公钥加密RSA 混合加密散列函数SHA-256 MACHMAC 完整性数字签名私钥签名公钥验证 鉴别不可否认数字证书CA签发 解决公钥分发nonce防重放证书防中间人二、安全协议8.5-8.8PGP安全电子邮件混合加密信任网TLS运输层安全HTTPS基础1.3更快更安全IPsec网络层安全VPN核心ESP隧道模式IKEWiFi安全WPA2四次握手→WPA3 SAE蜂窝安全SIM卡AKA双向认证5G SUPI加密三、运行安全8.9防火墙包过滤→状态检测→NGFW流量过滤IDS特征检测异常检测攻击告警IPS在线阻断主动防御SOC集中监控响应四、关键原则纵深防御多层次安全防护最小权限只授予必要的访问权限零信任永不信任始终验证安全是过程不是产品持续监控、更新、改进结语恭喜你完成了第8章「计算机网络中的安全」的全部学习这一章我们从网络安全的基本概念出发深入学习了密码学原理、报文完整性和数字签名、端点鉴别、安全电子邮件、TLS、IPsec/VPN、无线网络安全、防火墙和入侵检测系统。这些知识构成了现代网络安全的完整体系。网络安全是一个不断发展的领域——新的攻击手段不断出现新的安全技术也在不断进步。但核心原理是不变的机密性、完整性、鉴别、可用性以及密码学这个基石。理解了这些原理你就能看懂各种安全技术的本质也能在实际工作中做出合理的安全决策。希望这一章的笔记对你有帮助如果你觉得有用欢迎点赞收藏有问题也欢迎留言讨论我们一起进步。网络安全人人有责
返回列表