深圳深信服科技面试全过程#附面试题

admin 2022年10月5日22:29:19评论83 views字数 5227阅读17分25秒阅读模式


高质量的安全文章,安全offer面试经验分享

尽在 # 掌控安全EDU #



今天小师妹给大家带来的是由

微专业正式课urfyyyy同学

在社区分享的面试经验~



所面试的公司:深信服、安恒信息、安垚、端御

所在城市:上海、杭州

面试职位:渗透测试工程师

薪资待遇:10k-20k都有,hr说要保密,是我当时提出薪资要求的3倍。。。



1

面试过程

我现在是大四,今年7月份的时候去广州安恒面试了一次,直接就是和经理面试,一次过,可惜虽然和经理聊了30分钟,最后还是没要我,造化弄人。
继续巩固学习了一个月后,8月初面了深信服,三面之后,过了18天才通知我,说我被录取了(中间那段时间我都以为我凉透了),真的有点惊喜了。
因为面试的时候一面和二面有个非常非常简单的问题没答上来。写的比较简洁,给大家提供一下思路。废话不多说了,祭出面试题。(具体怎么问的也不是很记得了)



更多面试经验分享、安全课程

还有内部交流群

深圳深信服科技面试全过程#附面试题
识别二维码添加老师
即可免费领取



2

面试问题

1、问:做个自我介绍吧。

     答:这个就不用写什么了,就是说一些自己和网络安全搭边的一些事啦,相信咋喜欢网络安全的小伙伴都会有一堆说不完的话,我就说了3分钟左右,大佬们可以自己把握时间。


2、反序列化漏洞的原理是什么以及怎么利用的

解:很巧的是前一天我刚好看了一下反序列化。还顺便复习了一下serialize和unserialize的发音。我就把学院里教的反序列化给他老人家讲了一遍,从对象序列化到字符串格式反序列化,再到靶场的做法。。。。。。当然靶场被我说成了某站点。。然后穿插着unserialize的英文。面试官也是有点一愣一愣的。最后说他听懂了。然后他问到weblogic的反序列化有研究过吗,我只能如实说并没有的,但已经排上了日程,下周就会去做这部分的研究,但是我说我修复weblogic反序列化贼厉害啊,每个版本的反序列化我从运维的角度上都会修复,然后这个问题就没继续深入了

3、如何看待web前端安全,简述前端安全存在的风险有哪些,并用具体例子说明
解:我理解的web前端指的是客户端,也可以说是浏览器端。前端安全是一个很大的分支,如cookie安全,flash安全,dom渲染(dom型xss),字符集,跨站(csrf),钓鱼,信任等。
Cookie安全方面,如果过分相信cookie且没有进行其他处理,那么可能造成csrf。
字符集可能造成宽字节问题,如逃逸特殊符号

信任方面,实际上安全的攻防都是以信任为基础,如同源策略,实际利用中有:
1.   A站防护很高,但同服务器同文件系统下的B站因安全问题被入侵,那么如果文件权限没有配置好,则A站也会被成功拿下,因A与B过分信任,没有做好分离。
2.   A网站嵌入和B网站的javascript脚本,方式是以<script>标签引用,实际也等于建立了信任关系,那么如果此脚本被黑客动了手脚,那么A站也会被危及。
另外,我认为社会工程学也应说一下,通过google hacking,SNS垂直搜索(人人网,Facebook等)和其他各种信息收集方式,这使得攻防的过程变成了一个斗智斗勇的过程,在成功的入侵中,社工可能扮演着非常重要的角色。

总结起来主要分为三大类:XSS/CSRF/界面操作劫持
Xss:现在xss漏洞被人认为是没有什么危害的漏洞,包括大部分src已经不收反射型xss漏洞了(利用困难,chrome等浏览器也会拦截掉),但谈论前端安全,xss就是个很大的问题,如果是一个半年一年不更新的站点,盗取管理员cookie当然概率很低。所以我把xss漏洞单独拿出来说,是因为他必须结合相应的场景。在对html,js脚本使用不规范(html有容错机制,即忘记写一个标签或者一个符号,也能正常运行),或者没有做好过滤的情况下,可能造成xss漏洞的产生,如留言板页面,提交js代码,没有过滤或者转义特殊字符,导致提交成功,数据被存入了数据库
csrf :跨站点的请求,且请求是伪造的。A用户在登录A站的情况下登录了危险网站B,B站中有构造的请求A站的恶意代码,那么A用户在不知情的情况下就操作了网站A。在防御方面:
1.验证referer。2.使用验证码。3.加入token。4.限制session生命周期。但弊端也很明显。
有些请求可能就不带referer,那么没有办法验证。验证码会降低用户体验。Token随机性如果不够好可能会被猜解,或者token本身因某种方式泄露,此外,在大型的服务中需要一台token生成及校验的专用服务器,需要更改所有表单添加的字段,时间和复杂度也是个重要的问题。当然限制session生命周期也是缓解的方式,不能有效解决csrf。
某位大佬提出了下面这样的方法:
原理与token差不多:当表单提交时,用JavaScript在本域添加一个临时的Cookie字段,并将过期时间设为1秒之后在提交,服务端校验有这个字段即放行,没有则认为是CSRF攻击。

