網站必備的五大HTTP安全標頭
HTTP安全標頭是網站安全的基本組成部分。在超文本傳輸協議( Hypertext Transfer Protocol ,HTTP)的請求和響應消息中,協議頭部分的那些組件。HTTP安全標頭實施后,可防止XSS,代碼注入,clickjacking等。
當用戶通過客戶端瀏覽器訪問站點時,服務器使用HTTP響應頭進行響應。
站長可使用這些標頭進行通信并提高Web安全性。下面介紹的五個安全頭,它們將為您的網站提供一些急需的保護。
1、HTTP嚴格傳輸安全(HSTS)
如一個名為idcbest.com的網站,并且已安裝SSL / TLS證書,從HTTP遷移到HTTPS。但很多HTTPS網站,也可以通過HTTP來訪問。開發人員的失誤或者用戶主動輸入地址,都有可能導致用戶以HTTP訪問網站,降低了安全性。
此時,可通過HSTS解決問題,讓瀏覽器默認HTTPS跳轉,省去一次HTTP請求。另外,瀏覽器本地替換可以保證只會發送HTTPS請求,避免被劫持。
要使用HSTS,只需要在HTTPS網站響應頭中,加入代碼
- Strict-Transport-Security:max-age = <expire-time>
或
- Strict-Transport-Security:max-age = <expire-time>; includeSubDomains
或
- Strict-Transport-Security:max-age = <expire-time>; preload
2、內容安全策略(CSP)
HTTP內容安全策略響應標頭通過賦予網站管理員權限,管理網站允許加載的內容。換句話說,用戶可以將網站的內容來源列入白名單。
內容安全策略可防止跨站點腳本和其他代碼注入攻擊。雖然不能完全消除攻擊的可能性,但它確實可以將損害降至最低。目前大多數主流瀏覽器都支持CSP,因此兼容性不成問題。
代碼:
- Content-Security-Policy: <policy-directive>; <policy-directive>
3、跨站點腳本保護(X-XSS)
X-XSS頭部可以防止跨站腳本攻擊。Chrome,IE和Safari默認啟用XSS過濾器。此篩選器在檢測到跨站點腳本攻擊時不會讓頁面加載。
代碼:
- X-XSS-Protection: 0
- X-XSS-Protection: 1
- X-XSS-Protection: 1; mode=block
- X-XSS-Protection: 1; report=<reporting-uri>
4、X-Frame-Options
在Orkut時代,一種名為“點擊劫持”的欺騙技術非常流行。在這種技術中,攻擊者愚弄用戶點擊不在那里的東西。X-Frame-Options,是為了減少點擊劫持(Clickjacking)而引入的一個響應頭。這是通過禁用網站上存在的iframe來完成的。換句話說,它不會讓別人嵌入網站的內容。
句法:
- X-Frame-Options:DENY
- X-Frame-Options:SAMEORIGIN
- X-Frame-Options:ALLOW-FROM https://idcbest.com/
5、X-Content-Type-Options
互聯網上的資源有各種類型,通常瀏覽器會根據響應頭的Content-Type字段來分辨它們的類型。例如:”text/html”代表html文檔,”image/png”是PNG圖片,”text/css”是CSS樣式文檔。然而,有些資源的Content-Type是錯的或者未定義。這時,某些瀏覽器會啟用MIME-sniffing來猜測該資源的類型,解析內容并執行。
X-Content-Type標頭提供了針對MIME嗅探的對策。它指示瀏覽器遵循標題中指示的MIME類型。作為發現資產文件格式的功能,MIME嗅探也可用于執行跨站點腳本攻擊。
代碼:
- X-Content-Type-Options:nosniff