《网络安全面试总结》--大厂面试题目及经验

持续更新

整理

小鹏汽车-安全工程师
  1. 自我介绍
  2. 有没有挖过src?
  3. 平时web渗透怎么学的,有实战吗?有过成功发现漏洞的经历吗?
  4. 做web渗透时接触过哪些工具
  5. xxe漏洞是什么?ssrf是什么?
  6. 打ctf的时候负责什么方向的题
  7. 为什么要搞信息安全,对安全这一块有多大的兴趣,以后会不会转行,还是打算一直从事安全方面工作
  8. 自己平时怎么学安全的,如果让你做一个新的方向(app安全),会投入多少时间去学习,还是说有自己想做的方向
  9. 聊一聊代码审计的流程
  10. 平时是怎么做代码审计的
  11. 有没有审计过开源框架、CMS?
  12. 怎么判断一个数据库是mysql还是oracle的?
  13. sql注入的种类,利用方式?
  14. 聊一聊sql注入的原理及防御思路
  15. 做开发的时候用的是什么语言
  16. 做java开发的时候用过什么框架,能不能做java安全开发
  17. 有没有做过安卓开发
  18. 有没有用python写过工具?
  19. msf利用的是哪个漏洞,有没有成功反弹?
  20. 护网的时候主要做了些什么,聊一聊对安全产品的理解
  21. 公司现在需要做app安全的人,现在要你做的话,你会去学吗,或者说感兴趣吗,还是说有别的想做的,不想做app安全,能投入多少时间去学
  22. 内网渗透了解吗?聊一聊内网渗透的思路
阿里巴巴-阿里云安全

一面

  1. 自我介绍一下,讲一下课题和课外实践?
  2. WAF管理平台后端API有做过压力测试吗?
  3. 你现在的论文已经发表了吗?
  4. 你的毕业论文是什么?
  5. 在字节跳动训练营最大的收获是什么?
  6. 在研究生期间或日常生活中有什么可以分享的有意义的事情?
  7. 快排的时间复杂度是多少?
    • 最快的情况下是多少?是什么样的情况?
    • 最慢的情况下是多少?是什么样的情况?
  8. 哈希冲突有哪些解决办法?
  9. 编程题(easy)

二面

  1. 自我介绍一下?
  2. 我们这里是密码管理服务,密码这块你了解多少呢?
  3. 你未来计划更偏向于安全研究还是安全研发?
  4. 你对云上PKI的安全,身份认证的能力感兴趣吗?
  5. 介绍一下字节跳动训练营做了什么?
    • Sql注入的原理和防御方案有哪些?
    • WAF防护SQL注入的原理是什么?
    • 本次训练营中,怎么分工协作的?你的角色是什么?你的贡献是什么?有没有提升效率的可能?
    • 漏洞挖掘是纯工具还是有一些手工的?
    • WAF管理平台后端API有哪些功能?
    • WAF的增删改查数据量大吗?
    • Redis解决了什么问题?
    • 热点数据怎么保证redis和db中的一致?
    • 用户登录认证是怎么做的?
    • Token的安全怎么保护?
    • Token的内容该如何设计?
    • 怎么保证数据不被篡改呢?
  6. SDN漏洞挖掘的思路?
    • 漏洞挖掘有挖掘出RCE漏洞吗?
    • 对栈溢出、堆溢出有研究吗?
  7. 说一下https协议的过程?
    • 随机数一般有几个?
    • 如果有一个的话会如何?
  8. 对C++或C熟悉吗?
  9. 哈希表的原理和冲突解决办法?(和一面重复了)
  10. Mysql查询快的原因?
    • 事务的四大特性,mysql隔离级别?
    • 解释一下乐观锁和悲观锁?
  11. 多并发编程有涉及过吗?
    • 读写锁和互斥锁/排他锁用过吗?有什么区别?为什么会用?
  12. 有一项软件著作权,做的什么软件?
  13. 编程题(medium)

