首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

WebSocket安全性分析

websocket简介 WebSocket 是HTML5一种新的网络传输协议,位于 OSI 模型的应用层,可在单个TCP连接上进行全双工通信。...WebSocket通信建立过程 websocket通常是由客户端JavaScript脚本创建 var ws = new WebSocket("wss://normal-website.com/chat...在现代应用程序中,通常使用 JSON 在 WebSocket 消息中发送结构化数据。 WebSocket使用场景 基于WebSocket全双工、延迟的特性,应用场景比较广泛。...聊天 弹幕 协同编辑 股票报价实施更新 位置更新 直播实况段落的首行要 WebSocket安全性分析 websocket仅仅是web程序中的一种通信协议,并不会解决web应用中存在的安全问题。...3.基于webSocket的CSRF漏洞(跨域请求/CSWSH) 该漏洞全称叫做Cross-site WebSocket Hijacking,跨站点WebSocket劫持漏洞。

27210

【译】 WebSocket 协议第十章——安全性考虑(Security Considerations)

概述 本文为 WebSocket 协议的第九章,本文翻译的主要内容为 WebSocket 安全性相关内容。 10 安全性考虑(协议正文) 这一章描述了一些 WebSocket 协议的可用的安全性考虑。...这一章的小节描述了这些特定的安全性考虑。...10.5 WebSocket 客户端认证 这个协议在 WebSocket 握手时,没有规定服务端可以使用哪种方式进行认证。...10.6 连接保密性和完整性 连接保密性是基于运行 TLS 的 WebSocket 协议(wss 的 URLs)。WebSocket 协议实现必须支持 TLS,并且应该在与对端进行数据传输时使用它。...10.8 在 WebSocket 握手中使用 SHA-1 在这个文档中描述的 WebSocket 握手协议是不依赖任意 SHA-1 的安全属性,流入抗冲击性和对第二次前映像攻击的抵抗力(就像 RFC4270

1.9K30
您找到你想要的搜索结果了吗?
是的
没有找到

【译】 WebSocket 协议第十章——安全性考虑(Security Considerations)

概述 本文为 WebSocket 协议的第九章,本文翻译的主要内容为 WebSocket 安全性相关内容。 10 安全性考虑(协议正文) 这一章描述了一些 WebSocket 协议的可用的安全性考虑。...这一章的小节描述了这些特定的安全性考虑。...10.5 WebSocket 客户端认证 这个协议在 WebSocket 握手时,没有规定服务端可以使用哪种方式进行认证。...10.6 连接保密性和完整性 连接保密性是基于运行 TLS 的 WebSocket 协议(wss 的 URLs)。WebSocket 协议实现必须支持 TLS,并且应该在与对端进行数据传输时使用它。...10.8 在 WebSocket 握手中使用 SHA-1 在这个文档中描述的 WebSocket 握手协议是不依赖任意 SHA-1 的安全属性,流入抗冲击性和对第二次前映像攻击的抵抗力(就像 RFC4270

82340

理论联系实际:从零理解WebSocket的通信原理、协议格式、安全性

详解(二):技术原理、代码演示和应用案例》 《WebSocket详解(三):深入WebSocket通信协议细节》 《WebSocket详解(四):刨根问底HTTP与WebSocket的关系(上篇)》 《...WebSocket详解(五):刨根问底HTTP与WebSocket的关系(下篇)》 《WebSocket详解(六):刨根问底WebSocket与Socket的关系》 3、更多资料 Web端即时通讯新手入门贴...比如反向代理前后收到两次ws连接的升级请求,反向代理把第一次请求的返回给cache住,然后第二次请求到来时直接把cache住的请求给返回(无意义的返回); 5)Sec-WebSocket-Key主要目的并不是确保数据的安全性...11、数据掩码的作用 WebSocket协议中,数据掩码的作用是增强协议的安全性。但数据掩码并不是为了保护数据本身,因为算法本身是公开的,运算也不复杂。...《理论联系实际:从零理解WebSocket的通信原理、协议格式、安全性》 >> 更多同类文章 …… [2] 开源Web端实时音视频技术WebRTC的文章: 《开源实时音视频技术WebRTC的现状》

1.5K20

WebSocket

WebSocket 使得客户端和服务器之间的数据交换变得更加简单,允许服务端主动向客户端推送数据。...HTML5 定义的 WebSocket 协议,能更好的节省服务器资源和带宽,并且能够更实时地进行通讯 图解 三、前端WebSocket使用 创建 WebSocket 对象 var Socket =...new WebSocket(url, [protocol] ); WebSocket 事件 事件 事件处理程序 描述 open Socket.onopen 连接建立时触发 message Socket.onmessage...实例说明 WebSocket 协议本质上是一个基于 TCP 的协议 为了建立一个 WebSocket 连接,客户端浏览器首先要向服务器发起一个 HTTP 请求,这个请求和通常的 HTTP 请求不同,包含了一些附加头信息...,其中附加头信息"Upgrade: WebSocket"表明这是一个申请协议升级的 HTTP 请求,服务器端解析这些附加的头信息然后产生应答信息返回给客户端,客户端和服务器端的 WebSocket 连接就建立起来了

1.2K10

WebSocket

此改进为 Jenkins 带来了实验性的 WebSocket 支持,可在连接入站代理程序或运行 CLI 时使用。WebSocket 协议允许通过 HTTP(S)端口进行双向交互式通信....使用 WebSocket,现在可以在存在反向代理的情况下更简单地连接入站代理:如果 HTTP(S)端口已在提供流量,则大多数代理将允许 WebSocket 连接而无需其他配置。...可以在代理配置中启用 WebSocket 模式,并且即将推出 Kubernetes 插件中对基于 Pod 的代理的支持。...Jenkins 2.217 提供了一个新的 webSocket CLI 模式,该模式避免了这些问题。再次说明,您将需要下载新版本的 jenkins-cli.jar 才能使用此模式。...已经针对 Kubernetes 实现示例(包括 OpenShift)对 WebSocket 代码进行了测试,但是很可能仍然存在一些 bugs 和局限性,并且尚未测试重构建负载下代理的可伸缩性。

2.2K20

WebSocket

WebSocketWebSocket和HTTP一样是应用层的协议。但是WebSocket是一种双向通信协议,是一种有状态协议。...与HTTP不同的是,Websocket是一种有状态的协议,在进行通讯前需要先创建连接(发送一个附加请求头信息(Upgrade:WebSocket)的HTTP协议),连接建立完成后双方就可以自由(使用TCP...var ws = new WebSocket(url); url格式: 不加密:ws://ip地址:端口号/资源地址; 加密:wss://ip地址:端口号/资源地址; websocket事件 事件 使用...描述 open websocket对象.onopen 连接时触发 message websocket对象.onmessage 客户端接收服务端数据时触发 error websocket对象.onerror...通信错误时触发 close websocket对象.onclose 连接关闭时触发 websocket方法 方法 描述 send() 使用连接发送数据 close() 关闭连接 服务端 服务端使用

25030

websocket

websocket 加密传输 浏览器与服务端建立连接之后默认不断开,两端都可以基于该链接收发消息 websocket协议诞生真正意义上实现了服务端给客户端推送消息 """ 1.2...内部原理 1.2.1原理 """ websocket内部原理大致可以分为两部分 1.握手环节:验证服务端是否支持websocket协议 浏览器访问服务端 浏览器会自动生成一个随机字符串...Sec-WebSocket-Key: kQHq6MzLH7Xm1rSsAyiD8g== Sec-WebSocket-Extensions: permessage-deflate; client_max_window_bits...:geventwebsocket tornado 默认就支持 二、django实现websocket 2.1注意事项 """ 强调: 并不是所有的后端框架默认都支持websocket...':URLRouter([ # websocket相关的url与视图函数对应关系 ]) }) 上述三步配置完成后,再次启动django,就会即支持http协议又支持websocket

2.9K30

WebSocket

WebSocketWebSocket和HTTP一样是应用层的协议。但是WebSocket是一种双向通信协议,是一种有状态协议。...与HTTP不同的是,Websocket是一种有状态的协议,在进行通讯前需要先创建连接(发送一个附加请求头信息(Upgrade:WebSocket)的HTTP协议),连接建立完成后双方就可以自由(使用TCP...是实时的双向通信,就不需要客户端发送请求来获取服务端状态,服务端可以主动推送最新状态 用图表示的话,就是下面这个样子: HTTP长连接: WebSocket: 说明 客户端(浏览器) 创建websocket...var ws = new WebSocket(url); url格式: 不加密:ws://ip地址:端口号/资源地址; 加密:wss://ip地址:端口号/资源地址; websocket事件...事件 使用 描述 open websocket对象.onopen 连接时触发 message websocket对象.onmessage 客户端接收服务端数据时触发 error websocket

1.3K20

WebSocket

WebSocket协议完全可以取代Ajax方法,用来向服务器端发送文本和二进制数据,而且还没有“同域限制”。 WebSocket不使用HTTP协议,而是使用自己的协议。...请求: GET / HTTP/1.1 Connection: Upgrade //表示浏览器通知服务器,如果可以,就升级到webSocket协议 Upgrade: websocket //表示将通信协议从...Protocols Connection: Upgrade Upgrade: websocket Sec-WebSocket-Accept: fFBooB7FAkLlXgRSz0BT3v4hq5s=...Sec-WebSocket-Origin: null Sec-WebSocket-Location: ws://example.com/ //表示进行通信的WebSocket网址 注意:WebSocket...客户端建立WebSocket流程: (0)检测浏览器是否支持WebSocket (1)握手协议成功以后,readyState就从0变为1,并触发open事件 (2)关闭WebSocket连接,会触发close

1.8K41

websocket

websocket websocket是为了解决HTTP协议中的一些问题。因为HTTP是无状态,短连接。 HTTP协议下,客户端主动连接服务端;客户端发起一次请求,服务端返回一次响应。...Sec-WebSocket-Accept: mXiTS1gdAOfW1eBr91jIGsv71J4= Sec-WebSocket-Accept 是经过服务器确认,并且加密过后的 Sec-WebSocket-Key...,Upgrade指明了升级的协议 Sec-WebSocket-Version: 13 这是告诉服务器所使用的websocket协议的版本 Sec-WebSocket-Key: iWGEKNbNdeLvB0OdelWHLA...客户端发生给服务器的扩展字段 以上过程都是利用http通信完成的,称之为websocket协议握手(websocket Protocol handshake),经过握手之后,客户端和服务端就建立了websocket...总结为websocket握手需要借助于http协议,建立连接后通信过程使用websocket协议。同时需要了解的是,该websocket连接还是基于我们刚才发起http连接的那个TCP连接。

1.2K20
领券