web security

Title Summary

跨站請求偽造(CSRF)

web csrf web security

跨站請求偽造(英語:Cross-site request forgery),也被稱為 one-click attack 或者 session riding,通常縮寫為 CSRF 或者 XSRF, 是一種挾制用戶在目前已登入的Web應用程式上執行非本意的操作的攻擊方法。跟跨網站指令碼(XSS)相比,XSS 利用的是用戶對指定網站的信任,CSRF 利用的是網站對用戶網頁瀏覽器的信任。 手法 假如一家銀行用以執行轉帳操作的URL位址如下: http://www.examplebank.com/withdraw?account=AccoutName&amount=1000&for=PayeeName 那麼,一個惡意攻擊者可以在另一個網站上放置如下程式碼: ”> 如果有帳戶名為Alice的用戶存取了惡意站點,而她之前剛存取過銀行不久,登入資訊尚未過期,那麼她就會損失1000資金。 透過例子能夠看出,攻擊者並不能通過CSRF攻擊來直接獲取用戶的帳戶控制權,也不能直接竊取用戶的任何資訊。他們能做到的,是欺騙用戶瀏覽器,讓其以用戶的名義執行操作。 CSRF wiki CSRF cookie與httpOnly

Http Cookie

web http cookie web security

Secure和HttpOnly httpOnly flag: 有設定時,Cookie只限被伺服端存取,無法在用戶端讀取。 secure flag: 有設定時,Cookie只能透過https的方式傳輸。 範例: HTTP/2.0 200 OK Set-Cookie: id=a3fWa; Expires=Wed, 21 Oct 2015 07:28:00 GMT; Secure; HttpOnly https://www.ajoshow.com/2017/07/19/201707192223/ https://developer.mozilla.org/en-US/docs/Web/HTTP/Cookies#Secure_and_HttpOnly_cookies

Http安全性Header

web http header web security

X-Frame-Options HTTP回應標頭 (header) 用來指示文件是否能夠載入<frame>, <iframe>以及<object>,網站可以利用 X-Frame-Options 來確保本身內容不會遭惡意嵌入道其他網站、避免 clickjacking 攻擊 範例: HTTP/2.0 200 OK X-Frame-Options: DENY https://developer.mozilla.org/zh-TW/docs/Web/HTTP/X-Frame-Options X-XSS-Protection 可在檢測到反映的跨站點腳本(XSS)攻擊時阻止頁面加載 範例: HTTP/2.0 200 OK X-XSS-Protection: 1; mode=block https://developer.mozilla.org/zh-TW/docs/Web/HTTP/Headers/X-XSS-Protection X-Content-Type HTTP回應標頭 (header) 用來指示該標記MIME類型的Content-Type標題不應該被改變,並且被遵循 範例: HTTP/2.0 200 OK X-Content-Type-Options: nosniff https://developer.mozilla.org/zh-TW/docs/Web/HTTP/Headers/X-Content-Type-Options