隐私侵犯肩膀冲浪强化

时间:2018-02-05 07:22:09

标签: c# .net fortify

.net中的Web应用程序。在我的应用程序中,我有一个名为密码的属性,但是在强制要求下它会引发问题"隐私侵犯肩膀冲浪"。有人告诉我如何解决这个问题:)

    private string _PasswordAnswer = "";

    [DataMember]
    public string PasswordAnswer{ 
        get
        { 
                        if(_PasswordAnswer == null) _PasswordAnswer = string.Empty;
                        return this._PasswordAnswer;
        }
        set
        {
            if(value != this._PasswordAnswer)
            {
                NotifyPropertyChanging("PasswordAnswer");
                this._PasswordAnswer = value;
                NotifyPropertyChanged("PasswordAnswer");
            }
        } 
    }

2 个答案:

答案 0 :(得分:0)

您必须将DataType属性添加到属性中,如下所示:

[Required]
[DataType(DataType.Password)]
public string Password { get; set; }

答案 1 :(得分:0)

在我看来,这更多是代码质量的改进(https://docs.microsoft.com/en-us/dotnet/api/system.componentmodel.dataannotations.datatype?view=netframework-4.6.2),而不是安全性。

我在Fortify项目之一中也遇到了这个问题,我将其称为误报。即使他们在文档中有类似的示例,他们也写道,纯文本将需要记录/公开(https://vulncat.fortify.com/en/detail?id=desc.dataflow.java.privacy_violation#C%23%2FVB.NET%2FASP.NET),而不仅仅是在对象模型中更改“ DataType”