具备基础的工程师素质是从业的基础,在攻防渗透和软件开发有较为扎实的基础,同时兼备兴趣驱动和良好的适应能力上比较亮眼,则能很好的适应工作挑战。
基础:渗透测试和软件开发
首先要明确一个概念,术业有专攻在安全行业不是常态。安全本身就是一个覆盖了客户端、前端、网络、后端、服务器等涉及JavaScript、Python、PHP、Java等各语言的工作,如果非要讲究术业有专攻就没法做了,当你可以有擅长的方向,但前提是你都懂。这个“懂”不应该只停留在了解的层面,如果你是安全开发工程师,除了研发技能外,还必须知道常见漏洞的形成原因、利用方式和修复方案。如果你是渗透工程师,除了理解各种漏洞的攻击细节外,还必须有基本的开发能力。同时拥有攻防渗透和软件开发能力的人,在安全从业时的方方面面都会体现出极大的优势。
计算机基础技术要了解并持续学习,安全也是不断在进步的,几年前你很会挖漏洞就很厉害了,但今天你还是这样的话就没什么优势了。
摸黑前行最好的应对方法是你曾住过这个房子,或许你是一位资深研发工程师,但安全产品不同于用户产品,往往是没有经验也没有参照物的。所以往往需要有很强的安全背景与不断的试错调整才能开发出最好的安全产品。甚至在很多时候,沟通交流与思维方式都需要进行转变才能更好的协作,减少代沟和沟通成本。
安全行业的现状是大部分从业者都偏向于攻防渗透,如果同时拥有强大的开发技能,从业优势将非常明显。在安全产品开发、漏洞挖掘、代码审计上,不同技能的互补显得非常重要,做漏洞扫描器的同时如果在SRC挖过漏洞、做代码审计也能掌握软件开发、做合规审计的人也拥有CISP证书,工作中就会更加得心应手。
热情:兴趣驱动是最长久的
和安全产品开发一样,渗透测试也需要不断试错,我们往往在各种可能存在漏洞的地方测试数百个请求才有所收获,这需要经年累月的坚持下来,但这种坚持无法速成,而兴趣这位最好的老师就能够促使我们坚持。我对于安全的坚持就是兴趣驱动的。遇到一个线索,我会从傍晚折腾到黎明;又会因为一个突破点,从凌晨摸索到下午。我见过太多优秀的白帽子都是因为热爱,特别是他们能够跨行业地坚持热爱。
回顾从业安全行业十来年,做出的所有成绩并不是因为我更聪明、技术更好、更有天赋,而是每件事我都充满了热情,不断的迭代希望做到最好。
成果:没有结果的优秀是空谈
直观的成果是展示自己综合能力的最好方式,无论是在顶级期刊发表论文、知名比赛中获得好成绩、挖掘众多高质量的通用漏洞、研发Star数非常高的开源项目,还是在安全会议上分享先进理念,甚至突破了行业难题等等。
其它:优秀特质越多成长越快
- 某一方面突出优秀的人,不要成为千篇一律的普通人。
- 综合能力(软性技能)能在做事过程中帮到我们,但这不应该是我们的发展方向。
- 适应能力,软件工程师普遍三年换一轮新技术,而安全工程师则是每年都有新的安全技术、安全防御手段、安全方向,而应对这些思念情况,别无他法,唯有不断学习,良好的自驱自学能力会让你更快成长。
- 智商高、情商高、乐观、沟通交流、逻辑、影响力等