网络安全大厂面试题汇总

news2024/11/29 8:58:16
 注:本套面试题,已整理成pdf文档,但内容还在持续更新中,因为无论如何都不可能覆盖所有的面试问题,更多的还是希望由点达面,查漏补缺。

某大厂一面整理

1、防范常见的 Web 攻击
2、重要协议分布层
3、arp协议的工作原理
4、rip协议是什么?rip的工作原理
5、什么是RARP?工作原理
6、OSPF协议?OSPF的工作原理
7、TCP与UDP区别总结
8、什么是三次握手四次挥手?
9、tcp为什么要三次握手?
10、dns是什么?dns的工作原理
11、一次完整的HTTP请求过程
12、Cookies和session区别
13、GET 和 POST 的区别
14、HTTPS和HTTP的区别
15、session 的工作原理?
16、http长连接和短连接的区别
17、OSI 的七层模型都有哪些?
18、session 的工作原理?什么是TCP粘包/拆包?发生原因?解决方案
19、TCP如何保证可靠传输?
20、URI和URL的区别
21、什么是SSL ?
22、https是如何保证数据传输的安全(SSL是怎么工作保证安全的)
23、TCP对应的应用层协议,UDP对应的应用层协议
24、常见的状态码有哪些?

二面整理:


1、平时测试是怎么做的(给个目标、给个域名这类嘛)
2、一个登录框大概怎么测试
3、进入后台大概干什么
4、文件上传绕过
5、拿个一个shell一般会怎么做
6、拿到一个shell怎么进行信息收集
7、nmap可以直接扫内网嘛 或者说 nmap怎么扫内网
8、你感觉cs扫内网的速度怎么样呢
9、拿到代理怎么去找靶标或者网关或者跨网段这个问题
10、对于内网的啥啥啥认证或者域控有了解过嘛
11、如何拿域控
12、如何通过cdn找真实IP
13、反序列化漏洞成因利用
14、反序列化漏洞利用链
15、平时项目里面遇到的比较多的是哪种漏洞
16、越权漏洞为什么存在
17、逻辑漏洞大致可以分为几类
18、你感觉自己擅长什么点(熟悉的漏洞)
19、注入测试点,注入漏洞都有哪些类型呢,攻击支持的方式,延迟注入的函数有哪些
20、使用sqlmap遇到封ip的情况怎么处理除了用代理
21、宽字节注入需要什么前提,成因
22、mysql数据库拿shell有几种方法
23、sqlmap是通过什么方式拿的shell
24、csrf介绍一下
25、ssrf漏洞测试点都有哪些具体说一下
26、本地文件包含和远程文件包含的区别,本地文件包含可以进行干什么
非知名大公司的问题
1.xss攻击类型
2.xss常用语句
3.xss跟csrf的区别
4.csrf中文名,举个csrf的例子
5.xss能用来做什么
6.防范sql,xss的方法
7.解释一下PDO预处理
8.绝对防御sql注入的方法
9.什么是垂直越权?什么是水平越权?
10.有没有复现过漏洞 比如cve这种的
11.你都用过什么工具
12.提权有没有了解过
13.编程这块擅长的语言
14.python用过什么高级的库
15.爬虫你会用什么库去进行爬
16.写爬虫会遇到什么问题,比如必须登录账号才能进行爬,说个大概
17.waf的拦截机制
18.waf拦截机制中的拦截规则是什么
19.SQL注入绕过waf

常见面试题及答案

1. 简述一下目前主流编程语言的相关漏洞

