又到了毕业季,大四的漂亮学姐即将下架,大一的小学妹还在来的路上,每逢这时候我心中总是有些小惆怅和小激动……
作为学长,还是要给这些马上要初出茅庐的学弟学妹们,说说走出校园、走向职场要注意哪些方面。
走出校园后的第一步就是面试啦,对于面试方面的技巧和文章网上太多太多了,而安全行业是有别于其他行业的,面试中遇到奇葩面试官和各种稀奇古怪的问题的几率是很高的,作为过来人我要和学弟学妹们说道说道啦,快搬过来小板凳好好听讲。
一、面试开场白
一般首先是一段例行的开场自(说)我(学)介(逗)绍(唱),在这里我直接给你个万能公式:
1、在xx安全论坛投稿过xx篇文章,获得xx元稿费。
2、在xx众测,提交过xx漏洞,获得过xx元奖金。
3、有x年以上的Web/App漏洞挖掘、业务逻辑漏洞挖掘经验。
4、精通xx,xx,xx语言,能独立开发poc和exp。
5、获取xx张CNVD证书 和 xx CVE编号。
6、在xx安全会议上进行过xx演讲。
面试官要在这几分钟看看你的表达能力和随便翻翻你的简历,之后就会根据他们感兴趣的点开始面(盘)试(问)了,重点来了,经常被问到的有以下几点:
1、对安全行业的了解啊,之前有没有安全行业的实习或者工作经验啊;
2、毕设的方向啊,研究内容是不是有深度啊;
3、实习工作的内容啊,参与的实习项目,在项目中承担的工作及完成情况;
4、面试职位的优势啊,个人的优缺点啊;
当然上面这些都是很常规的,有些职位如渗透测试、漏洞挖掘、安全研究员之类的就会有各种意想不到的问题了……
如果问你离职原因:可以回答在公司个人发展受限,别整出“公司不被允许员工过年回家”的烂借口。
作为一个安全老司机,我曾经作为面试者被面试官折磨过,也作为面试官折磨过面试者,总结了以下几点经验供安全小白们参考:
1、简历切记不要贪全,页数不要太多,要结合面试职位突出重点;
2、了解专业技术问题,比如面试“WEB渗透测试”岗位,至少要掌握owasp top 10 的漏洞原理和测试方法吧;
3、代码作品可以附上github地址,有些技术类的面试官还真是回去看你的github,如果有像样儿的作品可以给自己加分不少;
4、提交过的漏洞编号,比如高大上的CVE啊、接地气的CNVD啊等等;
5、在互联网src提交过的经典漏洞和名次,用这个证明下实战经验还是不错的,至少比你说做过黑产要好。
二、高频面试题汇总
本套面试题,已整理成pdf文档,但内容还在持续更新中,因为无论如何都不可能覆盖所有的面试问题,更多的还是希望由点达面,查漏补缺,如果你感兴趣的话,可以给这篇文章点个赞同与收藏,然后厚台私信“面试”获取。
2.1、web部分:
1. sql注入部分
- SQL注入原理
- SQL注入的种类?
- SQL注入的绕过有了解过吗?有绕过那些WAF?绕WAF的方法有哪些?
- 介绍一下你的SQL注入流程
- SQL注入一开始用来判断数据库类型的语句是什么?
- 讲一下sql写入webshell的条件,如果你在的目录没有执行权限怎么办
- 讲讲sql注入的条件
- SQL注入里面有一个into outfile函数有什么作用?
- xp_cmdshell有了解过吗?能用来做什么
- 你有了解过那些数据库的sql注入?简单说一下,你是怎么快速判断它属于那个数据库的呢?
- 时间延时注入的原理?sleep()函数不能用你一般会怎么处理
- HTTP头注入了解过吗?注入点一般存在于那些地方
- SQL注入的防护方法有哪些呢?预编译的原理是什么呢?
- Orderby注入了解吗
2. xss部分
- xss的原理是什么?xss的三种类别有什么不同
- xss存在于那些地方?仅仅是前端吗?
- xss用script就可以反射了吗?
- 存储型和反射型有什么区别?本质上的区别
- 反射性xss的前提是什么呢
- xss的防护方法有哪些呢?要是有了httponly是不是就不能xss绕过了呢?
- 在已经有shell的情况下,如何使用xss实现对目标站的长久控制
3. ssrf部分
- 讲一下ssrf的利用以及ssrf的成因
- ssrf一般出现在哪里,你是如何判断这个点存在是ssrf漏洞的
- 如何防御ssrf漏洞呢
- ssrf有哪些绕过方法
4. csrf部分
- 讲一下csrf原理
- csrf的防御方法有哪些?referer验证和token那个安全级别高呢?分别介绍一下两个
5. 文件上传
- 讲一下条件竞争的原理
- 文件上传WAF怎么绕过
- 文件上传常见绕过方法
- 文件上传如何防护?白名单校验和黑名单校验
- 二次渲染了解过吗?你是怎么确定加入shell的位置的
6. 文件包含
- 文件包含的函数有哪些?include和require的区别
- 伪协议你了解哪些?伪协议的条件(需要开启那些配置)
7. XXE
- xxe的原理
- xxe语句怎么去构建
- 你是怎么判断存在xxe漏洞的
- xxe漏洞的危害有那些?你是怎么利用xxe漏洞的呀?
- 怎么防御xxe漏洞
8. 命令执行
- 命令执行相关函数
- 命令执行WAF绕过吗
- php.ini启用disable_functions,怎么绕过
9. 代码执行
- 代码执行相关函数
10. 业务逻辑漏洞
- 了解过那些逻辑漏洞
- 支付的逻辑漏洞,你是怎么改价格的,讲三种方法?
2.2、内网部分:
1. 提权
- 常用哪些方式提权?
- 请讲一下udf提权
- linux的提权方法有哪些
2. 代理转发
- 代理转发常用的工具有哪些?
- ew的正向代理和反向代理讲一下
- 讲一下ssh代理还有frp代理
- Neo-reGeorg代理是如何做的
- ew和neoreg的区别
3. 内网信息搜集
- 如何快速定位域控,介绍三种方式
- 一般域内信息收集你会收集那些信息
- 如何快速了解服务器的系统信息
4. 后台有一个进程,你需要找到他的程序执行文件,该怎么找?
5.有做过内网实战吗?讲一下
6.mimitatz除了抓密码还能做啥
7.约束委派和非约束委派的区别
8.pth.ptt,ptk区别
9.windows的身份切换和令牌切换
10.内网拿了web shell,发现不出网,怎么搞隧道
2.3、代码审计
- 代码审计的流程
- 代码审计需了解的一些框架
- 变量覆盖漏洞原理
- sql注入漏洞原理
2.4、查杀与免杀
- 查杀
- 免杀
- 二进制免杀(power免杀版本限制)
- 加壳工具
- powershell做免杀,使用的是那哪个版本
- 分离免杀的原理
2.5、工具
1. sql注入常用工具
- sqlmap工作原理
- sqlmap简单地使用方法命令
- 说几个你最常用的tamper脚本名称
- burpsuite和sqlmap联动
- 分别讲一下Get型和Post型的sqlmap语句
2. burpsuite
- burpsuite常使用那些模块
- 尝试过burpsuite和其他工具联动吗
3. awvs和appscan
- 扫描器的工作原理
- 两者有何不同
4. xray
- xray的基本使用
- xray的联动
5. msf
- msf这个工具吗?假如现在有一个已经被我们用msf控制的机子(后续的交流中可以确定是在metepreter>下了),该如何进行内网渗透呢?
- msf常用模块有哪些
- msf和cs联动做过吗,介绍一下
6. CS
- CS常使用的功能有哪些
- 有使用CS做过免杀吗
- CS上线Linux一般你怎么做的?有了解过CrossC2吗
2.6、其他
1. 说几个你知道的逻辑漏洞的类型?
2. 给你一个登录框,可能存在什么样的漏洞?
3. 假如现在给你一个网站,你会怎么样去进行渗透测试,多说一下你的思路
4. 如何判断是否CDN?要是ping都一样就能判断真的没有CDN了吗?要是有CDN如何绕过?
5. java反序列化的原理?java反序列化用到的函数
6. 护网的溯源是怎样做的?shiro反序列化漏洞原理
7.中间人攻击原理讲一下
8. 实战项目中令你最影响的漏洞
9. 逻辑漏洞你怎么去找的
10.docker未授权访问漏洞了解过吗,讲一下?docker逃逸了解过吗?
11.struts2的漏洞你了解吗
12.weblogic的漏洞你了解吗,讲一下
(中间件漏洞都了解一下吧,资料包里有)
13.给一个struts2 的post,碰到一个有waf的点怎么去做
14.上传webshell后发现函数被禁用掉了(执行whoami之类的命令执行不了==》linux服务器)
三、题外话
公司分甲方跟乙方,同时还分大公司和小公司。
做过管理的应该知道,团队管理大公司靠管理,小公司靠感情。
大部分人,很多时候不是你选公司,而是公司选你,所以这里也不多bb了。
现在的安全岗位,我们往往也会经历面试拧螺丝,工作造飞机的尴尬局面。
所以从技术面试来说,面试的问题需要多角度,多方面来考察我们的应聘者。
当然那些招驻场,随便问问的面试,当我没说。
最重要的一点就是,人品,很重要。