2023网络安全岗面试常见问题合集(含答案)

作为一个工作多年的网安老鸟,面试过很多人也出过很多面试题目,也在网上收集了各类关于网安面试题目,里面有我对一些问题的见解,分享给需要的人。

目录

1、防范常见的 Web 攻击 

2、什么是 SQL 注入攻击 

3、何防范 SQL 注入攻击使用 

4、什么是 XSS 攻击 

5、如何防范 XSS 攻击 

6、什么是 CSRF 攻击 

7、如何防范 CSRF攻击

8、什么是文件上传漏洞 

9、如何防范文件上传漏洞

10、DDos 预防

11、重要协议分布图 

12、ARP 协议工作原理

13、什么是 RARP?工作原理 

14、dns 是什么?dns 的工作原理 

15、rip 协议是什么?rip 的工作原理 

16、OSPF 协议?OSPF 的工作原理 

17、TCP 与 UDP 区别总结? 

18、什么是三次握手四次挥手?tcp 为什么要三次握手?

19、GET 和 POST 的区别 

20、Cookies 和 session 区别 

21、session 的工作原理? 

22、HTTPS 和 HTTP 的区别 

23、OSI 的七层模型都有哪些? 

24、http 长连接和短连接的区别 

25、什么是TCP粘包/拆包?发生原因?解决方案

26、TCP 如何保证可靠传输? 

27、常见的状态码有哪些? 

28、什么是 SSL ?https 是如何保证数据传输的安全(SSL 是怎么工作保证安全的) 

29、如何保证公钥不被篡改? 

30、公钥加密计算量太大,如何减少耗用的时间? 

31、TCP 对应的应用层协议 

32、补充环节


1、防范常见的 Web 攻击 

TCP 对应的应用层协议,UDP 对应的应用层协议 

2、什么是 SQL 注入攻击 

攻击者在 HTTP 请求中注入恶意的 SQL 代码,服务器使用参数构建数据库 SQL 命令时,恶意SQL 被一起构造,并在数据库中执行。 

用户登录,输入用户名 lianggzone,密码 ‘ or ‘1’=’1 ,如果此时使用参数构造的方 式,就会出现 select * from user where name = ‘lianggzone’ and password = ‘’ or ‘1’=‘1’ 不管用户名和密码是什么内容,使查询出来的用户列表不为空。如

3、何防范 SQL 注入攻击使用 

预编译的 PrepareStatement 是必须的,但是一般我们会从两个方面同时入手。 

Web 端 

1)有效性检验。 

2)限制字符串输入的长度。 

服务端 

1)不用拼接 SQL 字符串。 

2)使用预编译的 PrepareStatement。 

3)有效性检验。(为什么服务端还要做有效性检验?第一准则,外部都是不可信的,防止攻击者绕过 Web 端请求) 

4)过滤 SQL 需要的参数中的特殊字符。比如单引号、双引号。

4、什么是 XSS 攻击 

跨站点脚本攻击,指攻击者通过篡改网页,嵌入恶意脚本程序,在用户浏览网页时,控制用户浏览器进行恶意操作的一种攻击方式。

5、如何防范 XSS 攻击 

1)前端,服务端,同时需要字符串输入的长度限制。 

2)前端,服务端,同时需要对 HTML 转义处理。将其中的”<”,”>”等特殊字符进行转义编码。 

防 XSS 的核心是必须对输入的数据做过滤处理。 

6、什么是 CSRF 攻击 

跨站点请求伪造,指攻击者通过跨站请求,以合法的用户的身份进行非法操作。可以这么理解 CSRF 攻击:攻击者盗用你的身份,以你的名义向第三方网站发送恶意请求。CRSF 能做的事情包括利用你的身份发邮件,发短信,进行交易转账,甚至盗取账号信息。

7、如何防范 CSRF攻击

