現代的網絡瀏覽器提供了很多的安全功能,旨在保護瀏覽器用戶免受各種各樣的威脅,如安裝在他們設備上的惡意軟件、監聽他們網絡流量的黑客以及惡意的釣魚網站。
-
Frame選項
在你的網站上設置X-Frame-Options頭部可以保護你的網站內容被別人包含在一個iframe中,也就是Html的框架中,如果別人用iframe包含了你的網站頁面,他們就可能強迫用戶在你網站某個部分點擊隱藏在iframe中惡意代碼,比如clickjacking攻擊。將這個選項設置為DENY是完全堵塞在一個框架中顯示你的網站,SAMEORIGIN設置則是框架中只能顯示來自同一個服務器的內容,而ALLOW-FROM則是你規定的白名單。
Nginx中編輯nginx.conf ,在server段加入:
add_header X-Frame-Options "SAMEORIGIN";
使用Web開發工具,或HTTP Header online tool 能夠看到如下:
XSS審計
跨站腳本Cross-site scripting (XSS)是最普遍的危險攻擊,經常用來注射惡意代碼到你的應用以獲得登錄用戶的數據,或者利用優先權執行一些動作,設置X-XSS-Protection能保護你的網站免受跨站腳本的攻擊。
Nginx在nginx.conf的server段中加入:
add_header X-XSS-Protection "1; mode=block";
3.Content Type選項
一些瀏覽器非常聰明,會猜測默認的數據傳輸內容,比如即使服務器說這是一個普通文本文件,瀏覽器也會當成一個HTML文件渲染輸出顯示,這會被黑客用來導向不信任的Javacript代碼,設置X-Content-Type-Options為nosniff ,就是強迫瀏覽器尊重服務器端指定的文件類型。
在Nginx.conf的server段加入:
add_header X-Content-Type-Options nosniff;
4.HTTP Strict Transport Security
阻止瀏覽器拒絕被黑客從HTTPS切換到HTTP等不安全的網址下載內容,HSTS頭部選項會強迫用戶開始通過HTTPS連接時,以后的連接都是通過HTTPS。
在Nginx.conf的server段加入:
add_header Strict-Transport-Security "max-age=31536000; includeSubdomains;";
Public Key Pinning Extension for HTTP
該選項只適用于HTTPS,,第一次這個頭部信息不做任何事,一個用戶加載你的站點,它會注冊你的網站使用的證書,阻止你的用戶瀏覽器使用假裝是你的網站證書但不一樣從而連接到惡意服務器,保護你的用戶免受能夠創建任何域名證書的黑客攻擊。Content Security Policy
內容安全策略(CSP)列出你網站允許使用的所有授權的域名和資源,如果用戶加載一個黑客注入惡意資源的頁面,瀏覽器只會加載你的頁面,阻止黑客資源加載,該項應該對中國電信 移動 聯通 長城寬帶等ISP惡意網頁劫持有阻止作用。
由于該內容較多,可以到http://cspisawesome.com/幫助你自動生成配置,然后在Nginx.conf加入。
在Nginx.conf的server段加入:
add_header Content-Security-Policy "default-src 'self'; script-src 'self' 'unsafe-inline' 'unsafe-eval' https://ssl.google-analytics.com https://assets.zendesk.com https://connect.facebook.net; img-src 'self' https://ssl.google-analytics.com https://s-static.ak.facebook.com https://assets.zendesk.com; style-src 'self' 'unsafe-inline' https://fonts.googleapis.com https://assets.zendesk.com; font-src 'self' https://themes.googleusercontent.com; frame-src https://assets.zendesk.com https://www.facebook.com https://s-static.ak.facebook.com https://tautt.zendesk.com; object-src 'none'";
7.Cookie Protection
如果你的cookie帶有用戶的授權信息,該項能夠保護你的Cookie的安全性,有兩種:
- HttpOnly,會阻止XSS攻擊將你的用戶cookie發給黑客
2.Secure屬性能讓Cookie通過HTTPS連接,而不是HTTP,這樣,能夠訪問你的網絡的黑客無法讀取未加密的Cookie。