《CSDiy》笔记
洞悉攻防之道:Pwn.college与SEEDLabs的安全探索之旅
在《CSDiy》一书中,作者:PKUFlyingPig 带领我们穿梭于网络安全的浩瀚星河,其中 Pwn.college 和 SEEDLabs 犹如两颗璀璨的明星,照亮了学习者前行的道路。Pwn.college,以其 CTF 形式的挑战,循序渐进地磨砺着学习者的攻防技能。其课程内容与 CSE365 异曲同工,以实战演练为主,理论讲解为辅,旨在培养真正的安全实战人才。课程挑战难度由浅入深,尤其在内核安全方面,对学习者提出了极高的要求,常常让人殚精竭虑,废寝忘食。但正是在这种挑战中,学习者才能深刻领悟到安全攻防的精髓。Pwn.college 提供了丰富的学习资源,包括 YouTube 上的讲座视频、Twitch 上的直播、Discord 上的交流社区以及 GitHub 上的开源代码,为学习者构建了一个全方位的学习生态系统。值得一提的是,为了保证 ASU 学生的课程成绩评定,官方不鼓励上传解题思路,这也促使学习者独立思考,深入钻研。
相较而言,SEEDLabs 则以其系统性和全面性著称。该课程由雪城大学推出,并获得了 NSF 的资金支持,旨在开发具有实践性的网络安全实验练习。SEEDLabs 涵盖了软件安全、网络安全、Web 安全、操作系统安全和移动应用安全等广泛主题,为学习者提供了一个全面了解网络安全领域的机会。SEEDLabs 提供了详细的开源讲义、视频教程、教科书以及开箱即用的攻防环境,极大地降低了学习的门槛。全球有超过 1050 家研究机构在使用该项目,可见其影响力之深远。以缓冲区溢出实验为例,SEEDLabs 提供了详细的实验指导和教材内容,帮助学习者深入理解缓冲区溢出的原理和利用方式。这种理论与实践相结合的教学方式,使得学习者能够更好地掌握网络安全知识,并将其应用于实际场景中。例如,在2023年,全球范围内因缓冲区溢出漏洞导致的损失高达数百万美元 💰,凸显了学习此类安全知识的重要性。
拨开云雾见青天:USTC与UMass的计算机网络学习之路
《CSDiy》中,作者也提到了计算机网络学习的两条路径,分别是中国科学技术大学(USTC)和马萨诸塞大学(UMass)的课程。USTC 的计算机网络课程,以其授课风格贴近实际而备受推崇。郑烇老师的课程视频深入浅出,并坚持在评论区答疑解惑,其认真负责的态度令人钦佩。该课程采用《计算机网络(自顶向下方法)》作为教材,内容涵盖了该书的大部分内容,并与考试内容紧密结合,为学习者提供了高效的学习路径。然而,该课程对学习者的预习提出了较高的要求,否则可能会感到困惑。
UMass 的计算机网络课程同样以《计算机网络(自顶向下方法)》为教材,但其侧重点在于利用 WireShark 进行抓包分析的实验。Jim Kurose 和 Keith Ross 两位作者不仅精心制作了教材配套的课程网站,还公开了自己录制的网课视频和交互式的在线章节测试,为学习者提供了丰富的学习资源。然而,该课程缺乏硬核的编程作业,这使得学习者在实践方面有所欠缺。为了弥补这一不足,作者建议学习者可以同时学习 Stanford 的 CS144 课程。在2024年第一季度,全球互联网流量达到了惊人的 4.8 ZB 🚀,网络安全问题日益突出,因此,深入学习计算机网络知识显得尤为重要。
登峰造极:Stanford CS144的TCP/IP协议栈构建之旅
Stanford 的 CS144 课程,无疑是计算机网络学习的巅峰之作。该课程由网络领域的巨擘 Nick McKeown 教授主讲,他不仅是学界泰斗,也是业界精英,其课程内容深入浅出,引人入胜。更令人称道的是,McKeown 教授会在每一章节的最后采访一位业界高管或学界高人,为学习者提供了开阔视野的机会。
CS144 课程的核心在于其 Project,学习者将用 C++ 循序渐进地搭建出整个 TCP/IP 协议栈,实现 IP 路由以及 ARP 协议。最终,学习者可以使用自己实现的协议栈代替 Linux Kernel 的网络协议栈与其他学生的计算机进行通信,这种成就感是无与伦比的。该课程难度极高,需要学习者投入大量的时间和精力,20 万美元 💰,可见其市场价值之高。