使用 X-Frame-Options 標頭來緩解幀嗅探問題
摘要
幀嗅探是一種利用瀏覽器功能竊取網站資料的攻擊技術。 允許其內容託管於跨域 IFRAME 的網頁應用程式可能面臨此攻擊。
管理員可以透過設定 IIS 發送 HTTP 回應標頭,防止內容被託管在跨域 IFRAME 中來減輕框架嗅探的問題。
其他資訊
X-Frame-Options 標頭可用來控制頁面是否能被放入 IFRAME。 由於 Framesniffing 技術依賴於能將受害者站點置於 IFRAME 中,網頁應用程式可以透過傳送適當的 X-Frame-Options 標頭來保護自己。
要配置 IIS 在特定站點的所有回應中加入 X-Frame-Options 標頭,請遵循以下步驟:
- 開放網際網路資訊服務 (IIS) 經理。
- 在左側的連結面板中,展開「網站」資料夾,選擇你想保護的網站。
- 雙擊功能列表中中間的 HTTP 回應標頭圖示。
- 在右側的動作面板中,點選新增。
- 在出現的對話框中,請在名稱欄位輸入 X-Frame-Options,並在 Value 欄位輸入 SAMEORIGIN。
- 按一下 [確定] 儲存變更。
如果你有其他站點需要這種配置,也請對那些站點重複步驟 2 到 6。
此變更將防止其他網域的 HTML 頁面在 IFRAME 中託管您的網站。 例如,如果 Contoso IT 部門將此變更套用於 http://contoso.com,http://fabrikam.com 頁面將無法在 IFRAME 中顯示 http://contoso.com 的內容。
你可以修改 X-Frame-Options 標頭的值,讓 http://fabrikam.com 在封鎖其他所有網域的同時,使用 frame http://contoso.com。 為此,將步驟5中的X-Frame-Options標頭值改為ALLOW-FROM http://fabrikam.com。
欲了解更多關於 X-Frame-Options 標頭的資訊,請參閱 這篇 MSDN 部落格文章。
要回退變更,請遵循以下步驟:
- 開放網際網路資訊服務 (IIS) 經理。
- 在左側的連結面板中,展開 Sites 資料夾,選擇你做了這項變更的網站。
- 在中間的功能清單中,雙擊 HTTP 回應標頭圖示。
- 在出現的標頭列表中,選擇 X-Frame-Options。
- 在右側的動作面板點擊「移除」。