Re: [dmarc-ietf] Ticket #1 - SPF alignment

Scott Kitterman <sklist@kitterman.com> Mon, 25 January 2021 21:35 UTC

Return-Path: <sklist@kitterman.com>
X-Original-To: dmarc@ietfa.amsl.com
Delivered-To: dmarc@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id EEA663A1924 for <dmarc@ietfa.amsl.com>; Mon, 25 Jan 2021 13:35:12 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -0.199
X-Spam-Level:
X-Spam-Status: No, score=-0.199 tagged_above=-999 required=5 tests=[DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, SPF_HELO_FAIL=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=neutral reason="invalid (unsupported algorithm ed25519-sha256)" header.d=kitterman.com header.b=bUbHMdze; dkim=pass (2048-bit key) header.d=kitterman.com header.b=NX72LOFn
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id M8g6Ni0jC2R2 for <dmarc@ietfa.amsl.com>; Mon, 25 Jan 2021 13:35:11 -0800 (PST)
Received: from interserver.kitterman.com (interserver.kitterman.com [IPv6:2604:a00:6:1039:225:90ff:feaa:b169]) (using TLSv1.2 with cipher ADH-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 191FB3A1923 for <dmarc@ietf.org>; Mon, 25 Jan 2021 13:35:10 -0800 (PST)
Received: from interserver.kitterman.com (interserver.kitterman.com [64.20.48.66]) by interserver.kitterman.com (Postfix) with ESMTPS id BA5C1F80232 for <dmarc@ietf.org>; Mon, 25 Jan 2021 16:35:09 -0500 (EST)
DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/simple; d=kitterman.com; i=@kitterman.com; q=dns/txt; s=201903e; t=1611610509; h=from : to : subject : date : message-id : in-reply-to : references : mime-version : content-transfer-encoding : content-type : from; bh=/4selV0E0Ign2QTpaDQO0dHP8nWT+yTdZ7FzXdCJiOw=; b=bUbHMdzerTpclnOHEgbs2rMTwUCiHD20xox4+W6dhVsdjma2zCNpVLxQACirpx6f1SKJ+ sK8WwVYlbPP92ckBw==
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kitterman.com; i=@kitterman.com; q=dns/txt; s=201903r; t=1611610509; h=from : to : subject : date : message-id : in-reply-to : references : mime-version : content-transfer-encoding : content-type : from; bh=/4selV0E0Ign2QTpaDQO0dHP8nWT+yTdZ7FzXdCJiOw=; b=NX72LOFnWc8nGTENeRIxT/qp8fm2vkK1VGLKEObpYrOblU2OHQQrBpyPypVFeuaZsUnhu Ctitl2JkjSRakb0JvY5EkIlrIghtOaYO9WTofGJUIUoM9/uZlU5GVXnKoaJc9QbMe3Iak00 Kd0363b7BFQ3Q135gEGx+OSez6t1AeS8wck7BW2xJ6rf+9FZPavDL1+178Xviq1mHR0+UgI miA5E6s0PKYatYbJhrvTuD8m/yejLZcG5V1gf/RjG7yhke7cLrZPv9wap0jL2t7Df2QQ3aX LlPbsgcV2NrcpFLpJM7dZl1YJ/7586R+OJ6TsHvcOAuAXNZAYTXFvVI9K18g==
Received: from zini-1880.localnet (static-72-81-252-22.bltmmd.fios.verizon.net [72.81.252.22]) by interserver.kitterman.com (Postfix) with ESMTP id 8AD9BF801FE for <dmarc@ietf.org>; Mon, 25 Jan 2021 16:35:09 -0500 (EST)
From: Scott Kitterman <sklist@kitterman.com>
To: dmarc@ietf.org
Date: Mon, 25 Jan 2021 16:35:09 -0500
Message-ID: <1627293.fjaifilARp@zini-1880>
In-Reply-To: <CAHej_8nTCxAOZeT-3snPZ0c+pht=kLAX=J-cccUVHaY4c+cHCQ@mail.gmail.com>
References: <bef64e7a-571b-a73f-dc91-aa402ca320c8@taugh.com> <ebf4303b-88e0-4caa-267c-30c2c7516f24@tana.it> <CAHej_8nTCxAOZeT-3snPZ0c+pht=kLAX=J-cccUVHaY4c+cHCQ@mail.gmail.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Type: text/plain; charset="us-ascii"
Archived-At: <https://mailarchive.ietf.org/arch/msg/dmarc/gMcXDbQr1dxEKnrfNOwApI-X0pg>
Subject: Re: [dmarc-ietf] Ticket #1 - SPF alignment
X-BeenThere: dmarc@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "Domain-based Message Authentication, Reporting, and Compliance \(DMARC\)" <dmarc.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/dmarc>, <mailto:dmarc-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/dmarc/>
List-Post: <mailto:dmarc@ietf.org>
List-Help: <mailto:dmarc-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/dmarc>, <mailto:dmarc-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 25 Jan 2021 21:35:13 -0000

On Monday, January 25, 2021 4:04:33 PM EST Todd Herr wrote:
> On Thu, Jan 21, 2021 at 4:24 AM Alessandro Vesely <vesely@tana.it> wrote
> 
> > I agree that the spec needs some text somewhere to counter the passage in
> > Section 2.3 of RFC 7208.  This, methinks, is the intended semantics of the
> > second paragraph of section 3.1.2 of dmarcbis:
> > 
> > OLD:
> >     Note that the RFC5321.HELO identity is not typically used in the
> >     context of DMARC (except when required to "fake" an otherwise null
> >     reverse-path), even though a "pure SPF" implementation according to
> >     [RFC7208] would check that identifier.
> > 
> > I'd rather replace that paragraph and leave item 4 of Section 6.6.2 as
> > is.  For
> > a possibly less confusing wording:
> > 
> > NEW:
> >     Even tough a "pure SPF" implementation, according to [RFC7208], would
> >     avoid to check the RFC5321.MailFrom identity if the RFC5321.HELO was
> >     conclusively determined to pass, DMARC authentication requires the
> >     authenticated identity to be aligned.
> 
> May I propose that the section labeled "SPF-Authenticated Identifiers" be
> rewritten as follows:
> 
> CURRENT:
> 
>    DMARC permits Identifier Alignment, based on the result of an SPF
>    authentication, to be strict or relaxed.
> 
>    In relaxed mode, the [SPF
> <https://tools.ietf.org/html/rfc7489#ref-SPF>]-authenticated domain
> and RFC5322 <https://tools.ietf.org/html/rfc5322>.From
>    domain must have the same Organizational Domain.  In strict mode,
>    only an exact DNS domain match is considered to produce Identifier
>    Alignment.
> 
>    Note that the RFC5321 <https://tools.ietf.org/html/rfc5321>.HELO
> identity is not typically used in the
>    context of DMARC (except when required to "fake" an otherwise null
>    reverse-path), even though a "pure SPF" implementation according to
>    [SPF <https://tools.ietf.org/html/rfc7489#ref-SPF>] would check
> that identifier.
> 
>    For example, if a message passes an SPF check with an
>    RFC5321 <https://tools.ietf.org/html/rfc5321>.MailFrom domain of
> "cbg.bounces.example.com", and the address
>    portion of the RFC5322 <https://tools.ietf.org/html/rfc5322>.From
> field contains "payments@example.com",
>    the Authenticated RFC5321
> <https://tools.ietf.org/html/rfc5321>.MailFrom domain identifier and
> the
>    RFC5322 <https://tools.ietf.org/html/rfc5322>.From domain are
> considered to be "in alignment" in relaxed
> 
>    mode, but not in strict mode.
> 
> 
> 
> NEW:
> 
> DMARC permits Identifier Alignment, based on the result of an SPF
> 
> authentication, to be strict or relaxed.
> 
> 
> In relaxed mode, the [@!RFC3986]-authenticated domain and RFC5322.From
> 
> domain must have the same Organizational Domain.  In strict mode,
> 
> only an exact DNS domain match is considered to produce Identifier
> 
> Alignment.
> 
> 
> For example, if a message passes an SPF check with an
> 
> RFC5321.MailFrom domain of "cbg.bounces.example.com", and the address
> 
> portion of the RFC5322.From field contains "payments@example.com",
> 
> the Authenticated RFC5321.MailFrom domain identifier and the
> 
> RFC5322.From domain are considered to be "in alignment" in relaxed
> 
> mode, but not in strict mode. In order for the two identifiers to
> 
> be considered "in alignment" in strict mode, the domain parts would
> 
> have to be identical.
> 
> 
> The reader should note that SPF alignment checks in DMARC rely solely
> 
> on the RFC5321.MailFrom domain. This differs from section 2.3 of
> [@!RFC7208],
> 
> which recommends that SPF checks be done on not only the "MAIL FROM"
> 
> but also on a separate check of the "HELO" identity.

I think this is fine, but there is a subtlety to be aware of.

If you look at RFC 7208 Section 2.4, when Mail From is null, postmaster@HELO 
is the mail from for SPF purposes.  DMARC really can't change that.

As a result, there are cases where Mail From results actually are derived from 
HELO and it's unavoidable.  I believe the proposed text is clear enough about 
not using separate HELO identity results and that's appropriate.

Scott K