這次遇到的問題是客戶使用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" 不存在。訊息

這時候只要把上方兩種方法一起使用即可解決

文章標籤
全站熱搜
創作者介紹
創作者 南宮洛 的頭像
南宮洛

南宮洛的海盜窩

南宮洛 發表在 痞客邦 留言(0) 人氣(0)