sendmail如何从任何域发送电子邮件?

时间:2014-06-12 17:16:54

标签: perl email smtp sendmail

我刚尝试了sendmail

中记录的Mail::Sendmail函数

我看到只要我在localhost上运行SMTP服务器,我就可以从任何域发送带有用户标识的邮件。怎么回事?或者我错过了什么?

例如,我能够通过<myname>@microsoft.com这样的地址发送电子邮件,并且它确实以相同的方式发送到我的Gmail收件箱中。它甚至没有进入任何垃圾文件夹/

1 个答案:

答案 0 :(得分:7)

恭喜:您刚刚发现了email spoofing! :)

SMTP不执行您所暗示的类别的身份验证,例如验证某人是否有权从某个域发送邮件 - 因此任何拥有知道如何运行sendmail的计算机的人都可以这样做。

大多数反欺骗措施都依赖于域名所有者(例如microsoft.com)做某事,这些事情相当于验证消息是否真的来自他们。例如,他们可能会列出他们通常发送邮件的每个域名;这大概是Sender Policy Framework所做的。

如果收件人的服务器收到声称来自microsoft.com的邮件,则可以检查该域是否列出了发送邮件的服务器。如果它没有,它可能会增加被评为垃圾邮件的可能性。