CRSF (Cross Site Request Forgery 跨站請求偽造)是一種常見的攻擊手法,它會強迫使用者在他們已經驗證身分的網站中,執行某些惡意的偽造操作,因為已經驗證過該使用者,所以網站就會當作是原操作者。
我們大部分的網站都是cookie或session進行登入及驗證,這樣在使用者成功登入驗證後,之後的動作就不需要再重複驗證身分。CRSF就是利用這個機制的漏洞。
A網站:攻擊目標網站,可能為某銀行
B網站:惡意網站
加上驗證
在針對比較危險的操作,可以再增加一些驗證,像是圖形驗證碼、簡訊驗證碼等。
檢查refer欄位
確認需求的來源。http中有個referer欄位可以記錄請求從哪個網站發出。只要不是銀行網站發出的請求,網站一律不接受。
https://medium.com/@Tommmmm/csrf-%E6%94%BB%E6%93%8A%E5%8E%9F%E7%90%86-d0f2a51810ca
https://www.explainthis.io/zh-hant/swe/what-is-csrf
https://gcdeng.com/blog/five-ways-to-defend-against-CSRF-attacks