网络安全面试题及答案
python集合的运算防范常见的Web攻击
重要协议分布层
arp协议的工作原理
rip协议是什么?rip的工作原理
什么是RARP?工作原理
OSPF协议?OSPF的工作原理
TCP与UDP区别总结
什么是三次握手四次挥手?
tcp为什么要三次握手?
dns是什么?dns的工作原理
一次完整的HTTP请求过程
Cookies和session区别
GET和POST的区别
HTTPS和HTTP的区别
session的工作原理?
http长连接和短连接的区别
OSI的七层模型都有哪些?
session的工作原理?什么是TCP粘包/拆包?发生原因?解决方案
TCP如何保证可靠传输?
URI和URL的区别
什么是SSL?
https是如何保证数据传输的安全(SSL是怎么工作保证安全的)
TCP对应的应用层协议,UDP对应的应用层协议
常见的状态码有哪些?
防范常见的Web攻击
什么是SQL注入攻击
攻击者在HTTP请求中注入恶意的SQL代码,服务器使用参数构建数据库SQL命令时,恶意SQL被一起构造,并在数据库中执行。
用户登录,输入用户名lianggzone,密码‘or‘1’=’1,如果此时使用参数构造的方式,就会出现
select*from user where name=‘lianggzone’and password=‘’or‘1’=‘1’
不管用户名和密码是什么内容,使查询出来的用户列表不为空。如何防范SQL注入攻击使用预编译的PrepareStatement是必须的,但是一般我们会从两个方面同时入手。
Web端
hdmi接口1)有效性检验。
2)限制字符串输入的长度。
服务端
1)不用拼接SQL字符串。vim下一页一
2)使用预编译的PrepareStatement。
3)有效性检验。(为什么服务端还要做有效性检验?第一准则,外部都是不可信的,防止攻击者绕过Web端请求)
4)过滤SQL需要的参数中的特殊字符。比如单引号、双引号。
什么是XSS攻击
跨站点脚本攻击,指攻击者通过篡改网页,嵌入恶意脚本程序,在用户浏览网页时,控制用户浏览器进行恶意操作的一种攻击方式。如何防范XSS攻击
1)前端,服务端,同时需要字符串输入的长度限制。
2)前端,服务端,同时需要对HTML转义处理。将其中的”<”,”>”等特殊字符进行转义编码。
防XSS的核心是必须对输入的数据做过滤处理。
什么是CSRF攻击
跨站点请求伪造,指攻击者通过跨站请求,以合法的用户的身份进行非法操作。可以这么理解CSRF攻击:攻击者盗用你的身份,以你的名义向第三方网站发送恶意请求。CRSF能做的事情包括利用你的身份发邮件,发短信,进行交易转账,甚至盗取账号信息。如何防范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并验证。
什么是文件上传漏洞
文件上传漏洞,指的是用户上传一个可执行的脚本文件,并通过此脚本文件获得了执行服务端命令的能力。
许多第三方框架、服务,都曾经被爆出文件上传漏洞,比如很早之前的Struts2,以及富文本编辑器等等,可被攻击者上传恶意代码,有可能服务端就被人黑了。如何防范文件上传漏洞
文件上传的目录设置为不可执行。
1)判断文件类型。在判断文件类型的时候,可以结合使用MIME Type,后缀检查等方式。因为对于上
传文件,不能简单地通过后缀名称来判断文件的类型,因为攻击者可以将可执行文件的后缀名称改为图片或其他后缀类型,诱导用户执行。
2)对上传的文件类型进行白名单校验,只允许上传可靠类型。
3)上传的文件需要进行重新命名,使攻击者无法猜想上传文件的访问路径,将极大地增加攻击成本,同时向shell.php.rar.ara这种文件,因为重命名而无法成功实施攻击。
4)限制上传文件的大小。
5)单独设置文件服务器的域名。
DDos攻击
客户端向服务端发送请求链接数据包,服务端向客户端发送确认数据包,客户端不向服务端发送确认数据包,服务器一直等待来自客户端的确认
没有彻底根治的办法,除非不使用TCP
DDos预防:
1)限制同时打开SYN半链接的数目
2)缩短SYN半链接的Time out时间
3)关闭不必要的服务
重要协议分布图织梦自动采集
arp协议的工作原理
地址解析协议,即ARP(Address Resolution Protocol),是根据IP地址获取物理地址的一个TCP/IP协议。
1.发送ARP请求的以太网数据帧广播到以太网上的每个主机,ARP请求帧中包含了目的主机的IP地址。
2.目的主机收到了该ARP请求之后,会发送一个ARP应答,里面包含了目的主机的MAC地址。
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)然后将自己的MAC地址写入ARP响应包中,告诉源主机自己是它想要的MAC 地址。
6.源主机收到ARP响应包后。将目的主机的IP和MAC地址写入ARP列表,并利用此信息发送数据。如果源主机一直没有收到ARP响应数据包,表示ARP查询失败。ARP高速缓存(即ARP表)是ARP地址解析协议能够高效运行的关键
什么是RARP?工作原理
概括:反向地址转换协议,网络层协议,RARP与ARP工作方式相反。RARP使只知道自己硬件地址的主机能够知道其IP地址。RARP发出要反向解释的物理地址并希望返回其IP
地址,应答包括能够提供所需信息的RARP服务器发出的IP地址。
原理:
(1)网络上的每台设备都会有一个独一无二的硬件地址,通常是由设备厂商分配的MAC地址。主机从网卡上读取MAC地址,然后在网络上发送一个RARP请求的广播数据包,请求RARP 服务器回复该主机的IP地址。
(2)RARP服务器收到了RARP请求数据包,为其分配IP地址,并将RARP回应发送给主机。
(3)PC1收到RARP回应后,就使用得到的IP地址进行通讯。
dns是什么?dns的工作原理
将主机域名转换为ip地址,属于应用层协议,使用UDP传输。(DNS应用层协议,以前有个考官问过)
过程:
总结:浏览器缓存,系统缓存,路由器缓存,IPS服务器缓存,根域名服务器缓存,顶级域名服务器缓存,主域名服务器缓存。
一、主机向本地域名服务器的查询一般都是采用递归查询。
二、本地域名服务器向根域名服务器的查询的迭代查询。
1)当用户输入域名时,浏览器先检查自己的缓存中是否这个域名映射的ip地址,有解析结束。
2)若没命中,则检查操作系统缓存(如Windows的hosts)中有没有解析过的结果,有解析结束。
3)若无命中,则请求本地域名服务器解析(LDNS)。
4)若LDNS没有命中就直接跳到根域名服务器请求解析。根域名服务器返回给LDNS一个主域名服务器地址。
5)此时LDNS再发送请求给上一步返回的gTLD(通用顶级域),接受请求的gTLD查并返回这个域名对应的Name Server的地址
6)Name Server根据映射关系表到目标ip,返回给LDNS
7)LDNS缓存这个域名和对应的ip,把解析的结果返回给用户,用户根据TTL值缓存到本地系统缓存中,域名解析过程至此结束
rip协议是什么?rip的工作原理
RIP动态路由选择协议(网络层协议)
web前端基础面试题RIP是一种基于距离矢量(Distance-Vector)算法的协议,它使用跳数(Hop Count)作为度量来衡量到达目的网络的路由距离。RIP通过UDP报文进行路由信息的交换,使用的端口号为520。
工作原理:
RIP路由协议用“更新(UNPDATES)”和“请求(REQUESTS)”这两种分组来传输信息的。每个具有RIP协议功能的路由器每隔30秒用UDP520端口给与之直接相连的机器广播更新信息。并且在(用“路程段数”(即“跳数”)作为网络距离的尺度。每个路由器在)给相邻路由器发出路由信息时,都会给每个路径加上内部距离。
路由器的收敛机制:
任何距离向量路由选择协议(如RIP)都有一个问题,路由器不知道网络的全局情况,路由器必须依靠相邻路由器来获取网络的可达信息。由于路由选择更新信息在网络上传播慢,距离向量路由选择算法有一个慢收敛问题,这个问题将导致不一致性产生。
RIP较少路由收敛机制带来的问题:
1)记数到无穷大机制:RIP协议允许最大跳数为15。大于15的目的地被认为是不可达。当路径的跳数超过15,这条路径才从路由表中删除。
skell2)水平分割法:路由器不向路径到来的方向回传此路径。当打开路由器接口后,路由器记录路径是从哪个接口来的,并且不向此接口回传此路径。
3)破坏逆转的水平分割法:忽略在更新过程中从一个路由器获取的路径又传回该路由器4)保持定时器法:防止路由器在路径从路由表中删除后一定的时间内(通常为180秒)接受新的路由信息。保证每个路由器都收到了路径不可达信息
5)触发更新法:当某个路径的跳数改变了,路由器立即发出更新信息,不管路由器是否到达常规信息更新时间都发出更新信息。
RIP的缺点
1、由于15跳为最大值,RIP只能应用于小规模网络;
2、收敛速度慢;
3、根据跳数选择的路由,不一定是最优路由。
OSPF协议?OSPF的工作原理
OSPF(Open Shortest Pass First,开放最短路径优先协议),是一个最常用的内部网管协议,是一个链路状态协议。(网络层协议,)
原理:
OSPF组播的方式在所有开启OSPF的接口发送Hello包,用来确定是否有OSPF邻居,若发现了,则建立OSPF邻居关系,形成邻居表,之后互相发送LSA(链路状态通告)相互通告路由,形成LSDB(链路状态数据库)。再通过SPF算法,计算最佳路径(cost最小)后放入路由表。
TCP与UDP区别总结?
1.TCP面向连接(如打电话要先拨号建立连接)提供可靠的服务;UDP是无连接的,即发送数据之前不
需要建立连接,;UDP尽最大努力交付,即不保证可靠交付。(由于UDP无需建立连接,因此UDP不会引入建立连接的时延,TCP需要在端系统中维护连接状态,比如接受和发送缓存,拥塞控制,序号与确认号的参数等,故TCP会比UDP慢)
2.UDP具有较好的实时性,工作效率比TCP高,适用于对高速传输和实时性有较高的通信或广播通信。
3.每一条TCP连接只能是一对一的;UDP支持一对一,一对多,多对一和多对多的交互通信4UDP分组首部开销小,TCP首部开销20字节;UDP的首部开销小,只有8个字节。
5.TCP面向字节流,实际上是TCP把数据看成一连串无结构的字节流;UDP是面向报文的(一次交付一个完整的报文,报文不可分割,报文是UDP数据报处理的最小单位)。
6.UDP适合一次性传输较小数据的网络应用,如DNS,SNMP等
什么是三次握手四次挥手?tcp为什么要三次握手?
为了防止已失效的连接请求报文段突然又传送到了服务端,因而产生错误
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论