适用于 .NET 的 Mailkit 库是否自动处理 SMTP 注入?

Does Mailkit library for .NET automatically handle SMTP injection?

提问人:Hung Thai 提问时间:8/16/2023 更新时间:8/18/2023 访问量:58

问:

我正在使用 Mailkit 库(最新版本)为我的 .NET 项目发送电子邮件。但是,我对 SMTP 注入处理感到担忧。有没有人碰巧知道一些可以确认 Mailkit 支持 SMTP 注入预防的参考资料?

从我发现 https://snyk.io/blog/avoiding-smtp-injection/ 的来源,最常见的电子邮件库,如JavaMail,RubyMail等,已经解决了这个问题。鉴于 Mailkit 也很受欢迎,我希望它也能支持这一点。但是,我找不到任何可信的来源或文档专门说明Mailkit已处理SMTP注入。

C# .NET 邮件工具包

评论

1赞 jstedfast 8/16/2023
您是否尝试过诱骗 MailKit 执行任何描述的注入场景?当我有机会时,我会尝试,但如果有人可以浏览这些场景并告诉我 MailKit 容易受到哪些场景的影响,那将是非常有帮助的。在我的脑海中,我不认为 MailKit 容易受到其中任何一个的攻击,因为 MimeKit/MailKit 在内部解构电子邮件地址令牌和标头字符串的方式。

答:

1赞 jstedfast 8/18/2023 #1

我能够找到的唯一漏洞是开发人员将属性设置为用户提供的字符串(可能包含换行符序列)。SmtpClient.LocalDomain

在正常操作下,开发者不应设置此值,而应让 MailKit 自动检测。