Logo
HTTP安全標頭 介紹5種設定保護網站

什麼是安全標頭?

安全標頭是瀏覽器必須遵循的指令,它們通過 HTTP 標頭響應傳遞。

HTTP 標頭是 Web 服務器對嘗試訪問網頁的瀏覽器的響應,標頭響應傳達諸如網頁不存在時的信息(400 響應標頭)。

配置方法 → 內容安全策略 (CSP)快速參考指南

5 個安全標頭

  • 內容安全策略(CSP):選內容安全策略 (CSP) 有助於保護網站和網站訪問者免受跨站腳本 (XSS) 攻擊和數據注入攻擊。

    CSP

    防跨站腳本 (XSS) 攻擊

    → 當黑客利用安全漏洞將惡意腳本上傳到網站,然後將其下載到受害者的瀏覽器時,就會發生跨站腳本 (XSS) 漏洞。

    XSS 攻擊利用內容管理系統中的缺陷,由於用戶輸入文件清理不足,該系統允許注入意外輸入。

    例如 : 通常,應該對電子郵件表單進行編碼以期望受限輸入。

    編碼不當的表單可能會允許一些其他輸入,從而導致惡意文件的注入。 XSS 攻擊可用於竊取密碼或作為多步驟黑客事件的一部分。

    但是,設置可能有點棘手,因為您必須列出從域外部下載的所有腳本和資源,以便將它們列入白名單。
    設定方法 → 推薦的幾種常見CSP設定
  • 嚴格傳輸安全標頭 (HSTS):Strict-Transport-Security 標頭也稱為 HTTP 嚴格傳輸安全標頭 (HSTS)。

    許多網站只有從 HTTP 到 HTTPS 的 301 重定向,但這還不足以保證網站的安全,因為該網站仍然容易受到中間人攻擊。 HSTS 可防止攻擊者將 HTTPS 連接降級為 HTTP 連接,從而允許攻擊者利用不安全的重定向。

    HTTPS 降級的三種原因:當用戶在 URL 欄中輸入“gsa.gov”時,瀏覽器默認使用 http://。
    用戶可能會點擊錯誤使用 http:// URL 的舊鏈接。
    用戶的網絡可能是敵對的並主動將 https:// 鏈接重寫為 http://。

    HSTS 標頭通過強制瀏覽器絕對不接受 HTTP 連接來防止這種情況發生。


    以下是獲得 Chrome HSTS 預加載資格所需的四個要求:- 提供有效證明。
    - 如果您正在偵聽端口 80,則在同一主機上從 HTTP 重定向到 HTTPS。
    - 通過 HTTPS 為所有子域提供服務。
    - 特別是,如果 www 子域存在 DNS 記錄,則您必須支持該子域的 HTTPS。


    在基本域上為 HTTPS 請求提供 HSTS 標頭:- max-age 必須至少為 31536000 秒(1 年)。
    - 必須指定 includeSubDomains 指令。
    - 必須指定 preload 指令。
    - 如果您正在提供服務來自HTTPS 站點的附加重定向,該重定向仍必須具有HSTS 標頭(而不是其重定向到的頁面)。
  • X-內容類型-選項: 此安全標頭可阻止可能發生的某些類型的攻擊,例如通過惡意用戶生成的內容。

    瀏覽器可以"sniff 探知"內容是否為圖像 (.jpg)、電影 (.mp4)、文本、HTML、JavaScript 以及可從網站下載的其他類型的內容。

    事實上,"sniff 探知" 允許瀏覽器下載網頁元素並正確呈現它們是一種預設,我們要將它改為"nosniff不能探知",特別是在瀏覽器呈現元素所需的元數據丟失的情況下,允許sniff會造成資料被竄改。

    被黑客竄改的嚴重後果就是: 黑客會試圖欺騙瀏覽器,讓其認為有害的JavaScript 文件實際上是圖像,從而允許瀏覽器下載該文件然後執行該文件,從而給該網站訪問者帶來許多負面結果,尤其是所謂的路過式下載攻擊、網址被轉跳到釣魚網站。 因此要設定-不能探知 :
    X-Content-Type-Options: nosniff
  • 推薦人政策:Referrer-Policy 標頭的目的是允許網站發布者控制當網站訪問者單擊鏈接訪問另一個網站時發送哪些信息。

    使用 Referrer-Policy 標頭可以發送八個指令: eferrer-Policy: no-referrer.
    推薦人政策:無推薦人。

    Referrer-Policy: no-referrer-when-downgrade.
    推薦人政策:降級時無推薦人。

    Referrer-Policy: origin.
    推薦人政策:起源。

    Referrer-Policy: origin-when-cross-origin.
    推薦人政策:跨源時的源。

    Referrer-Policy: same-origin.
    推薦人政策:同源。

    Referrer-Policy: strict-origin.
    推薦人政策:嚴格來源。

    Referrer-Policy: strict-origin-when-cross-origin.
    推薦人政策:跨源時嚴格源。

    Referrer-Policy: unsafe-url.
    推薦人策略:不安全 url。

    常見的引薦來源網址策略設置是標頭
    no-referrer-when-downgrade
    這意味著引薦來源網址信息將發送到HTTPS 上的可信URL,但不會將引薦來源網址信息發送到不受信任的HTTP 網站。
  • X 框架選項:X-Frame-Options 安全標頭有助於阻止點擊劫持攻擊。 X-Frame-Options 標頭對於保護網站訪問者以及網站聲譽非常重要。

    全面禁止 : X-Frame-Options: DENY
    同源允許、外連禁止 : X-Frame-Options: SAMEORIGIN

如何實現安全標頭

設置安全標頭的方法有多種,其中一種流行的方法是使用 .htaccess 文件。 使用 .htaccess 文件的一個好處是它可以使發布者免於下載另一個插件。 編碼不良的插件可能會成為安全風險,因此最大限度地減少安裝的插件數量可能會很有用。

怎麼設定?

  • 主機商:部分主機商規定必須由他們技術人員設定安全標頭。
  • 網站託管商:託管網站介面尋找插件安裝設定。
  • 網頁設計公司:網站上線要先設定好。

重點整理

安全標頭有效防範部分攻擊,對於瀏覽器本身漏洞、電腦中毒、第三方Cpanel中毒...等是沒有效的,建議開啟防毒軟體掃毒,不要亂點連結,並且要常換密碼。

設定需要經過測試,他並非一個通用所有網站的設定,是需要為網站去編寫的,因為都是測試中的新政策,尚有一些cookie、karpasky、jquery、google bots、ga相容性問題,等待解決。