三面(交叉面)

  1. 字节跳动训练营越权问题解决办法?
    • 防火墙都是自己写的规则去防御吗?
    • 任务都是一样,你们得了第一,你们团队做的好的地方在哪里?
  2. SDN漏洞挖掘项目,你能列举一个比较有技术含量的漏洞吗?漏洞原理和挖掘过程?
  3. Python2和Python3的区别?
  • Xrange和range返回的是什么?
  1. 数据库索引的作用?mysql索引的变化?
  2. 数据库弱口令,登进去后如何提权?
  3. 你自己写项目的时候,怎么进行的 SQL注入防御?
  4. 怎么进行CSRF防御?
  • Token加密什么东西?
  • 校验什么?
  • Token为什么需要加密?
  • 使用明文随机数可以吗?
  1. 怎么防重放攻击 ?
  2. Docker有哪些安全上的好处?
  3. 个人发展方向?
  4. 当前在哪里日常实习?
  5. 实习多久了?为什么想来阿里?
58同城-安全工程师
  1. 你先做个自我介绍吧

  2. 假如说有个SQL注入如下

    select * from user where userid = {};
    
    1. response里面没有返回内容
    2. 1s就超时了,直接返回404页面

    这种情况下如何注入?

  3. 比如说我写一个安全SDK

    1. sql注入的修复, 怎么写(伪代码)

      答:我倾向于使用预编译的方式

    2. 但是预编译的话, 研发可能不会用怎么办呢, 就是说如果他觉得改起来太麻烦了能不能更方便一点. 因为预编译的话, 我每条SQL每条查询都得去改.

      答:那设计一个白名单怎么样呢

    3. 那你大概写一下怎样设计一个白名单. 你可以分场景, 比如说什么场景什么场景的SQL注入, 或者是参数里面应该做什么操作

    4. xss的修复, 怎么写(伪代码) 答: 用实体化转义

    5. 但是我们有一个场景啊, 你看我们上传简历这里, 有时候会支持上传html的简历, 对吧. 他本身业务就需要用到html, 如果用html实体化转义的话, 他全都会被转义, 那这样的话业务就崩了嘛, 对不对. 那这种情况下我们要怎么样去写一个xss的过滤, 或者是说转义, 去解决这个类似于简历这个场景. 你可以想一想, 写不出来代码也没关系.

      答:白名单限制, 黑名单过滤.

    6. 其实我们自己是这样做的, 对于这种情况, 我们第一是会做一个html标签的白名单, 第二是事件的白名单. 黑名单我们就不搞了.

    7. rce的修复, 怎么写(伪代码)(java或者python的命令执行) 答: 白名单限制, 只允许需要的函数. 但RCE的话我感觉在业务场景当中, 一般来说也不是很容易出现 面试官: 欸, 我们就出现了很多. 尤其是运维部门.

      我: 我打CTF比较多, 我了解的RCE都是PHP方面的. 比如说system, popen之类的. 一般来说都是直接做过滤

    8. 那PHP中这些函数全部被黑名单了, 你还有什么方法

      答: 字符串拼接 $a=p.h.p.i.n.f.o()

    9. 你有没有用过php里面的反引号啊

      答: 还有用 chr() 函数来绕过

    10. 面试官: 编码是吧

    11. xxe的修复, 怎么写(伪代码) 答: 对XXE来说, 我只了解他的攻击方式, 对他的防御不是很了解. 攻击方式就是做XML的外部实体化注入. 一个攻击模板, 可以读文件, 可以做命令执行

    12. XXE怎么做命令执行呢, 就拿php来说, XXE怎么做命令执行

    13. XXE这个命令执行是要他的服务端本身支持某些特殊的协议, 一般来说是不行的

  4. 了解过自动化代码审计的工具吗, 类似于fortify这种

    答: 我只用过那个一个比较老的那个, 我想不起来了(指seay)

  5. 没关系, 那你有没有了解过他的一些原理, 大概怎么做的

    我: 他原理一般都是通过匹配一些特殊函数, 去定位可能出现漏洞的函数的位置

  6. 但这种的话他误报很高欸, 就像我这种RCE的话, 你直接匹配的话他很多都是误报了, 很多他都不是web思路的

    我: 还有一种是, 给他加一些自定义规则

  7. 那有没有更好的办法呢, 误报太多了我们没办法接受啊

    我: 我有一个想法就是, 他自己匹配了之后, 能不能从前端从一个黑盒的层面再去验证一遍

  8. 那黑盒验证, 我就有需求是, 首先我得知道, 首先我php里面我这个函数到底是哪个入口传进来的, 对吧. 但这个有可能经过了层层调用, 甚至有可能是include()这种, 那这种的话, 对于我来说 , 我并不知道他影响到了哪一些入口, 这种情况怎么办呢

  9. 你们学校有学编译原理吗

  10. 其实我觉得安全专业还是要学一下编译原理

  11. 有没有搞过linux的这种后渗透相关的

    1. 面试官: 比如这个linux被我攻陷了, 我想去拿到更多的信息, 比如说一些横向的信息, 那种有没有搞过 我: 这种不是很了解, 但windows的会一点
    2. 面试官: 那你可以简单讲一下, 比如你先攻陷一台windows的机器, 然后我想在这个windows的域内去做一些横向移动, 我想把这个windows的域的权限给拿到, 这种你该怎么做 我: 通过票据伪造, 白银票据和黄金票据 面试官: 你这个票据伪造要怎么做呢 我: 一般用mimikatz就可以了吧
    3. 面试官: 你mimikatz抓取的是内存里面的密码和一些他的票据, 那我如果本身是低权限的呢, 就我本身抓不了密码, 或者我抓到的用户密码并不是域账号的, 是一个低权限账号呢. 因为大部分渗透进来都是个应用, 应用他可能并没有域权限 我: 从低权限往上提
    4. 面试官: 那你一般会怎么提权 我: 一般windows的漏洞吧 面试官: 那现在就用这个windows系统的提权, 我现在就一个webshell, 那我怎么样去提权
    5. 面试官: 你可以这样嘛, 你上传一个提权的脚本或者exe嘛, 你webshell去跑这个exe, 他就把这个web应用权限提权了
  12. 那你最后有什么想问我的吗