答:

  • 这个题的相关思路就是聊一聊目前主流语言的漏洞,你可以从两个方面进行阐述:
      1. Java 、Python、PHP(漏洞大户)的相关漏洞,其实也是那几个;
      2. 聊聊你知道的框架 - 比如Apache基金会框架、PHPAdmin、Python主流Web架构 - jinjia2、Django等;
    • Python的漏洞:
      • 注入:Django 2022新的SQL注入漏洞,即使Django采用参数化查询和ORM的防范SQL注入也存在字典注入的方式,2022最新的CVE漏洞利用QuerySet.annotate()、aggregate()和extra()方法进行注入;
      • XML: XML的读取会造成DoS攻击;XXE 攻击的利用;
      • assert 语句: 不要使用 assert 语句来防止用户访问特定代码段。默认情况下,Python 以 debug 为 true 来执行脚本,但在真实环境中,通常使用优化运行,这将会跳过 assert 语句并直接转到安全代码,而不管用户是否是 is_admin 。
      • site-package: 伪造官方库进行代码注入和代码伪造;
    • Java漏洞:
      • Java最著名的就是反序列化漏洞,反序列化漏洞出现在WebLogic、JBoss等常见Web容器;
      • Structs2就是任意代码执行
      • Log4j2 也是很火的漏洞
      • Shiro 的身份验证绕过、远程代码执行;
    • PHP漏洞:一抓一大把
      • ThinlkPHP的远程代码执行
      • PHP的反序列化
      • ThinkPHP文件包含
      • PHP不安全函数: chroot、exec、一句话木马、proc_open等

2.如何发现目前在运行的相关系统正在遭受DDoS攻击?(10分)

答:

  • 问题背景:

    • 首先现在大多数企业已经不自己购买抗DoS的相关防御设备了,或者只是简单部署DoS流量防御设备系统,因为如果企业遭受到DoS攻击指望那几台互联网出口的抗D设备已经无法满足需求,如果互联网出入口出现高峰流量就会直接将设备打挂,从而设备流量被绕过,还是无法做到流量清洗和DoS的相关防御;
    • 本身这种攻击就没有有效的防御方法,最好的方法是在运营商上就做好流量清洗和流量黑洞,才能更有效的防范,因此最为省事和有效的办法是购买运营商的流量清洗服务;
    • CDN其实也是一个很有效的防范DoS攻击的途经,也是成本低廉的解决问题的方式;
  • 如何发现系统正在遭受攻击?

    • 首先,可以在现网中部署流量监视系统或者流量审计系统,从而对业务流量进行监视,进行业务正常流量和IP地址的追踪和观察,形成自身的业务流量安全相关模型,明确内网服务器或者自身应用系统对于服务流量的上限,设立相关的警戒阈值,超过该阈值需要考虑是否遭受DoS攻击;

      • 利用分布式多核硬件技术,基于深度数据包检测技术(DPI)监测、分析网络流量数据,快速识别隐藏在背景流量中的攻击包,以实现精准的流量识别和清洗。恶意流量主要包括 DoS/DDoS 攻击、同步风暴(SYN Flood)、UDP 风暴(UDPFlood)、ICMP 风暴(ICMP Flood)、DNS 查询请求风暴(DNS Query Flood)、HTTP Get 风暴(HTTP Get Flood)、CC 攻击等网络攻击流量。
    • 其次,Linux服务器对于CC攻击和DoS攻击有自身的日志记录,dmesg 和 message 日志都会有相关的Flood的日志记录,这个日志的记录是由于:net.ipv4.tcp_max_syn_backlog 参数设置的,Linux也有其他参数来防止DoS攻击,主要思路是控制连接数;

      •  

        net.ipv4.tcp_max_syn_backlog = 4096 ``#表示SYN队列的长度,加大队列长度可以容纳更多等待连接的网络连接数 net.ipv4.tcp_syncookies = 1 ``#表示开启SYN Cookies功能。当出现SYN等待队列溢出时,启用cookies来处理,可防范少量SYN攻击,默认为0,表示关闭,1表示打开; net.ipv4.tcp_synack_retries = 2 ``#下面这两行表示定义SYN重试次数 net.ipv4.tcp_syn_retries = 2

         

        #提高TCP连接能力 net.ipv4.tcp_rmem = 32768 net.ipv4.tcp_wmem = 32768 net.ipv4.tcp_sack = 0 ``#打开tcp_sack功能,1表示"关闭",0表示"打开"

      • DDoS deflate 也是一个控制 netstat 和 iptables 有效的工具,通过 netstat 监测跟踪创建大量网络连接的IP地址,在检测到某个结点超过预设的限制时,该程序会通过APF或IPTABLES禁止或阻挡这些IP;

    • 一些框架,例如Apache的Web框架就记录了:access log 来记录访问;

    • 此外,可以检查Linux服务器的相关进程资源使用情况,通过 top命令查看监视系统进程的资源使用情况,对系统的资源使用进行监控,这里涉及到主机的监控的相关技术;或者通过 netstat 查看目前系统正在连接数;

      • netstat -npt | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n
    • 也可以直接抓取网络流量进行分析,使用的相关工具有:tcpdump 和 tshark 可以抓取网络流量进行分析;