安全框架,例如 Spring Security。token 机制。在 HTTP 请求中进行 token 验证,如果请求中没有 token 或者 token 内容不正确,则认为 CSRF 攻击而拒绝该请求。

 验证码。通常情况下,验证码能够很好的遏制 CSRF 攻击,但是很多情况下,出于用户体验考虑,验证码只能作为一种辅助手段,而不是最主要的解决方案。 

referer 识别。在 HTTP Header 中有一个字段 Referer,它记录了 HTTP 请求的来源地址。如果Referer 是其他网站,就有可能是 CSRF 攻击,则拒绝该请求。但是,服务器并非都能取到Referer。很多用户出于隐私保护的考虑,限制了 Referer 的发送。在某些情况下,浏览器也不会发送 Referer,例如 HTTPS 跳转到 HTTP。 

1)验证请求来源地址; 

2)关键操作添加验证码; 

3)在请求地址添加 token 并验证。 

8、什么是文件上传漏洞 

文件上传漏洞,指的是用户上传一个可执行的脚本文件,并通过此脚本文件获得了执行服务 端命令的能力。 

许多第三方框架、服务,都曾经被爆出文件上传漏洞,比如很早之前的 Struts2,以及富文本编辑器等等,可被攻击者上传恶意代码,有可能服务端就被人黑了。

9、如何防范文件上传漏洞

文件上传的目录设置为不可执行。 

1)判断文件类型。在判断文件类型的时候,可以结合使用 MIME Type,后缀检查等方式。 

因为对于上传文件,不能简单地通过后缀名称来判断文件的类型,因为攻击者可以将可执行文件的后缀名称改为图片或其他后缀类型,诱导用户执行。 

2)对上传的文件类型进行白名单校验,只允许上传可靠类型。 

3)上传的文件需要进行重新命名,使攻击者无法猜想上传文件的访问路径,将极大地增加攻击成本,同时向 shell.php.rar.ara 这种文件,因为重命名而无法成功实施攻击。 

4)限制上传文件的大小。 

5)单独设置文件服务器的域名。 

DDos 攻击客户端向服务端发送请求链接数据包,服务端向客户端发送确认数据包,客户端不向服务端发送确认数据包,服务器一直等待来自客户端的确认没有彻底根治的办法,除非不使用 TCP 

10、DDos 预防

1)限制同时打开 SYN 半链接的数目 

2)缩短 SYN 半链接的 Time out 时间 

3)关闭不必要的服务 

11、重要协议分布图 

地址解析协议,即 ARP(Address Resolution Protocol),是根据 IP 地址获取物理地址的一个TCP/IP 协议。 

1.发送 ARP 请求的以太网数据帧 广播 到以太网上的每个主机,ARP 请求帧中包含了目的主机的 IP 地址。 

2.目的主机收到了该 ARP 请求之后,会发送一个 ARP 应答,里面包含了目的主机的 MAC 地址。

12、ARP 协议工作原理

每个主机都会在自己的 ARP 缓冲区中建立一个 ARP 列表,以表示 IP 地址和 MAC 地址之 间的对应关系。 

主机(网络接口)新加入网络时(也可能只是 mac 地址发生变化,接口重启等),会发送免费 ARP 报文把自己 IP 地址与 Mac 地址的映射关系广播给其他主机。网络上的主机接收到免费 ARP 报文时,会更新自己的 ARP 缓冲区。将新的映射关系更新到自己的 ARP 表中。 

某个主机需要发送报文时,首先检查 ARP 列表中是否有对应 IP 地址的目的主机的 MAC地址,如果有,则直接发送数据,如果没有,就向本网段的所有主机发送ARP 数据包,该 

数据包包括的内容有:源主机 IP地址,源主机 MAC 地址,目的主机的IP 地址等。 

当本网络的所有主机收到该 ARP数据包时: 

(A)首先检查数据包中的 IP 地址是否是自己的IP 地址,如果不是,则忽略该数据包。 

(B)如果是,则首先从数据包中取出源主机的 IP和 MAC 地址写入到 ARP 列表中,如果已经存在,则覆盖。 

(C) 然后将自己的

  • 3
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值