360-安全工程师
  1. 自我介绍
  2. WAF及其绕过方式
  3. IPS/IDS/HIDS
  4. 云安全
  5. 怎么绕过安骑士/安全狗等
  6. Gopher扩展攻击面
  7. Struct2漏洞
  8. UDF提权
  9. DOM XSS
  10. 数据库提权
  11. 怎么打Redis
  12. 内网渗透
  13. 容器安全
  14. k8s docker逃逸
  15. linux、windows命令:过滤文件、查看进程环境变量
  16. 站库分离怎么拿webshell
360

红队&&企业蓝军方向

以下都是同一场面试提的问题,两个面试官,一个代审一个红队,时长接近两小时

  1. shiro 如何绕 waf
  2. weblogic 如果在打站的时候,一旦遇到了 waf,第一个 payload 发过去,直接被拦截了, ip 也被 ban 了,如何进行下一步操作
  3. jboss 反序列化原理
  4. weblogic 反序列化原理,随便说一个漏洞,然后说触发原理
  5. fastjson 怎么判断是不是有漏洞,原理是什么
  6. fastjson 判断漏洞回显是怎么判断的,是用 dns 做回显还是其他的协议做,为什么
  7. fastjson 高版本,无回显的情况,如何进行绕过,为什么可以这样绕过
  8. 代码审计,做过哪些,主流的代码审计 java 框架请简述
  9. 泛微,致远,用友这三套系统代码框架简述
  10. 泛微的前台漏洞触发和后台漏洞触发,如何通用性的挖泛微的洞,泛微能反序列化吗, 怎么挖
  11. php 代码审计如果审计到了一个文件下载漏洞,如何深入的去利用?
  12. php 里面的 disable_function 如何去进行绕过,为什么可以绕过,原理是什么
  13. 假如说,在攻防的时候,控下来一台机器,但是只是一台云主机,没有连接内网,然后 也没有云内网,请问怎么深入的对这台云主机进行利用?
  14. redis 怎么去做攻击,主从复制利用条件,为什么主从复制可以做到拿 shell,原理是什 么,主从复制会影响业务吗,主从复制的原理是什么?
  15. becl 利用链使用条件,原理,代码跟过底层没有,怎么调用的?
  16. 假如我攻击了一台 17010 的机器,然后机器被打重启了,然后重启成功后,机器又打成 功了,但是无法抓到密码,为什么无法抓到,这种情况怎么解决这个问题?
  17. 内网我现在在域外有一台工作组机器的权限,但是没有域用户,横向也不能通过漏洞打 到一台域用户的权限,但是我知道一定有域,请问这种情况怎么进入域中找到域控?
  18. jboss 反序列化漏洞原理
  19. 内网拿到了一台 mssql 机器的权限,但是主机上有 360,一开 xpcmdshell 就被拦截了, 执行命令的权限都没有,这种情况怎么进行绕过。
  20. 什么是 mssql 的存储过程,本质是什么?为什么存储过程可以执行命令?
  21. 如果想通过 mssql 上传文件,需要开启哪个存储过程的权限?
  22. 内网文件 exe 落地怎么去做,用什么命令去执行来落地,如果目标主机不出网怎么办?
  23. 内网域渗透中,利用 ntlm relay 配合 adcs 这个漏洞的情况,需要什么利用条件,responder 这台主机开在哪台机器上,为什么,同时为什么 adcs 这个漏洞能获取域管理员权限,原理 是什么
  24. 内网域渗透中,最新出的 CVE-2022-26923 ADCS 权限提升漏洞需要什么利用条件,原理 是什么,相比原来的 ESC8 漏洞有什么利用优势?
  25. 内网渗透中,如果拿到了一套 vcenter 的权限,如何去进一步深入利用?db 文件如何解 密?原理是什么?
  26. vcenter 机器拿到管理员密码了,也登录进去了,但是存在一个问题,就是内部有些机 器锁屏了,需要输入密码,这个时候怎么去利用?
  27. 内网权限维持的时候,360 开启了晶核模式,怎么去尝试权限维持?计划任务被拦截了 怎么办?
  28. mssql 除了 xpcmdshell,还有什么执行系统命令的方式?需要什么权限才可以执行?
  29. 如果 net group “Domain Admins” /domain 这条命令,查询域内管理员,没法查到,那么 可能出现了什么问题?怎么解决
  30. 查询域内管理员的这条命令的本质究竟是去哪里查,为什么输入了之后就可以查到?
  31. 免杀中,如何去过国内的杀软,杀软究竟在杀什么?那么国外的杀软比如卡巴斯基为什 么同样的方法过不了呢?
  32. 免杀中,分离免杀和单体免杀有啥区别,为什么要分离,本质是什么?
  33. 打点常用什么漏洞,请简述
  34. 内网横向中,是直接进去拿一台机器的权限直接开扫,还是有别的方法?
  35. 钓鱼用什么来钓?文案思路?如何判断目标单位的机器是哪种协议出网?是只做一套来钓鱼还是做几套来钓鱼?如何提高钓鱼成功率?
  36. 钓鱼上线的主机,如何进行利用?背景是只发现了一个域用户,但是也抓不到密码,但是有域
