每年,成千上万的信息安全或计算机科学专业的毕业生从高校毕业,完全没有为实际工作做准备。在这里,我们看一下最近的一项调查结果,该调查强调了校友最大的技能差距,以及求职者如何在人群中脱颖而出。
几乎每个星期,我都会收到至少一位读者的来信,这位读者就如何开始信息安全事业寻求建议。在大多数情况下,申请人会问他们应该获得哪些证书,或者哪个专业前景最光明。
很少有人问到要成为更具吸引力的候选人,您需要掌握哪些实践技能。我总是警告您,我自己没有任何证书或文凭,但我经常与信息安全部门和招聘人员的负责人交谈-经常询问他们对现代候选人的印象。
典型的答案是,如此多的候选人只是缺乏实际问题的经验。
当然,大多数毕业生缺乏实践经验。但是,幸运的是,信息安全的一个独特方面是,可以通过良好的尝试和过时的旧方法来获得经验和基础知识。
关键技巧之一是学习计算机与其他设备如何交互的基础知识。我之所以这样说,是因为网络是许多其他学习领域的基础技能。在不深入了解数据包工作原理的情况下从事安全工作有点像在不首先研究元素周期表的情况下尝试成为化学工程师。
请不要相信我。SANS研究所最近对284家不同公司的500多名网络安全从业人员进行了调查,以找出他们发现哪些技能对求职者最有用,哪些技能最常丢失。
在调查过程中,要求受访者对从“关键”到“可选”的各种技能进行排名。高达85%的人认为网络知识是关键或“非常重要”的技能,其次是Linux(77%),Windows(73%),通用利用技术(73%),计算机体系结构和虚拟化(67%),数据处理和加密(58%)。令人惊讶的是,只有39%的人认为编程是一项关键或非常重要的技能(我们将在一分钟之内再讲到这一点)。
网络安全专业人员如何评估这些关键和非常重要的技能的潜在求职者?结果似乎势不可挡:
| 技能专长 | 有多少候选人甚至不能解决基本问题 | 有多少候选人证明了自己的技能 |
|---|---|---|
| 一般骇客技巧 | 66% | 4.5% |
| 47% | 12,5% | |
| 46% | 4% | |
| Linux | 40% | 14% |
| 32% | 11,5% | |
| 30% | 2% |
该研究所研究主任艾伦·帕勒(Alan Paller)表示:“雇主报告说,对学生的网络安全培训在很大程度上是不足的,并且感到沮丧,因为他们必须花数月的时间才能找到合格的入门级员工(如果有)。” SANS。 “我们建议,为了应对这些挑战并缩小差距,我们需要阐明雇主期望但毕业生找不到的技能。”
事实是,我认识的一些最聪明,最精明,最有才华的计算机安全专业人员没有计算机科学或计算机科学证书或学位。实际上,其中许多人从未上过大学或大学毕业。
相反,他们之所以进入安全领域,是因为他们对这个主题充满热情和强烈的兴趣,这种好奇心迫使他们尽可能多地学习-主要是通过阅读,尝试和犯错(很多错误)。
我并没有劝阻读者追求该领域的高等教育或证书(这可能是许多公司的基本要求),只是为了避免他们将其视为稳定和高薪工作的保证。
如果不掌握这些技能中的一项或多项,您将不会被视为非常有吸引力或杰出的候选人。
但是如何?
那么,重点放在哪里,最好的起点在哪里?首先,虽然有几乎无数种获取知识的方法,而且您可以探索的深度几乎没有限制,但最快的学习方法是弄脏您的手。
我不是在谈论黑客某人的网络或某些不良站点。未经许可,请勿这样做。如果您破坏了第三方服务和站点,请选择通过漏洞赏金计划提供奖励的服务和站点,然后确保您遵循这些程序的规则。
但是几乎所有内容都可以在本地播放。是否想掌握用于黑客和利用漏洞的一般技术?有无数的免费资源提供 ;专门设计的工具(例如Metasploit和WebGoat)以及Linux发行版(例如Kali Linux),其中包含大量教程和在线教程。此外,还有许多免费的渗透测试和漏洞检测工具,例如Nmap,Nessus,OpenVAS和Nikto。这不是一个完整的列表。
组织您自己的黑客实验室。您可以在备用计算机或服务器上,也可以在旧PC上进行此操作,这些PC在eBay或Craigslist上以便宜的价格大量出售。免费虚拟化工具,例如VirtualBox,无需安装其他设备即可简化使用各种操作系统的工作。
或者考虑向某人付费以设置可以进行实验的虚拟服务器。Amazon EC2是一个不错的低成本选择。如果要测试Web应用程序,则可以在自己的本地网络中的计算机上安装任意数量的Web服务,例如WordPress,Joomla的旧版本或Magento等在线商店引擎。
想探索网络吗?从一本有关TCP / IP的体面的书开始,对网络堆栈以及所有层如何相互交互有很好的了解。
当您吸收这些信息时,学习使用一些工具,这些工具将帮助您将知识付诸实践。例如,看看Wireshark和Tcpdump,它们是网络管理员用来对网络和安全问题进行故障排除以及了解网络应用程序如何工作(或不工作)的便捷工具。首先检查您自己的网络流量,Web浏览和日常使用的计算机。通过查看应用程序在计算机上发送和接收的数据,方式和位置,来了解它们在做什么。
关于编程
雇主可能需要或可能不需要使用Go,Java,Perl,Python,C或Ruby等语言的编程技能。不管怎样,一种或多种语言的知识不仅会使您成为更具吸引力的候选人,而且还会促进进一步的学习并提高他们的熟练程度。
根据专业的不同,您有时会发现,对编程的理解恰恰限制了进一步培训的可能性。
如果您对语言学习的想法感到恐惧,请从基本的Linux命令行工具开始。仅学习如何编写基本脚本以自动执行例行任务,已经向前迈出了一大步。而且,精通Shell脚本编写将在您的整个职业生涯中为几乎所有与计算机相关的技术角色(无论您是否在学习某种特定的编程语言)付出很多回报。
得到帮助
毫无疑问:就像学习乐器或新语言一样,获得网络安全技能既费时又压力很大。但是,如果您对全部信息不知所措,则不要灰心。慢慢来,继续走吧。
这就是支持小组提供帮助的原因。说真的在信息安全行业中,网络的人性化以会议和本地会议的形式出现。很难高估半定期与志同道合的人交往对您的理智和职业至关重要。
这些活动很多都是免费的,包括BSides会议,DEFCON组和OWASP会议...而且,由于高科技产业继续以男性为主,也有一些网络安全会议和妇女为重点的群体,如Cyberjutsu联谊会和其他在这里列出。
如果您不住在茫茫人海中,那么您所在的地区可能会举行几次信息安全会议。但是,即使您不在人迹罕至的地方,由于COVID-19大流行,现在实际上仍在举行许多会议。
简而言之,不要期望文凭或证书会为您提供雇主可以理解的期望您的技能。这可能公平,也可能不公平,但是您将必须发展和提高技能,以服务未来的雇主和该领域的工作机会。
我相信读者对于初学者和学生应该集中精力做什么有自己的想法。请随时在评论中说出来。
也可以看看: