簡體   English   中英

如何防止 iframe 存儲的 XSS?

[英]How can prevent Stored XSS by iframe?

我使用 Extjs 和 JS 構建一個對話框,可以在其中顯示來自 DB 的 html 數據,該數據用iframe包裝,如下所示:

<iframe name="ext-gen568" frameborder="0" src="javascript:;" style="width: 514px; height: 189px;">
<html>
<head> ... </head>
<body>
<br><br>
<blockquote type="cite"> 
    <meta http-equiv="content-type" content="text/html; charset=UTF-8">
    <p>Hello</p>
    <video><source src="x" onerror="alert('xss')"></video>
</blockquote>
</body>
</html>
</iframe>

我嘗試將sandbox添加到iframe ,但它不起作用,XSS 警報仍然顯示。

  • 然后我嘗試更改為<iframe src='#'... sandbox> ,但 XSS 警報仍然顯示。
  • 我刪除了src或者只是在 <iframe src= '' <iframe src=''... sandbox>中設置了它,它得到了這個錯誤: DOMException: Blocked a frame with origin "mytestdomain" from accessing a cross-origin frame.

我應該怎么做才能處理我的問題?

非常感謝您的幫助。

通過為沙盒設置“允許同源”解決了該問題

<iframe sandbox="allow-same-origin" src="javascript:;"...></iframe>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM