web渗透--51--WebSockets安全测试

1、WebSockets概述

传统的HTTP协议只允许每个TCP连接一个请求/响应,这是一个半双工的交互模式。HTML5 WebSockets允许客户端/服务器建立一个 “全双工” 通信通道,从而允许客户端和服务器真正实现异步通信。WebSocket通过HTTP进行初始的 “升级” 握手,从那时起,所有通信都通过TCP通道并使用frames。

服务器负责验证在初始的HTTP WebSocket握手中的源标头,如果服务器不对此进行验证,那么WebSocket的服务器可以接受来自任何源的连接。这可能允许攻击者与WebSocket服务器进行跨域通信。

保密性和完整性

WebSocket可以用在通过未加密的TCP或加密的TLS。使用未加密的WebSockets方案:ws://URI(默认端口80),使用加密(TLS)的WebSockets方案:wss://URI(默认端口443)。

认证

WebSockets不处理身份认证,而是使用常规的应用程序的身份验证机制,例如cookies,HTTP身份验证或TLS身份验证。

授权

WebSocket不处理授权,而是使用应用程序的授权机制。

输入处理

与来自不受信任来源的任何数据一样,需要正确过滤和编码。

2、测试方法

确认应用程序使用WebSockets

1、检查客户端代码。ws://wss:// URI方案。
2、使用Google Chrome浏览器的开发人员工具来查看网络的WebSocket通信。
3、使用ZAP的WebSocket标签。

你可能感兴趣的:(web渗透,web安全,渗透测试,OWASP安全测试)