這次遇到的問題是客戶使用Checkmarx弱掃掃出CSRF漏洞
網路上可以查詢到兩種方法
兩種方法都要在Controller.cs中對應的Action加入[ValidateAntiForgeryToken]
第一種方法是在頁面上加上@Html.AntiForgeryToken()
第二種方法適用Ajax
在Function內加入var form = ('yourformname');
var token = $('input[name="__RequestVerificationToken"]',form).val();
在$.ajax({});中的data裡加入__RequestVerificationToken:token
最近遇到的狀況是
運用這兩種方法後弱掃的CSRF漏洞會消失
但按鈕按下後會跳出需要的反仿冒表單欄位 "__RequestVerificationToken" 不存在。訊息
這時候只要把上方兩種方法一起使用即可解決
文章標籤
全站熱搜

留言功能已依作者設定調整顯示方式