3. 简述TLS的加密过程(10分)

答:

  • 首先必须明确,TLS目前的版本已经从1.0到1.3版本,目前比较流行的版本是1.2,TLS的运作的OSI模型在传输层,SSL/TLS综合运用了密码学中的对称密码,消息认证码,公钥密码,数字签名,伪随机数生成器等,可以说是密码学中的集大成者。

    • 握手协议;
      • 握手协议负责在客户端和服务器端商定密码算法和共享密钥,包括证书认证,是4个协议中最最复杂的部分。
    • 密码规格变更协议;
      • 密码规格变更协议负责向通信对象传达变更密码方式的信号
    • 警告协议;
      • 警告协议负责在发生错误的时候将错误传达给对方
    • 应用数据协议;
      • 应用数据协议负责将TLS承载的应用数据传达给通信对象的协议。
    • TLS记录协议;
  • TLS加密原理

    • TCP建立了两端的连接;建立在TCP连接的基础上,TLS也是通过几次握手来保证应用层的数据安全传输;

    • 要保证数据的安全,就要对两端的传输的报文进行加密,且要防止被中间人攻击所破解。

    • TLS使用非对称加密的方式进行加密,当然这种加密的方式带来的问题就是:非常耗时,加密传输数据会影响效率,这一点非常关键;

    • TLS的秘钥交换规则是:

      • 服务端生成非对称秘钥对,私钥自己保存,将公钥明文传输给客户端;
      • 客户端自己生成一个对称秘钥,再将对称秘钥通过公钥加密,通过加密后的秘钥传给服务端,服务端通过自己保存的私钥进行解密,获得客户端指定的对称秘钥;
      • 当前,这种交换密钥的方式也有一个问题,就是明文传输的公钥可能存在被篡改的问题,这个时候必须引出数字证书和CA的概念;
    • TLS的CA和数字证书(一定要回答这个方面的问题):

      • 数字证书是一个包含了某个服务站点名字、公钥的文件,该文件由CA颁发,能够证明服务站点的真实性。
      • 服务端自己向CA证书申请数字证书,而CA机构怎么获得相关信任呢?这个时候涉及到根证书机构,世界上的根证书机构只有几个,因此CA机构向根CA机构进行申请,整个CA的信任链也是一个逐级链式认证的过程,在这里不再进行详述。
    • TLS使用的加密协议:

      • TLS_DHE_DSS_WITH_AES_256_CBC_SHA256"
      • DHE-DSS-AES256-SHA256
      • TLS_DHE_DSS_AES_256_CBC_SHA256
    • 最后详细的过程如下图:

      • 第一步: 客户端确定随机数,发送支持的密码算法放进到TLS协议中,供服务端进行选择;服务端存储客户端发送的随机数1;
      • 第二步:服务端确定与客户端的加密算法,并确定一个随机数2,以明文的方式发送给客户端,客户端保存随机数2;
      • 第三部:服务端发送数字证书(包括:公钥、签名、服务端主体信息)给服务端,此时服务器也确定了对应公钥的解密私钥;客户端收到后验证数字证书是否有效,并确定随机数3;
      • 第四步:客户端发送经过公钥加密的随机数3,服务端接收并使用保存的私钥进行解密;
      • 第五步:这下服务端和客户端都有了对称密钥生成的三个随机数:随机数1、随机数2、随机数3,使用DH(现在比较流行的是:ECDH算法)秘钥生成算法进行生成对称秘钥,使用对称秘钥进行加密数据进行传输;
     

    4. 如何提升非对称加密的运行效率(10分)

    答:

    • 可以采用独立的硬件加密模块的方式进行,非对称对称加密使用的算法需要考虑大数乘法、大因数分解、大数模运算,在计算机中简单的是加法和减法,因此乘法本身就是有损耗;其次,算法对于秘钥的存储需要空间和算法的复杂度,也会影响非对称加密的运行效率;
    • 使用量子计算和椭圆曲线算法来进行加密的方式,椭圆曲线算法涉及到几何学,因此比大数乘法、大因数分解、大数模运算的复杂度要较低;
     

    5. 请简述什么是企业安全运营 / 在企业内部中如何推行安全运营建设(20分 + 20分)

    答:

    • 这个问题真的非常***钻,需要很强的体系知识以及在企业中的实践经历,甚至对于企业的体系和组织架构有一定的了解,因此是一个20分的大题;必须要对目前的知识进行拆分;
    • 什么是企业的安全运营,安全运营的概念:
      • 安全运营被定义为:以资产为核心、以安全事件管理为关键流程,采用安全域的划分思想,建立一套实时的资产风险模型,协助管理员进行事件分析、风险分析、预警管理和应急响应处理的集中安全管理系统;
      • 安全运营以用户网络的最终安全为目的,实现运营过程上的统筹管理;
      • 安全风险不仅仅指的是目前的互联网技术、计算机科学技术,而是将企业整个体系的安全囊括在安全运营建设上,包括:合规安全(监管机构、行业规范)、运营风险管理(在实际运营中的风所有险,例如金融行业的风险控制部门,涉及到业务、产品等);
      • 安全运营本质上就是一个:以技术、流程和人有机结合的复杂系统过程,包含:
        • 产品、服务、运维、研发等,已有安全工具、安全服务产出的数据进行有效分析,持续输出价值,解决安全风险
      • 其模式:用“服务模式”开展合作,以“安全能力”进行赋能,以“安全数据”提供决策,以“运营能力”作为交付,以运营模式来发现问题、验证问题、分析问题、响应处理、解决问题并持续优化;
    • 企业安全运营存在的问题:
      • 底层的安全基础能力不成熟、安全目标不清晰、安全运营工具依赖第三方厂商、没有形成合理的安全体系、安全人才不择;
    • 企业安全运营的建设方向和大体内容:
      • 合规性建设和企业自身安全制度体系建设:
        • 首先对于任何企业,合规、合法是企业生存的生命线,必须要牢记这一点,相关安全规范可以参考GB/T或者ISO的相关概念和规章制度或者是已经公开的电子政务数据、安全标准、指导法规,有非常大的建设参考意义;
        • 开展等级保护和风险评估流程、合规检查和评估指导、合规整改内容;
        • 明确内部安全管理的要求、安全技术标准以及运营标准;
      • 企业组织架构建设方向:
        • 明确现状确立组织架构
      • 安全运营的服务体系建设方向:
        • 开展安全基线评估加固
          • 网络设备安全配置基线 - ARP污染等常见攻击方式
          • 安全设备安全配置基线
          • 操作系统安全配置基线
          • 数据库与中间件安全基线
          • 安全配置核查系统和检查脚本工具
        • 运维管理和安全审计
          • 安全运维管理:对身份、访问、权限控制;
          • 角色与权限 RBAC模型等
          • 安全审计日志的审计和分析:运维操作产生网络访问日志、安全运维日志、操作日志、产品运行日志、网络流量数据;这些日志中隐藏着网络攻击行为或者未发现的相关攻击行为,安全审计通过这些信息进行审计和发掘,发现相关攻击行为特征;
          • 服务交付成果审计
        • 系统上线检查
        • 安全事件分析
        • 重点时期的攻防演练;
        • 安全事件及态势监测、安全事件应急处理
          • 专家应急响应、安全事件检测、安全事件抑制、安全事件根除、安全事件恢复、安全事件总结;
        • 互联网资产发现
        • 应用失陷资产的检测
        • 安全策略优化服务
        • 安全产品的运行、保障、运维
        • 外部威胁的实时监测
        • 漏洞的全生命周期管理
        • 重大时期的安全检查
        • 重大安全事件的通告
      • 安全管理服务建设:
        • 管理组织建设:
          • 按照《网络安全法》等法律法规和等保要求,对各个业务系统进行信息安全设计以及安全运营中心建设;
          • 组织架构的建设需要通过审查;
          • 明确安全职责矩阵;
        • 安全制度管理:
          • 明确信息安全总方针、安全策略、说明机构安全工作的总体目标、范围、方针、原则;
          • 完善安全中的管理制度;
          • 建立日常管理操作制度、手册;
          • 定期对安全制度进行评审、
          • 成立信息安全领导小组和委员会,由信息安全小组统一负责并组织相关人员指定信息安全管理制度;
        • 安全流程管理:
          • 安全事件处理流程、安全风险内容评估流程、安全事件应急相应流程、安全事件溯源取证流程、安全设备上线叫个流程;
          • 变更流程
          • 流程发布过程
        • 人员安全管理
        • 安全建设管理
          • 系统定级、安全方案涉及、安全产品采购、自主软件开发、外包软件开发、工程实施、测试验收、系统交付、系统备案、等级测评、安全服务商选择;
        • 安全运维管理
          • 环境管理 - 设置管理区
          • 资产管理
          • 介质管理
          • 设备管理
          • 安全监控
          • 系统安全管理
          • 恶意代码防范
          • 供应链安全管理
          • 密码管理
          • 变更管理
          • 备份及恢复管理
          • 安全事件处置
          • 应急预案管理
        • 安全培训管理
        • 安全运营管理
          • 《网络安全法》和等保第三极进行分析,安全管理体系逐步建立和完善
          • 对角色/权限管理、安全制度管理、风险管理、控制执行、绩效评价、威胁评价、威胁情报、工作流程进行统一管理
        • 安全咨询管理

