<p></p>
<p><span style="font-size:14ptpx"><span style="color:
#24292e"><span style="background-color:
#ffffff"><span style="letter-spacing:0ptpx">说明:</span></span></span></span><br/></p><ul><li><span style="font-size:10.5ptpx"><span style="color:
#24292e"><span style="background-color:
#ffffff"><span style="letter-spacing:0ptpx">i)嵌入第三方 iframe 会有很多不可控的问题,同时当第三方 iframe 出现问题或是被劫持之后,也会诱发安全性问题</span></span></span></span></li><li><span style="font-size:10.5ptpx"><span style="color:
#24292e"><span style="background-color:
#ffffff"><span style="letter-spacing:0ptpx">ii)点击劫持攻击者将目标网站通过 iframe 嵌套的方式嵌入自己的网页中,并将 iframe 设置为透明,诱导用户点击。</span></span></span></span></li><li><span style="font-size:10.5ptpx"><span style="color:
#24292e"><span style="background-color:
#ffffff"><span style="letter-spacing:0ptpx">iii)禁止自己的 iframe 中的链接外部网站的JS</span></span></span></span></li><li><span style="font-size:14ptpx"><span style="color:
#24292e"><span style="background-color:
#ffffff"><span style="letter-spacing:0ptpx">预防方案:</span></span></span></span></li><li><span style="font-size:10.5ptpx"><span style="color:
#24292e"><span style="background-color:
#ffffff"><span style="letter-spacing:0ptpx">i)为 iframe 设置 sandbox 属性,通过它可以对iframe的行为进行各种限制,充分实现“最小权限“原则</span></span></span></span></li></ul><p><span style="font-size:10.5ptpx"><span style="color:
#24292e"><span style="background-color:
#ffffff"><span style="letter-spacing:0ptpx">ii)服务端设置 X-Frame-Options Header头,拒绝页面被嵌套,X-Frame-Options 是HTTP 响应头中用来告诉浏览器一个页面是否可以嵌入 <iframe> 中eg.</span></span></span></span><br/><br/>X-Frame-Options: SAMEORIGIN <br/><br/></p><ul><li><span style="font-size:10.5ptpx"><span style="color:
#24292e"><span style="background-color:
#ffffff"><span style="letter-spacing:0ptpx">SAMEORIGIN: iframe 页面的地址只能为同源域名下的页面</span></span></span></span></li><li><span style="font-size:10.5ptpx"><span style="color:
#24292e"><span style="background-color:
#ffffff"><span style="letter-spacing:0ptpx">ALLOW-FROM: 可以嵌套在指定来源的 iframe 里</span></span></span></span></li><li><span style="font-size:10.5ptpx"><span style="color:
#24292e"><span style="background-color:
#ffffff"><span style="letter-spacing:0ptpx">DENY: 当前页面不能被嵌套在 iframe 里</span></span></span></span></li><li><span style="font-size:10.5ptpx"><span style="color:
#24292e"><span style="background-color:
#ffffff"><span style="letter-spacing:0ptpx">iii)设置 CSP 即 Content-Security-Policy 请求头</span></span></span></span></li><li><span style="font-size:10.5ptpx"><span style="color:
#24292e"><span style="background-color:
#ffffff"><span style="letter-spacing:0ptpx">iv)减少对 iframe 的使用</span></span></span></span></li></ul><p><br/></p>