00x00 摘要
笔者作为网络安全的初识者,从求职者的角度总结了一点点关于渗透测试工程师求职面试的要点给即将毕业的大学生(实习生和应届生)予以参考,以便能更好更快地找到一份自己满意的工作。
总结基于笔者本人的几次面试经历,都是自己投简历(广州的几家公司),没有校招。这里简单介绍一下:我自学web渗透和Android逆向半年有余,计算机网络专业的专科生,通过赛事接触web渗透,慢慢接触Android逆向,继而初识网络安全。没有什么值得吹嘘的事,O(∩_∩)O哈哈~,没事就学习研究,个人博客 http://a--o--e.lofter.com
00x01 现场面试准备
- 简历(打印3份以上,彩色),身份证,毕业证等资料;
- 电脑(无线鼠标,电源线等);
- 本子和笔,着装整洁,守时(提前20分钟到);
- 面试公司的认识(地点,公司发展时间戳,部门,面试官等)。
00x02 对于电话面试(技术员工)- 可看着读
- 约好时间并提前15分钟找个安静,信号好,没人打扰的地方,注意手机电量;
- 站着进行电话面试,保持微笑,通话可录音;
- 一份简历,本子和笔,耳机等(看着简历来);
- 先想好,面试官会问的问题及答案,记要点(渗透测试的思路等)。
00x03 面试官问的问题(技术员工或部门经理+HR)
Q1 自我介绍
1)可参照简历
2)有条理(三分钟左右)
Q2 一个网站的渗透测试思路,流程(给你一个网站,怎么做?)
1)信息收集
a. 服务器的相关信息(真实ip,系统类型,版本,开放端口,WAF等)
b. 网站指纹识别(包括,cms,cdn,证书等),dns记录
c. whois信息,姓名,备案,邮箱,电话反查(邮箱丢社工库,社工准备等)
d. 子域名收集,旁站查询(有授权可渗透),C段等
e. google hacking针对化搜索,pdf文件,中间件版本,弱口令扫描等
f. 扫描网站目录结构,爆后台,网站banner,测试文件,备份等敏感文件泄漏等
i. 传输协议,通用漏洞,exp,github源码等
2)漏洞挖掘
1> 浏览网站,看看网站规模,功能,特点等
2> 端口,弱口令,目录等扫描
3> XSS,SQL注入,命令注入,CSRF,cookie安全检测,敏感信息,通信数据传输,暴力破解,任意文件上传,越权访问,未授权访问,目录遍历,文件 包含,重放攻击(短信轰炸),服务器漏洞检测,最后使用漏扫工具等
3)漏洞利用 | 权限提升
a) mysql提权,serv-u提权,linux内核版本提权等
4)清除测试数据 | 输出报告
i 日志、测试数据的清理
ii 总结,输出渗透测试报告,附修复方案
5) 复测
验证并发现是否有新漏洞,输出报告,归档
Q3 一个APP的逆向分析思路(给你一个APP,怎么做?)
这里简单列一下app测试的大纲,详细不便放出(可参照OWASP的mstg):https://github.com/OWASP/owasp-mstg/
1代码保护检测,2数据存储安全,3加密算法,4四大组件安全,5应用规范 等
Q4 简述某一漏洞的原理和渗透手法(SQL注入,XSS,CSRF等)
- SQL注入原理
a. SQL(结构化语句查询)
b. 提交参数(调用数据库查询)的地方是用户可控的,并未做任何过滤处理
c. 分 数字型,字符型,搜索型,POST注入,Cookie注入,延时注入,盲注等 - SQL注入,注入方法
1)如果是get型号,直接,sqlmap-u "注入点URL"
2)如果是post型诸如点,可以sqlmap-u "注入点URL” --data="post的参数"
3)如果是cookie,X-Forwarded-For等,可以访问的时候,用burpsuite抓包,注入处用 * 号替换,放到文件里,然后sqlmap -r "文件地址"
- XSS原理
网站未对用户输入的数据做过滤处理,构造特定的JS脚本插入到文本框可引发XSS,会被浏览器解析,执行 - XSS常见攻击语句
"><BODY><" "><svg /onload=prompt(1)><" "><IMG SRC="javascript:alert('XSS');"><" "><img src=" "=" "onerror="alert('xss')"><" "><script>alert(document.cookie)</script><"
Q5 编程语言
1,python,JAVA,算法,二进制等编程能力(笔者暂未学,不深入探讨)
2,ARM汇编(基本的汇编指令,寄存器等)
Q6 WAF bypass
1,关键字可以用%(只限IIS系列)。比如select,可以 sel%e%ct
2,通杀的,内联注释,如 /!select/
3,编码,可两次编码
4,multipart请求绕过,在POST请求中添加一个上传文件,绕过了绝大多数WAF
5,参数绕过,复制参数,id=1&id=1
6,内联注释
Q7 Kali的使用(Linux系统)
whatweb 指纹识别
dirb 目录扫描
whois whois查询
无线攻击套件
字典生成套件
爆破工具
kali系统中的工具清单 - 官方介绍
Q8 OWASP-Top10-2017
A1 注入, A2 失效的身份认证, A3 敏感信息泄露, A4 XML外部实体(XXE), A5 失效的访问控制, A6 安全配置错误, A7 跨站脚本(XSS), A8 不安全的反序列化, A9 使用含有已知漏洞的组件, A10 不足的日志记录和监控
OWASP_Top_10_2017_中文版v1.2.pdf
Q9 网络安全事件应急响应(如,一业务主站被挂黑页的处理流程及应对方法)
- 取证,登录服务器,备份,检查服务器敏感目录,查毒(搜索后门文件 - 注意文件的时间,用户,后缀等属性),调取日志(系统日志,中间件日志,WAF日 志等);
- 处理,恢复备份(快照回滚,最近一次),确定入侵方法(漏洞检测,并进行修复)
- 溯源,查入侵IP,入侵手法(网路攻击事件)的确定等
- 记录,归档----预防-事件检测-抑制-根除-恢复-跟踪-记录
通用漏洞的应对等其他安全应急事件
Q10 提交过的漏洞
国内外的漏洞提交平台,各SRC等
Q11 其他优势
1,新兴技术的研究(IOT安全,区块链,人工智能,机器学习等)
2,个人博客(原创文章),投稿,人脉,安全峰会,安全研究Paper, 安全议题分享等
3,比赛(CTF,团队比赛等),线下培训
4,在校经历(获奖,个人项目,团队活动,担任学生干部等)
5,英语 CET-4,CET-6
Q12 读过的技术书籍(学习的途径)
《白帽子讲web安全》、《ios应用逆向工程-第2版》、《加密与解密-第3版》、《汇编语言-第2版》、《OWASP-MSTG》
00x04 问面试官的问题
q1 贵公司,信息安全部门的规模,发展等
q2 任职后的工作职责,内容,出差,时间等
q3 劳动合同(实习生签三方协议和转正问题),是否解决户口
q4 薪资(税后),奖金,股票期权,福利,活动等
00x05 面试总结
1 记录面试官的问题和自己的回答
2 查漏补缺
3 收获
4 是否通过,下次面试或报道入职时间