面试题

独家渠道收集京东、360、天融信等公司测试题!进大厂指日可待!

同时每个成长路线对应的板块都有配套的视频:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/572510.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

c++使用yaml -基于windows10

参考:Windows10下使用VS2017编译和使用yaml-cpp库_雪域迷影的博客-CSDN博客 1. 下载yaml-cpp 建议在github下载其最新的官方版本,不要在其他平台下载该工具软件,下载地址如下(其中的一个版本): Release …

理解深度可分离卷积

1、常规卷积 常规卷积中,连接的上一层一般具有多个通道(这里假设为n个通道),因此在做卷积时,一个滤波器(filter)必须具有n个卷积核(kernel)来与之对应。一个滤波器完成一…

Android自定义键盘(KeyboardView)

目录 1.场景:2.想法:3.开始实现:《一》 在res包下创建xml目录,Keyboard标签来定义键盘布局:《二》创建IKeyboardView类并继承KeyboardView类,设置键盘布局(数字和字母)《三》 处理自定义键盘按键的点击事件…

C++11:列表初始化、新增关键字和新增的默认成员函数

目录 一. 列表初始化 1.1 {}列表初始化的方法 1.2 列表初始化实现的原理 二. C11新增关键字 2.1 decltype -- 自动类型推断 2.2 nullptr -- 空指针 2.3 default -- 强制生成默认成员函数 2.4 delete -- 禁止生成默认成员函数 2.5 final -- 禁止类被继承/禁止虚函数被重…

