大学课程对在网络安全职业中有帮助吗?

很多人在选择大学课程时,会经过深思熟虑,特别是那些想从事网络安全工作的人。在职业道路上开辟新的方向、塑造自己的未来并在自己热爱的工作上取得成功并不容易。所以,你真的需要大学教育才能从事网络安全吗?你可以学到哪些将来有用的知识呢?

首先,我们来回答一个每个学生都会问至少一次的问题。在学校学到的东西在现实生活中有用吗?有人问这个问题可能会认为他们在学校所学的东西实际上是无用的。但是,网络安全专业人员渴望获取信息。对他们来说,没有多余的知识。

在这个阶段,学生们经常会有另一个问题。例如,为什么微分方程课对成为网络安全专业人员有用呢?

如果你想得到一个有意义的答案,可以考虑一个计算机工程专业的学生(不同国家甚至不同教育机构的课程内容会有所不同)。假设这个假设的学生在第一年选择了以下课程:

  • 微积分 I
  • 微积分 II
  • 线性代数
  • 算法和编程 I
  • 算法和编程 II
  • 信息技术
  • 物理 I
  • 物理 II
  • 计算机工程导论
  • 概率与统计
  • 网络技术

如果你看看这些课程,你可能会认为它们与网络安全关系不大。但是这是真的吗?

算法和编程

网络安全专业人员几乎每天都在寻找新的安全漏洞。他们所使用的技术基础是编程语言。了解编程语言的语法结构是不够的。能够从零开始开发不存在的算法,让你在任何计算领域都能取得成功,不仅仅是在网络安全领域。

在网络安全工作中,无论是寻找软件中的安全漏洞还是准备利用相关漏洞的攻击代码,都需要使用算法。这将使他们能够成为红队或蓝队(甚至两者兼顾)的一部分。

想象一下你可以在任何地方找到的基本渗透测试教程。使用一些简单的工具就能进行 SQL 注入等技术。但是要真正理解这些基础知识,以及事物是如何实际发生的,你就需要了解算法的知识;比如说,二分查找这样一个非常基础的算法,网络安全专业人员已经使用了多年。

微积分、线性代数、物理、概率和其他数学课程

数学在教育中一直都是核心内容。但是要从网络安全的角度更好地理解数学与编程的关系,我们可以从以下几个课程入手。

假设你找到了一份网络安全工作,并且你的雇主给了你数千个日志文件。你的任务很“简单”:你需要分析哪些是网络攻击,哪些是正常用户流量。如果你无法利用数学算法,检查所有这些日志可能需要数天时间。

你可能会处理确保数据库的安全性的应用程序,其中包含数十万用户的数据,并且有时还包括数百万用户的资金转账的安全性。你将需要数学算法来对如此多的数据进行检查、分类和分析。

如果你在网络安全方向有一个学术目标,那么这些数学课程将成为你最好的朋友。即使你不打算从事学术职业,数学知识也会使你在任何职业道路上脱颖而出。此外,数据科学、机器学习和深度学习等领域已经与网络安全融合。

其他与计算机相关的课程

如果你想从事网络安全工作,你会倾向于选择与之直接相关的课程。但是了解数据结构、计算机工作原理以及硬件与软件之间的关系对于你来说绝对必要。因为你始终需要处理一些结构性问题,例如修改应用程序在其地址空间中保存的数据、内存溢出漏洞以及利用这些漏洞。

你必须掌握堆、栈和链表等概念,特别是对于逆向工程来说更是如此。你真的需要了解所有这些吗?这取决于你想在网络安全领域成为多专业人士。很多人使用现成的工具,并对拓展自己的知识不感兴趣。为了提前进步并成为热门人才,请不要低估这些知识的重要性。

另一方面,在不了解软件开发者世界的情况下,不可能成为渗透测试的专家。网络安全工程师应该能够像软件开发者一样思考,并理解他们的目标。例如,如果你深入研究 PHP 对象注入漏洞,你会看到面向对象编程是多么有用。

所有这些都证明了大学所学课程的必要性。你可以将任何课程转为自己的优势。

阅读在学习网络安全时的重要性

如果你是一个书虫,那真的很有帮助。你可能在一家只使用 Python 和 JavaScript 库的公司工作,但这并不意味着你不能学习 C# 和 .NET 等技术。当然,学习所有的技术、框架和编程语言是不可能的。然而,尽量学习尽可能多的知识将会有很大的帮助,特别是在渗透测试方面。

你永远不知道什么时候这些知识会为你带来帮助。你最大的武器就是好奇心。努力阅读每一篇学术文章、研究论文、实验结果和书籍。你会意识到自己比想象中进步得要快得多。你应该花费超过一半的闲暇时间阅读和研究,因为有太多东西需要学习和尝试。永远不要失去好奇心。

你将在哪个领域专长?

在网络安全的每个领域成为专家是不可能的,但有许多不同的领域可以专长。然而,了解所有领域的基础知识很重要,因此即使是基础研究也会有所帮助。以后,你将能够自己学习哪个领域适合自己,并有机会选择自己专长的领域。

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注