確保您的 Web 站點或 Web 應用安全是十分重要的,即便是代碼中很小的 bug 也可能致使隱私信息被泄露,黑客會嘗試偷竊數據。這些文檔提供信息幫助您使代碼更安全。此處列出的面向 Web 安全的文章提供的信息能夠幫助您保護站點及其代碼免受攻擊和數據竊取。php
CSP 的主要目標是減小和報告 XSS 攻擊 ,XSS 攻擊利用了瀏覽器對於從服務器所獲取的內容的信任。惡意腳本在受害者的瀏覽器中得以運行,由於瀏覽器信任其內容來源,即便有的時候這些腳本並不是來自於它本該來的地方。web
CSP經過指定有效域——即瀏覽器承認的可執行腳本的有效來源——使服務器管理者有能力減小或消除XSS攻擊所依賴的載體。一個CSP兼容的瀏覽器將會僅執行從白名單域獲取到的腳本文件,忽略全部的其餘腳本 (包括內聯腳本和HTML的事件處理屬性)。瀏覽器
Content-Security-Policy: policy
安全
一個網站管理者容許網頁應用的用戶在他們本身的內容中包含來自任何源的圖片, 可是限制音頻或視頻需從信任的資源提供者(得到),全部腳本必須從特定主機服務器獲取可信的代碼, 啓用發送違規報告,你須要指定 report-uri 策略指令,並提供至少一個URI地址去遞交報告:服務器
Content-Security-Policy: default-src 'self'; img-src *; media-src media1.com media2.com; script-src userscripts.example.com; report-uri http://reportcollector.example.com/collector.cgi
cookie
跨站腳本攻擊Cross-site scripting (XSS,爲了避免和CSS重名)是一種安全漏洞,攻擊者利用這種漏洞能夠在客戶端注入惡意代碼,能夠完成獲取cookie、session的讀取,還能夠利用腳本串改HTML內容,引導用戶進入第三方惡意站點,主要表現就是:session
目前常見的分類包括了:xss
主要是表如今客戶端的輸入內容【博客內容、表單提交、富文本編輯等】提交到服務端,被服務端保存,並在返回到客戶端進行展現;若是其中含有惡意腳本<script>alert(‘我是存儲型XSS攻擊')</script>
,並被客戶端插入到文檔流中,那麼惡意腳本會被執行,惡意腳本能夠完成讀取隱私數據、重定向、修改頁面展現結構等操做。web安全
反射型 XSS 只是簡單地把用戶輸入的數據 「反射」 給瀏覽器,這種攻擊方式每每須要攻擊者誘使用戶點擊一個惡意連接,或者提交一個表單時,惡意連接中的而已腳本參數或者表單提交的惡意腳本通過服務端的關聯,注入到了當前訪問的文檔流中,惡意腳本被執行,和存儲型同樣,惡意腳本均可以完成讀取隱私數據、重定向、修改頁面展現結構等操做。網站
這是一種純客戶端的攻擊,客戶端在處理頁面地址連接時將惡意腳本注入到了正常文檔流中,或者是編輯富文本的時候將它處賦值的含有惡意腳本的富文本插入到了文檔流中,致使惡意腳本的執行。一樣能夠完成讀取隱私數據、重定向、修改頁面展現結構等操做。
Secure; HttpOnly
,僅支持https鏈接和腳本沒法讀取。Set-Cookie: id=a3fWa; Expires=Wed, 21 Oct 2015 07:28:00 GMT; Secure; HttpOnly
跨站請求僞造(CSRF)是一種冒充受信任用戶,向服務器發送非預期請求的攻擊方式。例如,這些非預期請求多是經過在跳轉連接後的 URL 中加入惡意參數來完成:<img src="https://www.example.com/index.php?action=delete&id=123">
對於在 https://www.example.com 有權限的用戶,這個 <img> 標籤會在他們根本注意不到的狀況下對 https://www.example.com 執行這個操做,即便這個標籤根本不在 https://www.example.com 內亦可。