快手-安全实习生

一面

  1. 自我介绍
  2. 问项目
  3. 针对项目问了很多详细的问题,不便透露,通用问题如下:
  4. 做项目的时候有没有遇到什么问题,怎么解决
  5. 做项目学到了什么东西
  6. 项目中有没有什么地方自己做过优化
  7. 有没有对网站做过渗透测试
  8. Linux操作熟悉吗,怎么看进程PID
  9. 用过什么数据库,答:sqlite,mongodb,面试官好像不太了解没咋问
  10. 为什么用mongodb
  11. 了解ES吗(Elasticsearch)
  12. HTTPS建立过程
  13. python怎么管理内存
  14. 深拷贝和浅拷贝区别
  15. python多进程、多线程、协程有用到吗,都在什么地方用到
  16. python可以实现真正的多线程吗
  17. 代码题:ip排序

(转成元组排序就行了,记得把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
  1. 写Web API的时候怎么防止SQL注入
  2. 怎么防XSS
  3. 了解越权漏洞么,有没有挖过越权漏洞
  4. 有没有什么比较擅长的我还没问到的

二面

  1. 问项目

  2. 项目哪一块时间花的比较多

  3. 怎么溯源攻击

  4. 举一个溯源攻击的例子

  5. 怎么检测webshell

  6. sql注入在mysql和sqlserver中有什么区别

  7. 想找安全开发的岗位还是安全研究的岗位

  8. 代码题:手机九宫格键盘,输入数字,输出所有的字母组合

    如输入23,输出[‘ad’,‘ae’,‘af’,‘bd’,‘be’,‘bf’,‘cd’,‘ce’,‘cf’]

  9. 讲一下DNS协议的作用、解析过程

  10. DNS协议的安全问题

  11. 实习时间

快手-安全工程师
  1. 自我介绍
  2. 介绍项目
  3. Linux提权方式,脏牛提权原理
  4. 公司中了勒索病毒怎么办、分哪几步,勒索病毒原理,勒索病毒是怎么传播的
  5. 如何绕过waf
  6. SQL注入的种类,怎么防御SQL注入,业务层面防止SQL注入的方法
  7. 哪些情况SQL预编译无效
  8. 怎么判断服务器是Windows还是Linux,能不能用ping命令判断
  9. 了解的安全论坛有哪些
  10. 平时有什么兴趣爱好
  11. 学习过程中遇到的最大的挑战或困难
  12. 反问
快手-安全实习生

一面

  1. 自我介绍
  2. 问项目
  3. 针对项目问了很多详细的问题,不便透露,通用问题如下:
  4. 做项目的时候有没有遇到什么问题,怎么解决
  5. 做项目学到了什么东西
  6. 项目中有没有什么地方自己做过优化
  7. 有没有对网站做过渗透测试
  8. Linux操作熟悉吗,怎么看进程PID
  9. 用过什么数据库,答:sqlite,mongodb,面试官好像不太了解没咋问
  10. 为什么用mongodb
  11. 了解ES吗(Elasticsearch)
  12. HTTPS建立过程
  13. python怎么管理内存
  14. 深拷贝和浅拷贝区别
  15. python多进程、多线程、协程有用到吗,都在什么地方用到
  16. python可以实现真正的多线程吗
  17. 代码题:ip排序(转成元组排序就行了,记得把str转成int,不然192会比50大)
  18. 写Web API的时候怎么防止SQL注入
  19. 怎么防XSS
  20. 了解越权漏洞么,有没有挖过越权漏洞
  21. 有没有什么比较擅长的我还没问到的

二面

  1. 问项目
  2. 项目哪一块时间花的比较多
  3. 怎么溯源攻击
  4. 举一个溯源攻击的例子
  5. 怎么检测webshell
  6. sql注入在mysql和sqlserver中有什么区别
  7. 想找安全开发的岗位还是安全研究的岗位
  8. 代码题:手机九宫格键盘,输入数字,输出所有的字母组合
  9. 如输入23,输出[‘ad’,‘ae’,‘af’,‘bd’,‘be’,‘bf’,‘cd’,‘ce’,‘cf’]
  10. (我就模拟做)
  11. 讲一下DNS协议的作用、解析过程
  12. DNS协议的安全问题
  13. 实习时间
快手-安全工程师

技术类:

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、反问

你可能感兴趣的:(web安全,面试,安全)