我正在嘗試做一個跨框架腳本攻擊PoC(https://www.owasp.org/index.php/Cross_Frame_Scripting)在我的工作顯示這種攻擊對任何版本的IE瀏覽器有多危險。 通過在IE8或更新版本上使用X-FRAME-OPTIONS: deny
標頭,可以輕鬆防止此攻擊。但是,如果每個開發包括所有Web服務器響應中的頭部,這將是非常好的。 使用下面的代碼,我可以看到帶有鍵碼的警告窗口,但是在目標頁面上的窗體的情況下,我看不到在窗體內按下的鍵的字母。框架onkeydown反饋
<script>
window.onkeydown = function() {
alert(window.event.keyCode);
}
</script>
<frameset onload="this.focus()" onblur="this.focus()">
<frame src="http://www.uol.com.br">
</frameset>
使用簡單的代碼下面我可以按下鍵,看看兩者(警告窗口和窗體中的字母)。
<script>
window.onkeydown = function() {
alert(window.event.keyCode);
}
</script>
<input>
第一個代碼塊中是否存在缺失的內容? 謝謝!
點擊劫持怎麼辦?當然,他們的攻擊面很小(只需點擊鼠標就能觸發有意義的狀態變化的頁面),但它們仍然與XSS截然不同。 – Aurand
我同意你的看法,但這是我的觀點:點擊頂起是點擊頂起,我不會稱之爲跨幀腳本。 XFS似乎混淆了幾種不同類型的攻擊之間的水域,而漏洞只屬於一個類別(xss,瀏覽器錯誤或點擊頂點)。我同意添加標題是一個好主意,儘管這可以在Web服務器級而不是應用程序完成。 – SilverlightFox
謝謝@SilverlightFox!我使用IE11測試了第一個代碼,並且我可以看到帶有按鍵的HTML代碼的警報窗口。我可以使用ajax發出請求並將密鑰代碼發送到惡意站點。問題在於我無法在輸入框中看到相應的字母,這意味着任何用戶都會認爲網站存在問題,因爲他/她無法看到他們正在輸入的內容。 –