描述: 目標服務器沒有返回一個X-Frame-Options頭。
X-Frame-Options HTTP響應頭是用來確認是否瀏覽器可以在frame或iframe標簽中渲染一個頁面,網站可以用這個頭來保證他們的內容不會被嵌入到其它網站中,以來避免點擊劫持。
危害: 攻擊者可以使用一個透明的、不可見的iframe,覆蓋在目標網頁上,然后誘使用戶在該網頁上進行操作,此時用戶將在不知情的情況下點擊透明的iframe頁面。通過調整iframe頁面的位置,可以誘使用戶恰好點擊iframe頁面的一些功能性按鈕上,導致被劫持。
解決方案:
修改web服務器配置,添加X-frame-options響應頭。賦值有如下三種:
(1)DENY:不能被嵌入到任何iframe或frame中。
(2)SAMEORIGIN:頁面只能被本站頁面嵌入到iframe或者frame中。(3)ALLOW-FROM uri:只能被嵌入到指定域名的框架中。也可在代碼中加入,在PHP中加入:
header('X-Frame-Options: deny');
防止某些重要網頁被其他網站框架導入,可以給頁面增加X-Frame-Options響應頭,這樣瀏覽器會依據X-Frame-Options的值來控制iframe框架的頁面是否允許加載顯示出來,IE下的效果如下(此內容無法再框架中顯示。為了幫助保護在此網站中輸入的信息安全,此內容的發行者不允許在框架中顯示該信息),其他非IE核心瀏覽器會顯示空白內容。

動態頁添加X-Frame-Options響應頭示例代碼
asp
<%response.AddHeader "X-Frame-Options","Deny"%>
Asp.Net
Response.AddHeader("X-Frame-Options", "Deny");PHP
header('X-Frame-Options:Deny');如果確認你整個網站都不能被框架,可以直接設置web服務器,增加X-Frame-Options響應頭。IIS如下圖所示,增加http頭

X-Frame-Options響應頭可用值有
DENY:瀏覽器拒絕當前頁面加載任何Frame頁面 SAMEORIGIN:frame頁面的地址只能為同源域名下的頁面 ALLOW-FROM:origin為允許frame加載的頁面地址瀏覽器對X-Frame-Options響應頭的支持如下
瀏覽器 版本支持 IE 8.0+ Firefox 3.6.9+ Opera 10.50+ Safari 4.0+ Chrome 4.1.249.1024+
更詳細的教程建議大家查看這篇文章:http://www.jb51.net/article/109436.htm
新聞熱點
疑難解答