28

请帮我订购一些带有电子邮件标题的订单。

以下各项是什么意思:返回路径、发件人、发件人。

这个问题是在电子邮件接收应用程序的上下文中提出的(假设是一个后来的克隆)。

  • 什么东西容易伪造?
  • 可以验证什么?
  • 三者或二者在什么情况下会有所不同?
4

3 回答 3

33

根据我的经验——

  • From 是写电子邮件的人。这可以通过用户的邮件软件来设置。

  • Return-Path 是退回邮件(无法送达的通知等)应送达的地址。它可以由发送或接收邮件服务器设置,有时也可以由用户的邮件软件设置。对于普通消息,它通常与 From 地址相同。某些消息(通常是系统生成的消息)可能使用不同的返回路径,并且退回消息通常将其留空。

  • 发件人是发送电子邮件的人,如果与发件人不同(“发件人代表发件人发送”)。有时这是由用户的邮件软件设置的,有时是由他们的邮件服务器设置的。这(如果存在)应该与发件人地址不同。

这些标头都可以很容易地伪造,因此验证几乎没有。

但是,如果发送域有 SPF 记录,您可以根据该域的已批准邮件服务器列表验证 Received 标头。这至少会告诉您消息是否真的来自该域,但这并不能保证特定用户发送它(它可能被同一域上的另一个用户欺骗)。此外,并非所有域都发布 SPF 记录,因此它并不总是一种选择。

于 2010-10-01T05:27:14.347 回答
8

“发件人”标头旨在成为消息来自的人。收件人的电子邮件客户端应该显示消息来自谁。

Return-Path 标头指定应将回复(或退回/NDR)传递到何处。这可能不同于邮件列表中的“发件人”地址,以及许多将退回邮件发送到删除不可投递地址的系统的自动邮件。

发件人可以被认为是 From 标头的更具体版本。如果消息是由某人发出的,或者是由实际“发件人”地址的其他系统发出的。示例可能是为非 Gmail 托管的域配置的 gmail。在这种情况下,From 标头将包含“you@yourdomain.com”,但发件人将是“someuser@gmail.com”。许多邮件客户端现在将其呈现为“someuser@gmail.com 代表 you@yourdomain.com”。“发件人”标头应用于邮件身份验证 (SPF/DKIM),因为那是实际发出邮件的系统。

于 2014-04-25T01:26:55.537 回答
0

我要补充一点,根据我们的经验,您无法验证谁从标头发送消息。

出于这个原因,很多人会实现一次性地址(example+uniquecode@example.com),并为每条传出消息提供一个发送地址,以此来验证谁在发送消息。其他一些用户在主题行中包含一些内容。

后继常见问题解答建议他们除了确保您是您所说的那样之外,还在做一些事情。例如,您可以跟踪第一次将电子邮件发送到您的电子邮件服务器的服务器的 IP/DNS,然后要求用户确认您是否怀疑存在问题。虽然它很容易欺骗标题,但接收他们的传入邮件并不容易。

于 2010-10-01T11:35:33.237 回答