Asp.net mvc CWE-201:通过发送数据公开信息

Asp.net mvc CWE-201:通过发送数据公开信息,asp.net-mvc,vb.net,veracode,Asp.net Mvc,Vb.net,Veracode,大家好 我在VS2017上有一个Veracode绿灯扩展,我在下面得到了这个缺陷 CWE-201:通过发送数据的信息公开 敏感信息可能由于应用程序进行的出站网络连接而暴露。这可以通过两种不同的方式表现出来。 在C/C++应用程序中,有时开发人员在用数据填充缓冲区之前未能将其归零。例如,如果缓冲区包含仅填充了某些字段的数据结构,则这可能导致信息泄漏。未初始化的字段将包含该内存位置上存在的任何数据。当缓冲区通过网络发送时,先前分配的变量中的敏感信息可能会泄漏。 移动应用程序还可以传输敏感信息,如电子

大家好

我在VS2017上有一个Veracode绿灯扩展,我在下面得到了这个缺陷

CWE-201:通过发送数据的信息公开

敏感信息可能由于应用程序进行的出站网络连接而暴露。这可以通过两种不同的方式表现出来。 在C/C++应用程序中,有时开发人员在用数据填充缓冲区之前未能将其归零。例如,如果缓冲区包含仅填充了某些字段的数据结构,则这可能导致信息泄漏。未初始化的字段将包含该内存位置上存在的任何数据。当缓冲区通过网络发送时,先前分配的变量中的敏感信息可能会泄漏。 移动应用程序还可以传输敏感信息,如电子邮件或SMS消息、通讯簿条目、GPS位置数据以及移动API可以访问的任何其他信息。这种行为在移动间谍软件应用程序中很常见,这些应用程序旨在将数据过滤到监听站或其他数据收集点。此缺陷被归类为低严重性,因为它只影响机密性,而不影响完整性或可用性。然而,在移动应用程序的环境中,信息泄漏的重要性可能要大得多,特别是如果与用户期望或数据隐私政策不一致的话

此代码上显示了此缺陷

        Using objSMTPClient = New SmtpClient

            With objSMTPClient
                .EnableSsl = False
                .DeliveryMethod = SmtpDeliveryMethod.PickupDirectoryFromIis
                .Send(objMail)
                .Dispose()
            End With

        End Using
.Send(objMail)是一个有缺陷的文件,我已经尝试了所有的方法来解决这个问题,但是没有一个是有效的,仍然是一个发现,每个人都知道如何解决它吗


谢谢你

我有一个HTML正文。我试图测试我是否在非HTML正文上更改了它,并且通过发送数据暴露的信息消失了,但问题是我需要HTML正文来格式化我的电子邮件,请检查下面的代码

            Using strREader As StreamReader = New StreamReader(HostingEnvironment.MapPath("~/HTML/EmailBody.html"))

            readFile = strREader.ReadToEnd


            Dim myString As String = ""

            myString = readFile
            myString = myString.Replace("EmailMessage", GetMessage)
            myString = myString.Replace("GetLink", GetURL)
            myString = myString.Replace("CreatedBy", GetUserFullName)
            myString = myString.Replace("DateCreated", Date.Now)


            Using objSMPTClient As SmtpClient = New SmtpClient

                objMailMsg.BodyEncoding = Encoding.UTF8
                objMailMsg.Subject = "My Email Test - " & GetSubject
                objMailMsg.Body = myString.ToString
                objMailMsg.Priority = MailPriority.High
                objMailMsg.IsBodyHtml = True

                objSMPTClient.EnableSsl = False
                objSMPTClient.Send(objMailMsg)

            End Using

        End Using

我怀疑你能做什么。它可能只是设计用来标记对
SmptClient.Send的调用,不管发生什么。我唯一能想到的是,如果您在调用
Send
之前显式设置
MailMessage
的每个属性,可能会有所帮助。顺便说一句,您的
Dispose
调用毫无意义。
使用
块的原因是在块的末尾处理对象。可能启用SSL?或者使用另一个SMTP客户端,也可以。或者配置验证器,如果有一种方法可以指定一个外部通信不一定会损害机密性。