1.2、找一份工作
职业列表
[编辑注:这是为pentest.cryptocity.net编写的一篇较老的文章,我们正在更新过程中。]
以下这些是基于我已有的经验和你情况的不同而写的对于信息安全职业生涯的看法。如果你住在纽约市,而且对于应用安全、渗透测试或逆向工程感兴趣,刚刚踏入信息安全领域开始你的职业生涯,那么以下信息会对你非常适合。
雇主
角色
书本中学习
课程中学习
大学
CTF比赛
沟通
见人
会议
认证
链接
指引的朋友
雇主
就我可讲的而言,在信息安全产业有五类主要的雇主(不计学院派)。
政府
非技术型财富500强(大多数是金融类)
大型技术供应商(大多数是在西海岸)
大型咨询公司(大多数非技术企业)
小型咨询公司(大多数很酷)
你所工作的产业决定了你需要解决的主要问题。例如,金融行业重点强调的是对于商业过程将风险降低到最低损失(大规模自动化的原因)。另一方面,咨询常常意味着向人们销售想法X,X实际上就是一个漏洞或研究发现新的漏洞。
角色
我主要将信息安全职位分离对应到互联网网络安全、产品安全和咨询。进一步我将这些类型的工作分类为以下几个角色:
应用安全(代码审计/应用评估)
攻击者(攻击)
合规性
电子取证
事件处理
管理者
网络安全工程师
渗透测试
政策/策略
研究员
逆向工程师
安全架构师
以上的每一个角色都要求有不同的、高专业性的知识面。这个站点对于应用安全和渗透测试是一个不错的资源,但是如果你对其他角色感兴趣就需要找其他资源。
书本中学习
幸运的是,关于每个信息安全方面的主题都有一打好书。Dino Dai Zovi和Tom Ptacek都有绝佳的读书列表。我们建议阅读以下图书:
O'Reilly出版的任何一本你选择的脚本语言书
如果你不知道自己在找什么书,那么可以访问O'Reilly提供的书单。他们可能是这个产业中最执着和最高质的图书出版商了。
别忘了,单纯的读书不会给予你超越谈资之外的任何附加技能,你需要练习或基于你从书本中实际学到和理解的内容创造一些东西。
课程中学习
如果你在找一些可以随手拿来和直接了当的东西,那么有许多在线的大学课程是关于信息安全的。我在下方列出了一些绝佳的课程资源(根据机构名称排序)。RPI课程是和这些课程最相似的一个,Hovav可以通过最佳学术阅读列表的内容获得绩点,但是列表中的每个课程都很出色。
[编辑注:表格待添加/之后更新。]
大学
找到一所有专业安全课程大学的最容易和简单的办法是通过NSA Centers of Academic Execllence(NSA-COE)机构列表。这个资质要求正逐渐放低以至于越来越多的大学已经获得此资质,它也可以帮助你寻找那些刚刚获得COE-CO资质的单位。记住,资质仅供参考。你需要深入了解每所大学实际的课程,而不是仅依靠资质做选择。
一旦进入大学,要上那些能够强迫你编写大量代码解决难题的课程。IMHO的课程聚焦于理论或提供有限价值的模拟问题。如果你无法从整个CS课程表中确定哪些是有编程内容的CS课程,那么就向学长征求意见。另一种达成此项目的的方式是报考学校的软件开发专业而不是计算机科学专业。
夺旗比赛
如果你想获得和学到技能技巧,且想要做地更快,那么应该参加CTF比赛或一头扎进Wargame。值得注意的一点是许多这种挑战赛都有附加的会议(各种规模),参加这些比赛就意味着会错过整个会议。试着不要赛过头,因为参加会议有参加会议的好处(见下文)。
有一些仅做防御的比赛也将自己定位为CTF比赛,主要是高校网络防御挑战赛(CCDC)及其地区比赛,我的建议是无视它们。他们的题目是关于系统管理,很少会教你安全相关的内容。尽管他们乐此不疲地将自己看作是红队(Red Team)。
沟通
在任何角色中,你的时间都主要花费在与其他人的沟通上,主要通过Email和会议,少量是通过电话和即时通讯(IM)。雇主的角色决定了你是否需要和内部安全团队、非安全技术人员或商业用户接触更多。例如,如果你在金融公司做网络安全工作,那么就需要和内部技术人员沟通更多。
在大型组织中做好沟通的建议:
学习写简洁、明了、专业的邮件。
学习让事情有组织地被解决。不要随心所欲。
学习公司或客户的商业内容。如果你从商业层面考虑,你的选择就有a)不做任何事 b)解决事情 和c)考虑时间和成本更有说服力做事。
学习你所在公司或客户是怎样工作的,比如关键人物、过程或其他能够让事情达成的激励因素。
如果你仍然在学校学习CS课程,参加人文类课程会强迫你写东西。
见人
找到并参加你所在城市的安全聚会(CitySec),在大多数城市每个月都会有一次没有演讲的非正式会面。顺道提一句,我们参加的是我们本地的NYSEC。
ISSA和ISC2关注于政策、合规性和其他新兴且不确定的话题。类似的,InfraGard主要关注在非技术性法律执行方面的话题。OWASP是由厂商发起形成的活动中最糟糕的例子,与其说它是和技术相关,不如说是和销售相关。
会议
如果你此前从来没参加过信息安全会议,使用下面的Google日历可以帮你找到一个低消费的本地会议。我的学生中有人认为参加一场会议是某种测验,所以尽可能地推脱不去。我保证我不会带着期末测验从灌木丛中跳出来,并在事后扣你的分数。
如果你参加一场会议,不要太看重每个时间段的会谈。会谈只是吸引所有聪明的黑客在某个周末聚集到一个角落的诱饵:你应该见见其他与会者!如果一个特别的会谈非常有意思和有用,那么你应该和演讲者进行互动。关于这个主题,Shawn Moyer在Defcon嘉宾角的这篇文章中有更多描述。
如果你在某个地方工作,并焦虑着如何向公司交代出席会议的事情,那么Infosec Leaders blog中有一些有用的建议。
认证
这个产业需要特别的知识和技巧,为了认证考试而学习不会对你的知识和技能有任何帮助。事实上,在很多情况下它还有坏处,因为你花费时间学习认证考试而导致你分心无法做该手册中提到的事情。
即便如此,有一些便宜的和中立厂商的认证可以在你当前阶段帮助你突出你的简历,例如Network+和Security+或者甚至一个NOP,但是我认为认证在你找工作或专业发展中起不到什么作用。
通常,有两种原因需要获得认证:
你已经支付认证的费用,通过支付培训和考试或有时候在你获得认证之后会自动支付费用(通常是政府认证)。
你的公司或你的客户强迫你获得认证。这通常有助于销售增长,比如“你应该选择我们,因为我们所有的员工都有XYZ认证!”
通常,花费时间在参加CTF上更加有产出效率,然后用你的最终排名来证明你的能力。
链接
关于该文章的Reddit和Hacker News子内容
安全建议
How to Milk a Computer Science Education for Offensive Security Skills
Kill Your Idols, Shawn Moyer's reflections on his first years at Defcon
认证有感
常规技术建议