.NET邮件类注入安全吗?

.NET邮件类注入安全吗?,.net,email,.net,Email,我想知道这个班级是否受到了保护。例如,在将值传递给其构造函数之前,是否应检查这些值: MailMessage message = new MailMessage(fromTextBox.Text, toTextBox.Text); MailAddress类中似乎只有一个简单的检查,检查地址是否包含@。我快速查看了源代码,似乎根本没有检查(除了那些参数不为null的检查) 但是如果你只是简单地创建一封邮件,应该没有任何问题,因为它是纯文本。。。 只有在使用备用视图时,您才应该注意注入。MailA

我想知道这个班级是否受到了保护。例如,在将值传递给其构造函数之前,是否应检查这些值:

MailMessage message = new MailMessage(fromTextBox.Text, toTextBox.Text);

MailAddress类中似乎只有一个简单的检查,检查地址是否包含@。

我快速查看了源代码,似乎根本没有检查(除了那些参数不为null的检查) 但是如果你只是简单地创建一封邮件,应该没有任何问题,因为它是纯文本。。。
只有在使用备用视图时,您才应该注意注入。

MailAddress类根据RFC822中的完整BNF语法检查其地址。(请参见
MailBnfHelper


使用
MailMessage
s时没有注射风险。(除了您自己内容中的HTML注入)

MailAddress
确实存在注入形式-您可以在一个地址的显示名中注入第二个地址。e、 g.
新邮件地址(“a2@b.de“,”No1\“,”No2“
变成
”No1“,”No2“
,它甚至像那样通过
邮件
SmtpClient
进入.eml文件。