界面操作劫持:点击劫持、拖放劫持、触屏劫持。
点击大体是在用户可见可操作的界面上,覆盖一个不可见的框,即某控件之上覆盖一个iframe,且该iframe透明度为0,例子就比较多了...大多不可描述的网站中,点击某个按钮或者选项会调至另一个网站..这是个非常可怕的操作
触屏劫持也很可怕,试想一下,用户想查询某个超市离自己多远,点击查询后,实际上进行了一次网银交易操作...移动设备上的web网页设计大体理论与PC上相通,又说到了某些不可描述的网站,用户在浏览的过程中,点击后并没有跳转至想去的页面,而是弹出或者直接跳转至另一个站点。

4、列举一些渗透测试的常用工具,并简述其应用场景,和使用案例
解:
Burpsuite:针对请求进行抓包改包等操作,可以对前端参数进行进一步测试,如测试逻辑漏洞,爆破弱口令,寻找页面传参点等

Sqlmap:可以检测或者注入后台数据库为关系型数据库的站点,还可以访问文件系统,使用-file-read “xxx.txt”来读取目标目录下xxx.txt文件,更可以使用-os-cmd执行操作系统命令,-os-shell使用交互的操作系统shell,功能十分强大,其丰富的tamper也为绕过一些waf提供了很大的帮助。当然大部分情况下还是要手动判断waf规则的。

御剑:很优秀的目标扫描工具,在一次真实的场景中,我通过御剑扫描得到了对方的数据库文件,看到了数据库ip,port及账号口令,直接连接数据库后,所有我想要的已经呈现在我面前了。

Mimikatz:抓取当前系统中所有用户的明文密码。在提权的时候可能会使用
Owasp Zap/AWVS:漏洞扫描工具,我个人是不怎么喜欢用漏扫的,在不摸清楚对方情况的条件上直接使用漏扫,很可能导致ip被ban,而且参加过一些众测的项目,很多白帽子使用漏扫对目标展开疯狂的扫描,导致目标连正常访问都有问题,有点反感这些操作。但漏扫工具在一定程度上也会让我们大概了解目标的信息,如路径,可能存在的漏洞等,以免我们遗漏了某些点

Namp/masscan:目标开放服务扫描,弱点端口扫描,操作系统辨识,属于信息收集。如-p指定端口,-sV识别服务版本,-O识别操作系统,-sS(不建立三次握手的隐式扫描),sTTCP扫描,信息相对准确),对于禁ping的站点可以用-Pn等,另外nmap强大的脚本也可以提供多种方式,如dos(可能造成拒绝服务),exploit(检测安全漏洞)。相比较来说,masscan在扫描上速度更快,效果更好一些(个人认为),所以可以两者配合使用,masscan快速扫出端口,nmap通过这些端口再去识别服务。


5、sql注入如何getshell
解:比如mysql的select into dumpfile,比如sqlserver的xp_cmdshell之类的。这个问题面试官没有深入问,但是可以作为我面试结束后的一个深入了解方向


6、针对内网渗透,说出自己的见解
解:内网渗透的本质就是信息收集,内网的防御措施相对于外网来说较低,将更多的精力放在管理员密码使用习惯以及弱口令的探测上,万不得已的情况下使用嗅探。另外还有端口反弹,寻找域控服务器等方式。通过域成员主机,定位出域控制器IP及域管理员账号,利用域成员主机作为跳板,扩大渗透范围,利用域管理员可以登陆域中任何成员主机的特性,定位出域管理员登陆过的主机IP,设法从域成员主机内存中dump出域管理员密码,进而拿下域控制器、渗透整个内网。域渗透过程如果发现域管理员的密码已经修改,可尝试利用krbtgt用户的历史hash来进行票据传递攻击,krbtgt用户的密码一般不会有人去修改之类的云云~

