此电子邮件如何颠覆SPF检查?


13

我运行了一个邮件服务器,该邮件服务器似乎可以正确处理带有SPF设置的电子邮件-但是,我已经开始收到伪装成银行伪造的电子邮件-设置“发件人”地址为银行-但肯定不是来自银行的。

电子邮件的相关标头如下:

Delivered-To: me@mydomain.name
Received: from mail.mydomain.org (localhost [127.0.0.1])
    by mail.mydomain.org (Postfix) with ESMTP id AD4BB80D87
    for <user@mydomain.com>; Thu, 13 Oct 2016 20:04:01 +1300 (NZDT)
Received-SPF: none (www.tchile.com: No applicable sender policy available) receiver=mydomain.org; identity=mailfrom; envelope-from="apache@www.tchile.com"; helo=www.tchile.com; client-ip=200.6.122.202
Received: from www.tchile.com (www.tchile.com [200.6.122.202])
    (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits))
    (No client certificate requested)
    by mail.mydomain.org (Postfix) with ESMTPS id 40F6080B9F
    for <user@mydomain.com>; Thu, 13 Oct 2016 20:03:57 +1300 (NZDT)
Received: from www.tchile.com (localhost.localdomain [127.0.0.1])
    by www.tchile.com (8.13.1/8.13.1) with ESMTP id u9D73sOG017283
    for <user@mydomain.com>; Thu, 13 Oct 2016 04:03:55 -0300
Received: (from apache@localhost)
    by www.tchile.com (8.13.1/8.13.1/Submit) id u9D73smu017280;
    Thu, 13 Oct 2016 04:03:54 -0300
Date: Thu, 13 Oct 2016 04:03:54 -0300
Message-Id: <201610130703.u9D73smu017280@www.tchile.com>
To: user@mydomain.com
Subject: CANCELLATION_PROCESS.
From: KIWI BANK <noreply@kiwibank.co.nz>
Reply-To: 
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary=029F3E3270D5187AA69203962BF830E3
X-Virus-Scanned: ClamAV using ClamSMTP

这里的关键是kiwibank.co.nz是我来自的合法信誉良好的银行,并且有一个SPF记录显示:

kiwibank.co.nz.     13594   IN  TXT "v=spf1 include:_spf.jadeworld.com ip4:202.174.115.25 ip4:202.126.81.240 ip4:202.12.250.165 ip4:202.12.254.165 ip4:66.231.88.80 include:spf.smtp2go.com include:spf.protection.outlook.com -all"

因此,经过一番阅读-看来Envolope-From是正确的,但“ From”已被伪造。有什么办法可以在不破坏“常规”电子邮件的情况下更正/缓解此问题?我注意到我使用Postfix,Spamassassin和策略(postfix-policyd-spf-perl)-如果它真的很容易绕过,那么SPF有什么意义呢?

Answers:


13

在这种情况下,他们可能对您的服务器说了这样的话:

EHLO www.tchile.com
MAIL FROM: apache@www.tchile.com 
RCPT TO: user@mydomain.com
DATA
Date: Thu, 13 Oct 2016 04:03:54 -0300
Message-Id: <201610130703.u9D73smu017280@www.tchile.com>
To: user@mydomain.com
Subject: CANCELLATION_PROCESS.
From: KIWI BANK <noreply@kiwibank.co.nz>
Reply-To: 
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary=029F3E3270D5187AA69203962BF830E3
X-Virus-Scanned: ClamAV using ClamSMTP

The contents of mail...
.

SMTP对话(也称为“信封”)可以具有与电子邮件标头不同的“发件人/收件人”。SPF不会检查标题,但实际上始终是标题显示给最终用户!是的,SMTP是那个打破。是的,SPF是那个打破。

检查DMARC而不是仅检查SPF,将为您提供最好的服务。DMARC默认情况下会检查SPF,但它还会检查From报头与SMTP MAIL FROM的对齐方式(域需要匹配-它忽略用户名部分)。另外,您还可以获得DKIM支持,这是SPF的非常有用的附录。

DMARC将取决于_dmarc.kiwibank.co.nz中的DNS TXT记录集。但目前还没有。根据互联网法规的当前状态,即kiwibank.co.nz的所有者。根本不关心被保护免受这种欺骗。但是您可以在某些实现中对所有传入电子邮件强制执行DMARC。


SPF没有损坏。邮件本身在这里坏了。信封到!=标头有充分的理由。来自!=标头的跨域信封没有充分的理由。
joshudson

1
@joshudson是的。例如,如果我设置了一个.forward文件(或其他电子邮件转发)以从我的一个帐户转发到另一个帐户,则有意义的是保留消息的发件人(发件人头),并在邮件中将其显示为发件人电子邮件客户端等。但是,该转发(信封发件人)所产生的任何退回应归我所有,而不是最初发送邮件的人。邮件列表也是如此。
derobert

1
@derobert邮件列表是附带的。邮件客户端不会警告用户明显的伪造-这是一个巨大的问题,没有.forward用法可以证明其正确性。
kubanczyk

这真是不可思议。
g33kz0r

2

因此,经过一番阅读-看来Envolope-From是正确的,但“ From”已被伪造。我有什么办法可以纠正/缓解这个问题而又不破坏“常规”电子邮件?

验证From标题破坏邮件列表:

  1. foo @ yourbank发送邮件到cat-picture-sharing-list @ bar。

  2. 邮件列表将接收邮件,

    • Envelope-From类似于cat-picture-sharing-list-bounce @ bar的代替,
    • 可能会修改Reply-To标头和
    • 将邮件重新发送给所有收件人(例如您)。

现在您的邮件服务器收到一封邮件

Envelope-From: cat-picture-sharing-list-bounce@bar
From: foo@yourBank

从酒吧的邮件服务器发送。

我注意到我使用Postfix,Spamassassin和策略(postfix-policyd-spf-perl)-如果它真的很容易绕过,那么SPF有什么意义呢?

  1. 许多垃圾邮件发送者不会费心发送“正确的”信封发件人。
  2. 您的银行不会(大部分)收到此垃圾邮件的反向散射,因为NDR已发送(或应发送到)“信封发件人”地址。
  3. 基于信封发件人的评分变得更加可靠。如果您(或您信任的某个计分提供商)为所有带有Envelope-From = ... @ yourbank的邮件分配了非常负面的垃圾邮件分数,则垃圾邮件发送者不会滥用该分数。
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.