IIS下的.net網(wǎng)站安全掃描提示:Strict-Transport-Security 請(qǐng)求頭配置錯(cuò)誤
IIS下的.net網(wǎng)站安全掃描提示:Strict-Transport-Security 請(qǐng)求頭配置錯(cuò)誤。 命中詳情:Missing Strict-Transport-Security Header
這是一個(gè)非常常見且重要的安全配置問題。Strict-Transport-Security(通常簡(jiǎn)稱為 HSTS)響應(yīng)頭是確保網(wǎng)站始終通過 HTTPS 訪問的關(guān)鍵安全機(jī)制。
問題解釋
Missing Strict-Transport-Security Header 意味著你的網(wǎng)站在 HTTPS 響應(yīng)中沒有告訴瀏覽器:“以后請(qǐng)只使用 HTTPS 來訪問我,不要再使用不安全的 HTTP。”
風(fēng)險(xiǎn):如果沒有這個(gè)頭,即使這次用戶通過 HTTPS 訪問了你的網(wǎng)站,下次他可能還是會(huì)直接輸入域名(如 www.example.com)或點(diǎn)擊一個(gè) HTTP 鏈接。瀏覽器默認(rèn)會(huì)使用 HTTP 協(xié)議訪問,這時(shí)如果你的服務(wù)器同時(shí)支持 HTTP 訪問,用戶就會(huì)通過明文傳輸連接,容易受到中間人攻擊。即使你設(shè)置了 HTTP 到 HTTPS 的重定向,在重定向發(fā)生前的那次 HTTP 請(qǐng)求依然是脆弱的。
解決方案(在 IIS 中配置)
有幾種方法可以在 IIS 中為 .NET 網(wǎng)站添加 HSTS 頭。推薦使用第一種方法,因?yàn)樗顦?biāo)準(zhǔn)、最靈活。
方法:在 web.config 文件中配置(推薦)
這是最常用且易于管理的方法。你只需要修改網(wǎng)站的 web.config 文件。
· 打開你的網(wǎng)站根目錄下的 web.config 文件。
· 找到 <system.webServer> 節(jié)點(diǎn)。如果不存在,就在 <configuration> 節(jié)點(diǎn)下創(chuàng)建它。
· 在 <system.webServer> 節(jié)點(diǎn)下添加或修改 <httpProtocol> 和 <customHeaders> 部分。
以下是完整的配置示例:
<?xml version="1.0" encoding="utf-8"?> <configuration> <system.webServer> <httpProtocol> <customHeaders> <!-- 添加 HSTS 響應(yīng)頭 --> <add name="Strict-Transport-Security" value="max-age=31536000; includeSubDomains; preload" /> </customHeaders> </httpProtocol> </system.webServer> </configuration>
配置參數(shù)解釋:
name="Strict-Transport-Security":指定要添加的響應(yīng)頭名稱。
value:包含 HSTS 策略指令。
max-age=31536000:(必需) 告訴瀏覽器在多少秒內(nèi)(31536000 秒 = 365 天)記住這個(gè)網(wǎng)站只使用 HTTPS。這是最重要的參數(shù)。
includeSubDomains:(可選但強(qiáng)烈推薦) 此策略也適用于所有子域名(如 api.example.com, blog.example.com)。如果你的所有子域名都支持 HTTPS,請(qǐng)務(wù)必加上。
preload:(可選) 這是一個(gè)更高級(jí)的特性。如果你加上這個(gè)指令,并且將你的域名提交到 HSTS Preload List,瀏覽器在首次訪問你的網(wǎng)站之前就知道必須使用 HTTPS。這是一個(gè)單向操作,撤銷非常困難,請(qǐng)謹(jǐn)慎使用。在測(cè)試階段,可以先不加 preload。
上一篇:IIS下的.net網(wǎng)站:加密會(huì)話(SSL)Cookie中缺少secure屬性
下一篇:SQL Server安裝后找不到SQL Server配置管理器,如何打開SQL Server配置管理器
- 在 IIS 服務(wù)上部署 SSL 證書后訪問資源出現(xiàn)404錯(cuò)誤
- 網(wǎng)站安全:IIS基于并發(fā)請(qǐng)求數(shù)阻止 IP 地址
- Windows服務(wù)器下隱藏IIS版本號(hào)
- IIS下的.net網(wǎng)站安全掃描提示:Strict-Transport-Security 請(qǐng)求頭配置錯(cuò)誤
- IIS下的.net網(wǎng)站:加密會(huì)話(SSL)Cookie中缺少secure屬性
- 網(wǎng)站安全設(shè)置:會(huì)話cookie中缺少HttpOnly屬性的修復(fù)
- IIS下強(qiáng)制https訪問的設(shè)置
- Nginx、Apache和IIS的防盜鏈設(shè)置
- 網(wǎng)站服務(wù)器:隱藏IIS的server版本信息
