首页
题库
公司真题
专项练习
面试题库
在线编程
面试
面试经验
AI 模拟面试
简历
求职
学习
基础学习课
实战项目课
求职辅导课
专栏&文章
竞赛
搜索
我要招人
发布职位
发布职位、邀约牛人
更多企业解决方案
在线笔面试、雇主品牌宣传
登录
/
注册
老板来盒绿箭
门头沟学院 自动化测试
发布于重庆
关注
已关注
取消关注
计算机网络八股
@辣条君xx:
【计算机网络】2023校招计网八股汇总(附答案~)
计算机网络肯定是贯穿互联网校招所有技术岗位最高频的面试考点,有多少人被计网刷下去了呢,在这里我给大家整理了很全面的计算机网络高频考点,希望能够帮助到大家~ 如果以下问题中有你感兴趣的内容,可以直接Ctrl+F前往 常见问题: 网络分层结构 HTTP是什么? HTTP 常见的状态码有哪些?GET 和 POST 的区别? 三次握手 两次握手可以吗? 四次挥手 第四次挥手为什么要等待2MSL? TCP有哪些特点? TCP和UDP的区别? HTTP协议的特点? HTTP报文格式 HTTP长连接和短连接? HTTP的优缺点? HTTP1.1和 HTTP2.0的区别? HTTPS与HTTP的区别? DNS 的解析过程? 浏览器中输入URL返回页面过程? 什么是cookie和session? Cookie和Session的区别? 什么是对称加密和非对称加密? 滑动窗口机制 什么是 XSS 攻击? 什么是 CSRF? 1. 网络分层结构 计算机网络体系大致分为三种,OSI七层模型、TCP/IP四层模型和五层模型。一般面试的时候考察比较多的是五层模型。 TCP/IP五层模型:应用层、传输层、网络层、数据链路层、物理层。 应用层:为应用程序提供交互服务。在互联网中的应用层协议很多,如域名系统DNS、HTTP协议、SMTP协议等。 传输层:负责向两台主机进程之间的通信提供数据传输服务。传输层的协议主要有传输控制协议TCP和用户数据协议UDP。 网络层:选择合适的路由和交换结点,确保数据及时传送。主要包括IP协议。 数据链路层:在两个相邻节点之间传送数据时,数据链路层将网络层交下来的 IP 数据报组装成帧,在两个相邻节点间的链路上传送帧。 物理层:实现相邻节点间比特流的透明传输,尽可能屏蔽传输介质和物理设备的差异。 2. HTTP是什么? HTTP 常见的状态码,有哪些?GET 和 POST 的区别? HTTP是超文本传输协议(HTTP 是在计算机世界的协议。它使计算机能够理解的语言确立了一种计算机之间交流通信的规范(两个以上的参与者),以及相关的各种控制和错误处理方式(行为约定和规范)。) HTTP常见状态码 100 Continue 继续。客户端应继续其请求 101 Switching Protocols 切换协议。服务器根据客户端的请求切换协议。只能切换到更高级的协议,例如,切换到HTTP的新版本协议 200 OK 请求成功。一般用于GET与POST请求 201 Created 已创建。成功请求并创建了新的资源 202 Accepted 已接受。已经接受请求,但未处理完成 203 Non-Authoritative Information 非授权信息。请求成功。但返回的meta信息不在原始的服务器,而是一个副本 204 No Content 无内容。服务器成功处理,但未返回内容。在未更新网页的情况下,可确保浏览器继续显示当前文档 205 Reset Content 重置内容。服务器处理成功,用户终端(例如:浏览器)应重置文档视图。可通过此返回码清除浏览器的表单域 206 Partial Content 部分内容。服务器成功处理了部分GET请求 300 Multiple Choices 多种选择。请求的资源可包括多个位置,相应可返回一个资源特征与地址的列表用于用户终端(例如:浏览器)选择 301 Moved Permanently 永久移动。请求的资源已被永久的移动到新URI,返回信息会包括新的URI,浏览器会自动定向到新URI。今后任何新的请求都应使用新的URI代替 302 Found 临时移动。与301类似。但资源只是临时被移动。客户端应继续使用原有URI 303 See Other 查看其它地址。与301类似。使用GET和POST请求查看 304 Not Modified 未修改。所请求的资源未修改,服务器返回此状态码时,不会返回任何资源。客户端通常会缓存访问过的资源,通过提供一个头信息指出客户端希望只返回在指定日期之后修改的资源 305 Use Proxy 使用代理。所请求的资源必须通过代理访问 306 Unused 已经被废弃的HTTP状态码 307 Temporary Redirect 临时重定向。与302类似。使用GET请求重定向 400 Bad Request 客户端请求的语法错误,服务器无法理解 401 Unauthorized 请求要求用户的身份认证 402 Payment Required 保留,将来使用 403 Forbidden 服务器理解请求客户端的请求,但是拒绝执行此请求 404 Not Found 服务器无法根据客户端的请求找到资源(网页)。通过此代码,网站设计人员可设置"您所请求的资源无法找到"的个性页面 405 Method Not Allowed 客户端请求中的方法被禁止 406 Not Acceptable 服务器无法根据客户端请求的内容特性完成请求 407 Proxy Authentication Required 请求要求代理的身份认证,与401类似,但请求者应当使用代理进行授权 408 Request Time-out 服务器等待客户端发送的请求时间过长,超时 409 Conflict 服务器完成客户端的 PUT 请求时可能返回此代码,服务器处理请求时发生了冲突 410 Gone 客户端请求的资源已经不存在。410不同于404,如果资源以前有现在被永久删除了可使用410代码,网站设计人员可通过301代码指定资源的新位置 411 Length Required 服务器无法处理客户端发送的不带Content-Length的请求信息 412 Precondition Failed 客户端请求信息的先决条件错误 413 Request Entity Too Large 由于请求的实体过大,服务器无法处理,因此拒绝请求。为防止客户端的连续请求,服务器可能会关闭连接。如果只是服务器暂时无法处理,则会包含一个Retry-After的响应信息 414 Request-URI Too Large 请求的URI过长(URI通常为网址),服务器无法处理 415 Unsupported Media Type 服务器无法处理请求附带的媒体格式 416 Requested range not satisfiable 客户端请求的范围无效 417 Expectation Failed 服务器无法满足Expect的请求头信息 500 Internal Server Error 服务器内部错误,无法完成请求 501 Not Implemented 服务器不支持请求的功能,无法完成请求 502 Bad Gateway 作为网关或者代理工作的服务器尝试执行请求时,从远程服务器接收到了一个无效的响应 503 Service Unavailable 由于超载或系统维护,服务器暂时的无法处理客户端的请求。延时的长度可包含在服务器的Retry-After头信息中 504 Gateway Time-out 充当网关或代理的服务器,未及时从远端服务器获取请求 505 HTTP Version not supported 服务器不支持请求的HTTP协议的版本,无法完成处理 GET和POST的区别: 1 GET请求,用于请求数据,无副作用的,是幂等的,且可缓存,请求的数据会附加在URL之后,以?分割URL和传输数据,多个参数用&连接。URL的编码格式采用的是ASCII编码,而不是uniclde,即是说所有的非ASCII字符都要编码之后再传输。 2 GET提交有数据大小的限制,一般是不超过1024个字节,而这种说法也不完全准确,HTTP协议并没有设定URL字节长度的上限,而是浏览器做了些处理,所以长度依据浏览器的不同有所不同;POST请求在HTTP协议中也没有做说明,一般来说是没有设置限制的,但是实际上浏览器也有默认值。总体来说,少量的数据使用GET,大量的数据使用POST。 3 POST请求:用于提交数据,有副作用,非幂等,不可缓存,POST请求会把请求的数据放置在HTTP请求包的包体中。上面的item=bandsaw就是实际的传输数据。 因此,GET请求的数据会暴露在地址栏中,所以安全性比较低,比如密码是不能暴露的,就不能使用GET请求 , 而POST请求中,请求参数信息是放在请求头的,所以安全性较高,可以使用。在实际中,涉及到登录操作的时候,尽量使用HTTPS请求,安全性更好。而POST请求则不会。 3. 三次握手 假设发送端为客户端,接收端为服务端。开始时客户端和服务端的状态都是CLOSED。 第一次握手:客户端向服务端发起建立连接请求,客户端会随机生成一个起始序列号x,客户端向服务端发送的字段中包含标志位SYN=1,序列号seq=x。第一次握手前客户端的状态为CLOSE,第一次握手后客户端的状态为SYN-SENT。此时服务端的状态为LISTEN。 第二次握手:服务端在收到客户端发来的报文后,会随机生成一个服务端的起始序列号y,然后给客户端回复一段报文,其中包括标志位SYN=1,ACK=1,序列号seq=y,确认号ack=x+1。第二次握手前服务端的状态为LISTEN,第二次握手后服务端的状态为SYN-RCVD,此时客户端的状态为SYN-SENT。(其中SYN=1表示要和客户端建立一个连接,ACK=1表示确认序号有效) 第三次握手:客户端收到服务端发来的报文后,会再向服务端发送报文,其中包含标志位ACK=1,序列号seq=x+1,确认号ack=y+1。第三次握手前客户端的状态为SYN-SENT,第三次握手后客户端和服务端的状态都为ESTABLISHED。此时连接建立完成。 4. 两次握手可以吗? 第三次握手主要为了防止已失效的连接请求报文段突然又传输到了服务端,导致产生问题。 比如客户端A发出连接请求,可能因为网络阻塞原因,A没有收到确认报文,于是A再重传一次连接请求。 连接成功,等待数据传输完毕后,就释放了连接。 然后A发出的第一个连接请求等到连接释放以后的某个时间才到达服务端B,此时B误认为A又发出一次新的连接请求,于是就向A发出确认报文段。 如果不采用三次握手,只要B发出确认,就建立新的连接了,此时A不会响应B的确认且不发送数据,则B一直等待A发送数据,浪费资源。 5. 四次挥手 A的应用进程先向其TCP发出连接释放报文段(FIN=1,seq=u),并停止再发送数据,主动关闭TCP连接,进入FIN-WAIT-1(终止等待1)状态,等待B的确认。 B收到连接释放报文段后即发出确认报文段(ACK=1,ack=u+1,seq=v),B进入CLOSE-WAIT(关闭等待)状态,此时的TCP处于半关闭状态,A到B的连接释放。 A收到B的确认后,进入FIN-WAIT-2(终止等待2)状态,等待B发出的连接释放报文段。 B发送完数据,就会发出连接释放报文段(FIN=1,ACK=1,seq=w,ack=u+1),B进入LAST-ACK(最后确认)状态,等待A的确认。 A收到B的连接释放报文段后,对此发出确认报文段(ACK=1,seq=u+1,ack=w+1),A进入TIME-WAIT(时间等待)状态。此时TCP未释放掉,需要经过时间等待计时器设置的时间2MSL(最大报文段生存时间)后,A才进入CLOSED状态。B收到A发出的确认报文段后关闭连接,若没收到A发出的确认报文段,B就会重传连接释放报文段。 6. 第四次挥手为什么要等待2MSL? 保证A发送的最后一个ACK报文段能够到达B。这个ACK报文段有可能丢失,B收不到这个确认报文,就会超时重传连接释放报文段,然后A可以在2MSL时间内收到这个重传的连接释放报文段,接着A重传一次确认,重新启动2MSL计时器,最后A和B都进入到CLOSED状态,若A在TIME-WAIT状态不等待一段时间,而是发送完ACK报文段后立即释放连接,则无法收到B重传的连接释放报文段,所以不会再发送一次确认报文段,B就无法正常进入到CLOSED状态。 防止已失效的连接请求报文段出现在本连接中。A在发送完最后一个ACK报文段后,再经过2MSL,就可以使这个连接所产生的所有报文段都从网络中消失,使下一个新的连接中不会出现旧的连接请求报文段。 7. TCP有哪些特点? TCP是面向连接的运输层协议。 <stron>,每一条TCP连接只能有两个端点。</stron> TCP提供可靠交付的服务。 TCP提供全双工通信。 面向字节流。 8. TCP和UDP的区别? TCP面向连接;UDP是无连接的,即发送数据之前不需要建立连接。 TCP提供可靠的服务;UDP不保证可靠交付。 TCP面向字节流,把数据看成一连串无结构的字节流;UDP是面向报文的。 TCP有拥塞控制;UDP没有拥塞控制,因此网络出现拥塞不会使源主机的发送速率降低(对实时应用很有用,如实时视频会议等)。 每一条TCP连接只能是<stron>的;UDP支持一对一、一对多、多对一和多对多的通信方式。</stron> TCP首部开销20字节;UDP的首部开销小,只有8个字节。 9. HTTP协议的特点? HTTP允许传输任意类型的数据。传输的类型由Content-Type加以标记。 无状态。对于客户端每次发送的请求,服务器都认为是一个新的请求,上一次会话和下一次会话之间没有联系。 支持客户端/服务器模式。 10. HTTP报文格式 HTTP请求由请求行、请求头部、空行和请求体四个部分组成。 请求行:包括请求方法,访问的资源URL,使用的HTTP版本。GET和POST是最常见的HTTP方法,除此以外还包括DELETE、HEAD、OPTIONS、PUT、TRACE。 请求头:格式为“属性名:属性值”,服务端根据请求头获取客户端的信息,主要有cookie、host、connection、accept-language、accept-encoding、user-agent。 请求体:用户的请求数据如用户名,密码等。 HTTP响应也由四个部分组成,分别是:状态行、响应头、空行和响应体。 状态行:协议版本,状态码及状态描述。 响应头:响应头字段主要有connection、content-type、content-encoding、content-length、set-cookie、Last-Modified,、Cache-Control、Expires。 响应体:服务器返回给客户端的内容。 11. HTTP长连接和短连接? HTTP1.0默认使用的是短连接。浏览器和服务器每进行一次HTTP操作,就建立一次连接,任务结束就中断连接。 HTTP/1.1起,默认使用长连接。要使用长连接,客户端和服务器的HTTP首部的Connection都要设置为keep-alive,才能支持长连接。 HTTP长连接,指的是复用TCP连接。多个HTTP请求可以复用同一个TCP连接,这就节省了TCP连接建立和断开的消耗。 12. HTTP1.1和 HTTP2.0的区别? HTTP2.0相比HTTP1.1支持的特性: 新的二进制格式:HTTP1.1 基于文本格式传输数据;HTTP2.0采用二进制格式传输数据,解析更高效。 多路复用:在一个连接里,允许同时发送多个请求或响应,并且这些请求或响应能够并行的传输而不被阻塞,避免 HTTP1.1 出现的”队头堵塞”问题。 头部压缩,HTTP1.1的header带有大量信息,而且每次都要重复发送;HTTP2.0 把header从数据中分离,并封装成头帧和数据帧,使用特定算法压缩头帧,有效减少头信息大小。并且HTTP2.0在客户端和服务器端记录了之前发送的键值对,对于相同的数据,不会重复发送。比如请求a发送了所有的头信息字段,请求b则只需要发送差异数据,这样可以减少冗余数据,降低开销。 服务端推送:HTTP2.0允许服务器向客户端推送资源,无需客户端发送请求到服务器获取。 13. HTTPS与HTTP的区别? HTTP是超文本传输协议,信息是明文传输;HTTPS则是具有安全性的ssl加密传输协议。 HTTP和HTTPS用的端口不一样,HTTP端口是80,HTTPS是443。 HTTPS协议需要到CA机构申请证书,一般需要一定的费用。 HTTP运行在TCP协议之上;HTTPS运行在SSL协议之上,SSL运行在TCP协议之上。 14. DNS 的解析过程? 浏览器搜索自己的DNS缓存 若没有,则搜索操作系统中的DNS缓存和hosts文件 若没有,则操作系统将域名发送至本地域名服务器,本地域名服务器查询自己的DNS缓存,查找成功则返回结果,否则依次向根域名服务器、顶级域名服务器、权限域名服务器发起查询请求,最终返回IP地址给本地域名服务器 本地域名服务器将得到的IP地址返回给操作系统,同时自己也将IP地址缓存起来 操作系统将 IP 地址返回给浏览器,同时自己也将IP地址缓存起来 浏览器得到域名对应的IP地址 15. 浏览器中输入URL返回页面过程? 1、解析URL得到发送给web的信息,并生产 HTTP 请求信息 2、查询服务器域名对应的** IP 地址,这个过程中涉及到DNS解析。 3、通过 DNS 获取到 IP 后,就可以把 HTTP 的传输⼯作交给操作系统中的协议栈。 4、经过TCP三次握手建立连接进行数据传输。 5、TCP 模块在执行连接、收发、断开等各阶段操作时,都需要委托 IP 模块将数据封装成网络包发送给通信对象。 6、生成了 IP 头部之后,接下来网络包还需要在 IP 头部的前面加上 MAC 头部。 7、后续还会经过网卡、交换机和路由器到对端,然后就是一个反向的过程。 追问:DNS解析过程 1、首先会在本地的hosts文件中查找是否有这个网址的映射关系,如果有则直接调用这个IP的映射进行访问; 2、如果没有则会去本地DNS解析缓存查找是否有这个网址的映射关系,如果有则返回; 3、如果本地DNS解析缓存没有映射关系,首先找本地的TCP/IP设置的DNS服务器,这里我们叫做本地DNS服务器,如果所找的网址在本地DNS的资源范围内则返回解析给主机,此解析具有权威性; 4、如果不在本地DNS的资源范围内,但该服务器已经存储了网址的映射关系,那么调用这个IP的映射关系,完成地址解析,此解析不具有权威性。 5、如果本地服务器的解析失败并且缓存中没有对应的映射关系。那么就有两种情况 1)本地DNS服务器开启装发模式,则向上一级请求,若上一级也不能解析就找上上一级依次类推,最终把解析返回给本地DNS,本地DNS返回给主机。 2)如果本地DNS未采用转发模式。就回去找13组根DNS,根DNS收到后就会去判断这个域名由谁来管理将负责此域名的IP返给本地DNS,本地DNS再去找负责的根DNS,如果根DNS不能解析就去找下一级的DNS给本地DNS,然后一直重复这个过程直到找到xx的主机。 16. 什么是cookie和session? 由于HTTP协议是无状态的协议,需要用某种机制来识具体的用户身份,用来跟踪用户的整个会话。常用的会话跟踪技术是cookie与session。 cookie就是由服务器发给客户端的特殊信息,而这些信息以文本文件的方式存放在客户端,然后客户端每次向服务器发送请求的时候都会带上这些特殊的信息。说得更具体一些:当用户使用浏览器访问一个支持cookie的网站的时候,用户会提供包括用户名在内的个人信息并且提交至服务器;接着,服务器在向客户端回传相应的超文本的同时也会发回这些个人信息,当然这些信息并不是存放在HTTP响应体中的,而是存放于HTTP响应头;当客户端浏览器接收到来自服务器的响应之后,浏览器会将这些信息存放在一个统一的位置。 自此,客户端再向服务器发送请求的时候,都会把相应的cookie存放在HTTP请求头再次发回至服务器。服务器在接收到来自客户端浏览器的请求之后,就能够通过分析存放于请求头的cookie得到客户端特有的信息,从而动态生成与该客户端相对应的内容。网站的登录界面中“请记住我”这样的选项,就是通过cookie实现的。 cookie工作流程: servlet创建cookie,保存少量数据,发送给浏览器。 浏览器获得服务器发送的cookie数据,将自动的保存到浏览器端。 下次访问时,浏览器将自动携带cookie数据发送给服务器。 session原理:首先浏览器请求服务器访问web站点时,服务器首先会检查这个客户端请求是否已经包含了一个session标识、称为SESSIONID,如果已经包含了一个sessionid则说明以前已经为此客户端创建过session,服务器就按照sessionid把这个session检索出来使用,如果客户端请求不包含session id,则服务器为此客户端创建一个session,并且生成一个与此session相关联的独一无二的sessionid存放到cookie中,这个sessionid将在本次响应中返回到客户端保存,这样在交互的过程中,浏览器端每次请求时,都会带着这个sessionid,服务器根据这个sessionid就可以找得到对应的session。以此来达到共享数据的目的。 这里需要注意的是,session不会随着浏览器的关闭而死亡,而是等待超时时间。 17. Cookie和Session的区别? 作用范围不同,Cookie 保存在客户端,Session 保存在服务器端。 有效期不同,Cookie 可设置为长时间保持,比如我们经常使用的默认登录功能,Session 一般失效时间较短,客户端关闭或者 Session 超时都会失效。 隐私策略不同,Cookie 存储在客户端,容易被窃取;Session 存储在服务端,安全性相对 Cookie 要好一些。 存储大小不同, 单个 Cookie 保存的数据不能超过 4K;对于 Session 来说存储没有上限,但出于对服务器的性能考虑,Session 内不要存放过多的数据,并且需要设置 Session 删除机制。 18. 什么是对称加密和非对称加密? 对称加密:通信双方使用相同的密钥进行加密。特点是加密速度快,但是缺点是密钥泄露会导致密文数据被破解。常见的对称加密有AES和DES算法。 非对称加密:它需要生成两个密钥,公钥和私钥。公钥是公开的,任何人都可以获得,而私钥是私人保管的。公钥负责加密,私钥负责解密;或者私钥负责加密,公钥负责解密。这种加密算法安全性更高,但是计算量相比对称加密大很多,加密和解密都很慢。常见的非对称算法有RSA和DSA。 19. 滑动窗口机制 TCP 利用滑动窗口实现流量控制。流量控制是为了控制发送方发送速率,保证接收方来得及接收。 TCP会话的双方都各自维护一个发送窗口和一个接收窗口。接收窗口大小取决于应用、系统、硬件的限制。发送窗口则取决于对端通告的接收窗口。接收方发送的确认报文中的window字段可以用来控制发送方窗口大小,从而影响发送方的发送速率。将接收方的确认报文window字段设置为 0,则发送方不能发送数据。 TCP头包含window字段,16bit位,它代表的是窗口的字节容量,最大为65535。这个字段是接收端告诉发送端自己还有多少缓冲区可以接收数据。于是发送端就可以根据这个接收端的处理能力来发送数据,而不会导致接收端处理不过来。接收窗口的大小是约等于发送窗口的大小。 20. 详细讲一下拥塞控制? 防止过多的数据注入到网络中。 几种拥塞控制方法:慢开始( slow-start )、拥塞避免( congestion avoidance )、快重传( fast retransmit )和快恢复( fast recovery )。 慢开始 把拥塞窗口 cwnd 设置为一个最大报文段MSS的数值。而在每收到一个对新的报文段的确认后,把拥塞窗口增加至多一个MSS的数值。每经过一个传输轮次,拥塞窗口 cwnd 就加倍。 为了防止拥塞窗口cwnd增长过大引起网络拥塞,还需要设置一个慢开始门限ssthresh状态变量。 当 cwnd < ssthresh 时,使用慢开始算法。 当 cwnd > ssthresh 时,停止使用慢开始算法而改用拥塞避免算法。 当 cwnd = ssthresh 时,既可使用慢开始算法,也可使用拥塞控制避免算法。 拥塞避免 让拥塞窗口cwnd缓慢地增大,每经过一个往返时间RTT就把发送方的拥塞窗口cwnd加1,而不是加倍。这样拥塞窗口cwnd按线性规律缓慢增长。 无论在慢开始阶段还是在拥塞避免阶段,只要发送方判断网络出现拥塞(其根据就是没有收到确认),就要把慢开始门限ssthresh设置为出现拥塞时的发送 方窗口值的一半(但不能小于2)。然后把拥塞窗口cwnd重新设置为1,执行慢开始算法。这样做的目的就是要迅速减少主机发送到网络中的分组数,使得发生 拥塞的路由器有足够时间把队列中积压的分组处理完毕。 快重传 有时个别报文段会在网络中丢失,但实际上网络并未发生拥塞。如果发送方迟迟收不到确认,就会产生超时,就会误认为网络发生了拥塞。这就导致发送方错误地启动慢开始,把拥塞窗口cwnd又设置为1,因而降低了传输效率。 快重传算法可以避免这个问题。快重传算法首先要求接收方每收到一个失序的报文段后就立即发出重复确认,使发送方及早知道有报文段没有到达对方。 发送方只要一连收到三个重复确认就应当立即重传对方尚未收到的报文段,而不必继续等待重传计时器到期。由于发送方尽早重传未被确认的报文段,因此采用快重传后可以使整个网络吞吐量提高约20%。 快恢复 当发送方连续收到三个重复确认,就会把慢开始门限ssthresh减半,接着把cwnd值设置为慢开始门限ssthresh减半后的数值,然后开始执行拥塞避免算法,使拥塞窗口缓慢地线性增大。 在采用快恢复算法时,慢开始算法只是在TCP连接建立时和网络出现超时时才使用。 采用这样的拥塞控制方法使得TCP的性能有明显的改进。 21. 什么是 XSS 攻击? XSS 即(Cross Site Scripting)中文名称为:跨站脚本攻击。XSS的重点不在于跨站点,而在于脚本的执行。 XSS的原理是: 恶意攻击者在web页面中会插入一些恶意的script代码。当用户浏览该页面的时候,那么嵌入到web页面中script代码会执行,因此会达到恶意攻击用户的目的。 XSS攻击最主要有如下分类:反射型、存储型、及 DOM-based型。反射性和DOM-baseed型可以归类为非持久性XSS攻击。存储型可以归类为持久性XSS攻击。 22. 什么是 CSRF? CSRF(Cross Site Request Forgery,跨站域请求伪造)是一种网络的攻击方式,它在 2007 年曾被列为互联网 20 大安全隐患之一,也被称为『One Click Attack』或者 『Session Riding』,通常缩写为CSRF或者XSRF,是一种对网站的恶意利用。 听起来像跨站脚本(XSS),但它与XSS非常不同,并且攻击方式几乎相左。 XSS利用站点内的信任用户,而CSRF则通过伪装来自受信任用户的请求来利用受信任的网站。与XSS攻击相比,CSRF攻击往往不大流行(因此对其进行防范的资源也相当稀少)和难以防范,所以被认为比XSS更具危险性。 整理不易,如果感兴趣的话,欢迎点赞收藏哦[加油加油]
点赞 200
评论 7
全部评论
推荐
最新
楼层
还没有回复哦~
相关推荐
11-18 21:07
上海交通大学 产品经理
Offer篇 谈薪时hr压价怎么应对
回答这个问题前,先说说薪资基本知识。首先,薪水是怎么确定的?通常公司按照岗位,职级和带宽来定。销售岗和产品岗薪资不同,职级5级和6级薪资不同,即使同样的岗位和职级,薪资也可能不同,因为很多公司使用带宽来定薪,例如都是校招生,有sp或者ssp之分,都是10级开发岗,从9级晋升到10级同学通常比社招10级同学薪资低点。其次,薪资要校招和社招分开看。校招属于公司团购人力资源,除非优秀同学去A成功薪资,大部分同学的薪资取决于岗位和职级,基本上统一定价。但是对于社招来说,要看具体岗位和确定职级,谈判的余地相对大点。下面分析谈薪时hr为啥要压价。hr作为公司职能部门,永远期望用相对低的成本招到市场上相对牛...
毕业求职不EMO
你今年的平均薪资是多少?
牛客创作赏金赛
点赞
评论
收藏
分享
11-19 21:33
Momenta_C++开发(实习员工)
我当上鹅孝子了!
部门:ieg 天美工作室群 游戏客户端开发timeline:2024.11.02 投递2024.11.02 测评2024.11.06 一面2024.11.11 二面2024.11.14 hr面+云证+录用评估2024.11.19 oc2024.11.19 offer 已接鹅孝子启动!面经等我整理完再发
点赞
评论
收藏
分享
10-15 22:27
已编辑
门头沟学院 C++
直接被华为判死刑辣🤓
10月15日发短信让我投 客户经理 哈哈哈哈已投,蹲一手————————————丸辣,直接判死刑啦 #华为#
罗格镇的小镇做题家:
我投了hr打电话来说学历太低了不符合要求,建议投荣耀,结果荣耀也投了一定水花没有
,非本211硕
投递华为等公司10个岗位
点赞
评论
收藏
分享
11-05 15:21
西北大学 嵌入式软件开发
破案了,我说华子咋一直没理我😨 #华为#
totoroyyw:
千年老妖😂
投递华为等公司10个岗位
点赞
评论
收藏
分享
昨天 11:15
已编辑
字节跳动_研发(实习员工)
[已OC]26届实习 腾讯IEG客户端开发面试记录
浅记录~前面好多问的啥已经忘记了10.22 一面 1h10min1、架构设计2、单例模式3、多线程编程4、八股...5、OC/C++6、操作系统7、哈希表8、算法:开N次方(考虑代码健壮性和精度)10.24 二面 45min1、计算机基础2、原码、补码3、图片压缩格式4、各种形式的编解码5、算法题:搜索旋转数组10.31 三面 30min1、看过的源码2、系统对线程管理,如何分配资源3、计算机网络4、内存管理5、拷打项目6、算法:...
查看19道真题和解析
点赞
评论
收藏
分享
点赞成功,聊一聊 >
点赞
收藏
评论
分享
回复帖子
提到的真题
返回内容
全站热榜
1
...
成都 Java 社招面经(5年经验)
1.4W
2
...
我与阿里
1.1W
3
...
牛客创作赏金赛:首发动态,100%拿现金!
8986
4
...
秋招是时候收官了
6728
5
...
秋招颗粒无收,我要何去何从
5601
6
...
我的秋招结束了,五年前的我会想到这一切吗
5345
7
...
26日常实习小红书面经
5202
8
...
收到offer了!!!!
5195
9
...
发达喽,牛客居然请来了TA为我颁奖!遥遥领先!
4611
10
...
11.9 同程一面(JAVA、逆向 -北京)
4187
正在热议
#
晒一晒我的offer
#
9707187次浏览
104825人参与
#
机械只有读研才有出路吗?
#
7935次浏览
103人参与
#
北方华创开奖
#
21085次浏览
244人参与
#
地方国企笔面经互助
#
1951次浏览
6人参与
#
滴滴求职进展汇总
#
78846次浏览
688人参与
#
考研失败就一定是坏事吗?
#
36315次浏览
355人参与
#
机械人,签完三方你在忙什么?
#
23036次浏览
119人参与
#
总结:哪家公司面试体验感最差
#
23522次浏览
115人参与
#
机械应届生薪资要多少才合适?
#
11783次浏览
55人参与
#
学历or实习经历,哪个更重要
#
39092次浏览
280人参与
#
选完offer后,你后悔学本专业吗
#
6663次浏览
43人参与
#
查收我的offer竞争力报告
#
13385次浏览
191人参与
#
机械人怎么评价今年的比亚迪
#
40915次浏览
141人参与
#
应届生被毁约被毁意向了怎么办
#
24142次浏览
230人参与
#
00后45度躺现状
#
33802次浏览
297人参与
#
没有合适的工作,你会先找个干着,还是考公考研
#
35349次浏览
392人参与
#
秋招OC许愿
#
224185次浏览
1855人参与
#
如果能重来,就业or读研你选哪个?
#
45343次浏览
334人参与
#
大疆求职进展汇总
#
402744次浏览
2869人参与
#
实习,投递多份简历没人回复怎么办
#
2381984次浏览
34167人参与
#
双非能在秋招上岸吗?
#
99215次浏览
770人参与
牛客网
牛客企业服务