iT邦幫忙

0

C# webform - 弱點Cross-Site Request Forgery 處理方式

  • 分享至 

  • xImage
<body style="background-color: lightcyan;">
    <div class="container col-sm-12 col-xs-12">
        <div class="row" >
            <form id="form1" runat="server" class=" form-horizontal" autocomplete="off">

Abstract:
在 Login.aspx 中第 34 行的表單發佈,必須包含特定使用者機密,以避免攻擊者作出未經授權的要求。
Explanation:
防禦跨網站偽造要求 (CSRF) 弱點會在以下情況中出現:

  1. Web 應用程式使用了階段作業 Cookie。
  2. 應用程式在回應 HTTP 要求時,沒有驗證該要求是否經使用者同意產生

處理方式:試著加入Token
參考網址如下
https://www.cnblogs.com/n-pei/p/3682665.html
但是會出現
https://ithelp.ithome.com.tw/upload/images/20221111/20154588oa1OWOeOfg.png
請問哪裡有問題 還是有別種處理方法 謝謝

johncoc iT邦新手 3 級 ‧ 2022-11-11 17:50:45 檢舉
那段錯誤是說你沒有value那條屬性,檢查一下那個元素有沒有value屬性
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

1 個回答

0

就正規而言,最好是寫真正的CSRF來處理。

但如果單純要應付弱掃軟體的話。
可在表單內插入

<input type="hidden" name="_csrf" value="{自已生個隨機值}" />

大多數都可以被帶過。(但某些檢查還是會過不了,因為它會真的帶值過去查看)

不過我記得 .net 有自帶的CSRF處理的方式。
但這點就比較抱歉,我不是 .net 派。所以不太清楚怎麼處理。

我要發表回答

立即登入回答