在一次漏洞悬赏活动中,我发现了一个使用WebSocket连接的应用,所以我检查了WebSocket URL,发现它很容易受到CSWH的攻击(WebSocket跨站劫持)
有关CSWH的更多详细信息,可以访问以下链接了解
https://www.christian-schneider.net/CrossSiteWebSocketHijacking.html
首先,我们假设一个应用是通过以下URL建立websocket连接的 wss://website.com
。关于验证URL是否存在CSWH漏洞可以遵循以下步骤:
- 在浏览器上打开Web应用并登录。
- 在新选项卡中输入
http://websocket.org/echo.html
,输入WebSocket URL并单击「连接」。
- 建立连接后,你必须能够从此页面向伺服器发送数据帧。接著,使用burpsuite的proxy捕获websocket数据帧进行调试,多次发送,查看伺服器如何响应。如果burp的回应和网页的回应一样,则表示目标很可能容易受到WebSocket跨站劫持的攻击