自动化测试之PageObject设计模式

译文如下: PageObject 当您针对网页编写测试时,您需要参考该网页中的元素以单击链接并确定显示的内容。但是,如果您编写直接操作 HTML 元素的测试用例,则您的测试将无法应对 UI 中的频繁修改。PageObject对应于一个HTML网页、页…

5月26号软件资讯更新合集......

Windows Terminal 1.18 新功能预览:标签拖拽、上下文菜单... Windows Terminal 预览版已更新到 1.18 版本,带来多项实用内容,一起来看看这个版本的新东西: 标签撕裂(拖拽功能) Windows Terminal 已支持对…

安装Redis6

安装Redis 安装redis依赖 redis是基于C语言编写的,因此首选需要安装redis所需的gcc依赖 yum install -y gcc tcl 上传安装包并解压 我安装的是redis-6.2.6版本,并且放到了/usr/local/src目录下 - 进入/usr/local/src目录shellcd /usr/local/src解压 tar …

全球最受欢迎低代码平台排行榜出炉

低代码平台正在成为寻求快速有效地构建应用程序的企业的首选解决方案。这些平台减少了编码要求,使企业能够在降低成本的同时更快地完成应用程序开发项目。在本文中,将探索全球受欢迎的低代码平台排行榜。 该排名使用的标准包括易用性、成本效益、集成性、…

