"Client Side Only Validation" 部分 Class-Checkmarx 漏洞 - 修复

"Client Side Only Validation" in Partial Class-Checkmarx Vulnerability - Remediation

通过 Checkmarx 工具扫描代码库,我遇到了“仅客户端验证”漏洞,在使用部分 class 的任何地方都会提出这一点。

第 1 点:

Imports System.Data
Imports System.Data.SqlClient
Imports System.Security.Cryptography
Partial Class Frm_ChangePwd               //Checkmarx points to this line as vulnerability
    Inherits System.Web.UI.Page

第 2 点:

Imports System.Data
Imports System.Data.SqlClient
Imports System.Security.Cryptography
Partial Class Frm_changepassword        //Checkmarx points to this line as vulnerability
    Inherits System.Web.UI.Page

Checkmarx 还给出了这个细节“没有找到服务器端验证 [代码文件路径]\Frm_changepassword.aspx.vb 文件,仅使用客户端验证是不够的,因为它很容易绕过”

每当使用部分 class 时,Checkmarx 都会提出这个问题,但我无法理解我究竟应该做什么来补救这一点。

出现此发现是因为 Checkmarx 在您的代码中没有看到任何服务器端验证器。具体来说,它会查找 Page.IsValid 属性。我建议使用 属性:

添加验证检查
Page.Validate()

If Page.IsValid = True Then
....

Else
....
End If