工具利用msf等。可以用arp -a去查看附近存活主机,本机是否有以管理员身份运行的服务,如果有,可以用mimikatz获取管理员密码。很多域内都是多台主机使用相同的密码,而且管理员安装多台机器的时候可能使用一个镜像,补丁方面也可能都没有打。可以看看内网是否有OA之类的系统,去做测试。内网某些ftp工具,某些登录的邮箱之类的,是不是设置了保存密码,是否有没打补丁的漏洞可以利用。

然后linux及windows的命令要熟悉。最好要会点shell和bat,python等一些语言,因为有可能对方的内网环境根本没有可利用的工具或者功能,但linux下shell和python一般都是有的,可以利用这个自己做一个工具。反正把我自己能想到的都说出来了。


7、问:了解http协议吗?有什么字段?

     答:host,referer,orgin,content-type,accept-lnguage,accept-encoding,connection,if-modified-since,cookie,xff,user-agent,请求方法。

     问:xff和referer的区别是什么?

     答:referer是你想要访问的url,xff是你从哪里来,显示ip地址,referer也是显示从哪里来,显示url。


8、问:了解过xxe吗?

     答:嗯,就是服务器开启了xml传输的函数,在POST表单页面可以构造playload进行绕过,进而造成命令执行,源码读取,文件信息泄露等。


9、问:实际上有过渗透的经历吗?

     答:有的,学校老师让我拿下学校XX服务器,,,,

     问:在这个过程你都用了什么方法?

     答:信息搜集,搜集目标的一切信息,然后上网搜相应漏洞的payload和exp等,web端再用工具扫,手工查看web端各个页面的功能,找找逻辑漏洞等。

     问:你觉得这次渗透的难点是什么?

     答:信息搜集查找网上相应漏洞的exp。


10、问:了解逆向吗,对二进制熟悉吗?

       答:了解不多,大概知道逆向的原理,学过汇编,做过几道简单的ctf题。



11、问:宽字节注入的原理是什么?

       答:就是编码格式的逃逸,利用不同编码格式占用的字节宽度不同,构造payload使得单引号或其他符号的逃逸,导致语句的闭合,然后就可以构造payload查询数据库的数据了。


12、问:了解什么编程语言,自己写过工具吗?

      答:学过c,python,PHP,简单得脚本会写,不过大型一点的工具的话都是从git上下载下来,改改自己能用的。



13、接着就是三面了,放轻松点和hr聊一下人生啊,规划啊什么的。。。



3

面试的感受

体验总体来说,大部分面试官技术都不错,在面试过程中让我学到了很多。也有部分面试官让我真的很心烦,我说啥他也听不懂,问的问题也莫名其妙。


4

给大家的建议

关于建议主要是以下几条

1、不要慌,自信;之所以写在第一条是因为这个是最重要的,我第一次面试和最后一次面试相差很多。第一次就像一个铁憨憨。

2、面试是双向的,公司在选择你的同时,你也在选择公司,少点套路,多点真诚。

3、自己不会的也可以写到简历里,前提是,你能在面试前把你写的东西都搞懂,至少能说得出来。

4、信息收集,去了解你要面试的公司。他们主要做什么,对安全的需求是啥样的,你能想到的都了解一下。

5、学院的靶场和课程必须搞懂,不要偷工减料。

6、面试官问你,你还有什么问题要问我的时候,不要耍你的小聪明。

7、掌控的课程全部问心无愧的前提下,尽可能相信自己吧





从零到进阶的黑客教程


同时每节课都附带

合理合法用来实战训练入侵的

模拟靶场和黑客工具课件

深圳深信服科技面试全过程#附面试题

长按识别二维码

即可限时免费报名课程




腾讯认证/掌控安全学



掌控安全学院是腾讯课堂唯一一家专注培养高薪高水平网络安全人才的线上机构。


是腾讯课堂所有安全机构中唯一一家具有军民融合企业背景的安全学院。


是唯一一家有真正有能力且所有技能课时配套了安全实战环境的安全机构。


是唯一一家开展课外活动:老师带着学员挖掘漏洞并提交SRC平台的安全机构。


全网学员SRC上榜率最高的安全机构!

原文始发于微信公众号(掌控安全EDU):深圳深信服科技面试全过程#附面试题

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2022年10月5日22:29:19
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   深圳深信服科技面试全过程#附面试题http://cn-sec.com/archives/946674.html

发表评论

匿名网友 填写信息