很后悔,才发现这个API管理神器

想必大家都注意到了,近半年国产API管理工具火了起来。这说明两个问题,第一,API管理的重要性被越来越多的开发者认识到了,研发团队对API管理的需求也越来越强了。第二,说明国产软件真是越来越厉害了,大家确实…

《微服务实战》 第十八章 Redis查看配置文件和数据类型

前言 本章节讲解如何查看、修改Redis配置,介绍Redis类型。 1、查看配置 config get 配置名称 2、修改配置项 config set 配置项名称 配置项值 2.1、配置项说明 配置项参数说明daemonizeno/yes默认为 no,表示 Redis 不是以守护进程的方式运行&#xff…

论C站如何获得铁粉?过来人给出几点建议

哈喽,我是bug菌,一名想走👣出大山改变命运的程序猿。周五啦,刚肝完需求的我,闲暇之时逛C站热榜,偶然刷到一条看到官方抛出的话题:"在C站如何获得铁粉?",我寻思…

操作系统第五章——输入输出管理(上)

提示:初入红尘,不知人间疾苦,蓦然回首,已是苦中之人,这杯中酒三分,这酒中悲七分。关关难过关关过,夜夜难熬夜夜熬,愿这人世间所有爱恨情仇皆溶于酒,且将这红尘做酒&#…

MP4如何让去水印?python带你实现~

前言 嗨喽,大家好呀~这里是爱看美女的茜茜呐 开发环境: 解释器版本: python 3.8 代码编辑器: pycharm 2021.2 模块使用: 内置模块(无需安装) os —> python系统编程的操作模块,提供了非常丰富的功能去处理文件和目录 sys —> 是与…

我是00后,我卷一点怎么了?

前段时间去面试了一个公司,成功拿到了offer,薪资也从12k涨到了18k,对于工作都还没两年的我来说,还是比较满意的,毕竟一些工作3、4年的可能还没我高。 我可能就是大家说的卷王,感觉自己年轻,所以…

手动创建django项目和python虚拟环境

在使用pycharm创建django项目的时候,报错如下: C:\Users\12051\AppData\Local\Temp\tmplkz609ucpycharm-management\setuptools-40.8.0\setup.py install Traceback (most recent call last):File "C:\Users\12051\AppData\Local\Temp\tmpqphl…

合并两个有序链表(java)

leetcode 21题:合并两个有序链表 题目描述解题思路:链表的其它题型。 题目描述 leetcode21题:合并两个有序链表 将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。 示例: 输入&…

IO多路转接

目录 一、select 1.1 select初识 1.2 select函数 1.3 scoket就绪条件 1.4 select基本工作流程 1.5 select服务器 1.6 select的优点 1.7 select的缺点 1.8 select的适用场景 二、poll 2.1 poll函数 2.2 poll服务器 2.3 poll的优点 && 缺点 三、epoll 3.1…

设备快线客户端软件V1.0用户手册

1.前言欢迎使用设备快线客户端软件产品。设备快线客户端软件简称DYClient,DYClient客户端是东用科技有限公司推出的一款用于远程维护的控制软件,主要为客户远程访问现场终端设备提供便捷的接入服务,并且通过DYClient客户端软件用户可以非常方便快捷的访问…

ChatGPT和软件测试实践与思考

前言 关于最近大火的ChatGPT相信各位也听过不同渠道听说过他的厉害,目前发展趋势比较火热,科技公司都有在考虑怎么使用ChatGPT进行提高研发效率以及办公效率,最近我所在的公司也有在要求大家使用ChatGPT进行改善工作效率,所以引发…

支持导入 Eolink 插件,别小看这个开源 API 管理工具了

Postcat 有多达 30 款支持数据迁移、主题、API 安全等方面的插件。 导入 Eolink 插件。 使用 导入功能有多个入口,你可以在 API 分组处点击加号导入 API: 也可以换种方式,在首页里导入Eolink 如果你日常会用到 api 管理工具的话&#xff0c…