Skip to content

Latest commit

 

History

History
34 lines (25 loc) · 2.62 KB

File metadata and controls

34 lines (25 loc) · 2.62 KB

关于安全工程师岗位的面试

这几天陆续面了几个实习生,结果还是没有找到合适的人选,所以今天我想谈谈来甲方做一个安全工程师需要具备什么。

先说说简历的问题,这几位面试者没有一个能写得出好的简历,我所说的好的简历,大致应该包含这几个内容:

  • 个人联系方式(有个哥们儿连电话都不留,我咋面)
  • 在学校期间做过哪些项目,个人的思路是什么
  • 有哪些能力,比如代码审计、Python编程、Java安全等等,越具体越好

接下来说说面试,由于是Web安全方向,加上岗位和SDL有关系(安全产品研发、漏洞挖掘等),因此非常非常非常看重基础知识。我想无论哪个面试官,都会特别看重这一点,基础关过了才会根据简历再去问。

很多来面试的在校学生,都有在各大SRC提交漏洞的经历,但是很多人却答不上来这几个问题令我很意外:

  • 啥是同源策略,跨域有几种方式?
  • DOM XSS与反射XSS有啥不同,给你10s,如何快速判断一个XSS是否是DOM XSS?
  • SSRF漏洞原理是什么?利用时有哪些伪协议?
  • 在浏览器端,Referer可以篡改吗?

我认为这些都是最最基础的Web安全知识,并且适合针对马上毕业的学生。如果好好读几本经典的书,至少本地Demo来一遍都不会不知道这些问题。答得上这些,我才有机会问你接下来深入的问题。如果基础都答不好,甚至理解都有错误,这就好比大学的时候老师说某某基础知识点如果哪个人在考试中答错,其他答题都可以不看,直接可以给你不及格一样的。

再一个就是实战问题,发现应聘的哥们儿很少很少有渗透测试的实战能力,做过的一些项目也只是拿着WVS扫扫写个报告,或者介绍一下自己在项目中挖的那几个CSRF,这都算是缺乏实战。

还有就是眼界比较局限,仅仅盯着那一两本书是不够的,我们还希望你能知道诸如:

  • 云waf是怎么实现的
  • 什么是链路劫持,怎么检测与防范
  • 如何通过指纹识别,找出全世界尽可能多的某公司的服务器等

总的来说,如果一个毕业生能具备以下条件:

  1. 扎实的Web安全基础
  2. 一定的安全编程能力(不一定要多好,但至少小工具要会写)
  3. 具备一些有挑战性的技术跟进能力(比如BH大会资料、Java反序列化漏洞、JVM基础)
  4. 具备良好的总结能力(通过提供个人博客证明等等)
  5. 新漏洞的漏洞分析能力等

我会非常认可并给你个3.5的面试评分。