这封电子邮件是如何列出虚假收件人的?

信息安全 电子邮件 垃圾邮件 标题
2021-08-28 22:32:13

我的朋友最近收到一封可疑电子邮件,内容是从“Apple Store”购买 iTunes 礼品卡,其标题显示虚假的“收件人:”地址orders@apple-store.com

假“到”标头

不出所料,这是一封带有可疑“发件人:”地址的网络钓鱼电子邮件。

发件人:Apple Store <mystorepaysbills767wf08t7q86tpj1@unpaidpurchaseneedconfirmtocontinue.com>

我在消息本身中找不到对我朋友真实电子邮件地址的任何引用。我听说标题有一个虚假的发件人地址,但我从未见过一个电子邮件列表是一个虚假的收件人。

如果这封电子邮件被发送到一个虚假的电子邮件地址,我的朋友怎么会收到这封电子邮件?

2个回答

当通过 SMTP 发送邮件时,此类信息有两个不同的位置,信封(使用 SMTP 命令设置的内容)和标题(SMTP 数据命令下的第一个文本块,以空行结尾) . 因此,例如,这是一个信封与标头不一致的 SMTP 事务。邮件将按信封传递,但收件人将看到标题

mail from: <evil@evil.com>
250 2.1.0 Ok
rcpt to: <victim@example.com>
250 2.1.5 Ok
data
354 End data with <CR><LF>.<CR><LF>
From: "Apple Store" <apple@apple.com>
To: orders@apple-store.com
Subject: We just received your purchase...

Mail body goes here.
.
250 2.0.0 Ok: queued as C5E251FFE2
quit
221 2.0.0 Bye
Connection closed by foreign host.

假收件人进入标题“To:”行,但邮件是根据 SMTP“RCPT TO”命令中设置的值传递的。事实上,收件人看到了攻击者希望他们看到的 Header:

伪造电子邮件的邮件客户端视图

现在,有一些针对这种情况的保护措施。如果您告诉您的邮件客户端您想要查看完整的邮件标头,您会注意到邮件服务器注入了几个标明真实故事的标头:

From evil@evil.com Fri Jul 27 14:45:21 2018
Return-Path: <evil@evil.com>
X-Original-To: victim@example.com
Delivered-To: victim@example.com

但是,当然,邮件客户端在默认情况下总是隐藏这个级别的细节,正确解释标题可能很困难。要记住的关键是它们在运行时由服务器预先添加,因此顶部的那些是由您的服务器放入的;如果您在标头底部看到“返回路径”,则可能是攻击者伪造并试图误导您……由于原始消息“数据”包含发送客户端制作的标头,因此他们可以放入任何他们想要的东西在服务器开始前置之前。


按照怎么做-

伪造电子邮件收件人的第一条规则是,预计它会惨遭失败。

第二条规则是,使用密件抄送:对于您想要获取它的收件人,并使用收件人:对于您希望被看到获取它的收件人。这是使用邮件客户端执行此操作的标准方式,通常适用于从 mailx 到 gmail 的所有内容。

但是里程可能会发生不可预测的变化。例如,如果您将To:留空,许多邮件服务器会将Bcc:的内容填充To:中以弥补它。20 年前,我用这种方式向成千上万的“隐藏收件人”发送了垃圾邮件,向申请人列表发送了竞赛更新。哎呀。

这看起来像使用标准Bcc标题。消息很可能已发送到显示的To地址,但也使用标头发送给您的朋友(并且很可能发送给许多其他人)Bcc

Bcc标头仅在SMTP 信封中,因此您的邮件客户端默认不会显示它们。(而且,在后台,如果有多个Bcc标头,发送服务器会将其拆分为多个单独的电子邮件,因此即使您确实查看了信封,您也只会看到您自己的地址,而不是其他任何人的地址。)