赞
踩
一面
二面
三面(交叉面)
你先做个自我介绍吧
假如说有个SQL注入如下
select * from user where userid = {};
这种情况下如何注入?
比如说我写一个安全SDK
sql注入的修复, 怎么写(伪代码)
答:我倾向于使用预编译的方式
但是预编译的话, 研发可能不会用怎么办呢, 就是说如果他觉得改起来太麻烦了能不能更方便一点. 因为预编译的话, 我每条SQL每条查询都得去改.
答:那设计一个白名单怎么样呢
那你大概写一下怎样设计一个白名单. 你可以分场景, 比如说什么场景什么场景的SQL注入, 或者是参数里面应该做什么操作
xss的修复, 怎么写(伪代码) 答: 用实体化转义
但是我们有一个场景啊, 你看我们上传简历这里, 有时候会支持上传html的简历, 对吧. 他本身业务就需要用到html, 如果用html实体化转义的话, 他全都会被转义, 那这样的话业务就崩了嘛, 对不对. 那这种情况下我们要怎么样去写一个xss的过滤, 或者是说转义, 去解决这个类似于简历这个场景. 你可以想一想, 写不出来代码也没关系.
答:白名单限制, 黑名单过滤.
其实我们自己是这样做的, 对于这种情况, 我们第一是会做一个html标签的白名单, 第二是事件的白名单. 黑名单我们就不搞了.
rce的修复, 怎么写(伪代码)(java或者python的命令执行) 答: 白名单限制, 只允许需要的函数. 但RCE的话我感觉在业务场景当中, 一般来说也不是很容易出现 面试官: 欸, 我们就出现了很多. 尤其是运维部门.
我: 我打CTF比较多, 我了解的RCE都是PHP方面的. 比如说system, popen之类的. 一般来说都是直接做过滤
那PHP中这些函数全部被黑名单了, 你还有什么方法
答: 字符串拼接 $a=p.h.p.i.n.f.o()
你有没有用过php里面的反引号啊
答: 还有用 chr()
函数来绕过
面试官: 编码是吧
xxe的修复, 怎么写(伪代码) 答: 对XXE来说, 我只了解他的攻击方式, 对他的防御不是很了解. 攻击方式就是做XML的外部实体化注入. 一个攻击模板, 可以读文件, 可以做命令执行
XXE怎么做命令执行呢, 就拿php来说, XXE怎么做命令执行
XXE这个命令执行是要他的服务端本身支持某些特殊的协议, 一般来说是不行的
了解过自动化代码审计的工具吗, 类似于fortify这种
答: 我只用过那个一个比较老的那个, 我想不起来了(指seay)
没关系, 那你有没有了解过他的一些原理, 大概怎么做的
我: 他原理一般都是通过匹配一些特殊函数, 去定位可能出现漏洞的函数的位置
但这种的话他误报很高欸, 就像我这种RCE的话, 你直接匹配的话他很多都是误报了, 很多他都不是web思路的
我: 还有一种是, 给他加一些自定义规则
那有没有更好的办法呢, 误报太多了我们没办法接受啊
我: 我有一个想法就是, 他自己匹配了之后, 能不能从前端从一个黑盒的层面再去验证一遍
那黑盒验证, 我就有需求是, 首先我得知道, 首先我php里面我这个函数到底是哪个入口传进来的, 对吧. 但这个有可能经过了层层调用, 甚至有可能是include()
这种, 那这种的话, 对于我来说 , 我并不知道他影响到了哪一些入口, 这种情况怎么办呢
你们学校有学编译原理吗
其实我觉得安全专业还是要学一下编译原理
有没有搞过linux的这种后渗透相关的
那你最后有什么想问我的吗
红队&&企业蓝军方向
以下都是同一场面试提的问题,两个面试官,一个代审一个红队,时长接近两小时
一面
(转成元组排序就行了,记得把str转成int,不然192会比50大)
输入:iplist = ["1.1.1.1","192.168.1.110","10.192.2.4","10.50.2.3","10.50.2.10","111.120.12.1","172.18.5.112"]
输出:
1.1.1.1
10.50.2.3
10.50.2.10
10.192.2.4
111.120.12.1
172.18.5.112
192.168.1.110
二面
问项目
项目哪一块时间花的比较多
怎么溯源攻击
举一个溯源攻击的例子
怎么检测webshell
sql注入在mysql和sqlserver中有什么区别
想找安全开发的岗位还是安全研究的岗位
代码题:手机九宫格键盘,输入数字,输出所有的字母组合
如输入23,输出[‘ad’,‘ae’,‘af’,‘bd’,‘be’,‘bf’,‘cd’,‘ce’,‘cf’]
讲一下DNS协议的作用、解析过程
DNS协议的安全问题
实习时间
一面
二面
技术类:
1,自我介绍
2,根据简历逐步问技术,问工具的具体使用
3,SQL注入漏洞,类型,可以造成什么危害
MSSQL与Oracle
SQL注入写入Shell的具体命令
4,XSS,存储型怎么利用,有哪些危害,除了钓鱼
带外COKIES的时候,遇到WAF怎们
5,AWVS登录扫描怎么操作,SQLMAP怎么用,有那几个级别,分别有什么区别,参数
SQLMAP如何扫数据包,本地读文件,指定参数,这些的具体命令
6,如何绕过WAF
7,如何入侵快手
视频上传点、社工,钓鱼邮件
供应链攻击
8,钓鱼邮件你会用那些恶意木马、shellcode
9、NMAP如何静PING扫描,如何看端口开放,如何看系统版本信息,具体的命令是什么
编程题:比较version号不同,写了大概思路,但是细节没处理好,直接给面试官说放弃了,面试官问了思想,然后又问特殊情况,想了一下,实在想不错
经历类:
1,你挖到的比较有意思的漏洞
2,你最近学习的东西,比较有意思的
反问:
1,甲方安全与乙方安全有啥不同,
2,感觉自己答得磕磕绊绊的,希望面试官能给一些后续的学习建议
总结:
面试体验非常好,中间说了好多不会,面试官也没有非常生气,还是完整的走完流程,最后给了很好的学习建议。
对于工具的使用问题问的很细致,但是最近都在手工渗透,复测,自然没有经常用工具,哎,反正感觉每场面试问的都很不一样。
自我介绍
2、介绍下项目
3、介绍实习
4、信息收集
5、给你一个网站,你会怎么去挖掘漏洞
6、sql注入修复意见
7、XSS修复意见
8、弱口令修复意见
9、数据库操作
10、手撕代码,我代码真不行,题目:给你几个版本号如:1.3.2,2.1.4,1.0,让你判断版本号大小
11、操作系统查看最近登陆的用户
12、查看文件的最后300行
13、文件的权限777之类的
14、osi7层
15、tcp3次握手
16、反问
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。