Re: [dmarc-ietf] DMARC2 & SPF Dependency Removal

Michael Kliewe <m.kliewe@team.mail.de> Fri, 16 June 2023 16:01 UTC

Return-Path: <m.kliewe@team.mail.de>
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 A61F0C151998 for <dmarc@ietfa.amsl.com>; Fri, 16 Jun 2023 09:01:08 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.997
X-Spam-Level:
X-Spam-Status: No, score=-1.997 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, URIBL_DBL_BLOCKED_OPENDNS=0.001, URIBL_ZEN_BLOCKED_OPENDNS=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=team.mail.de
Received: from mail.ietf.org ([50.223.129.194]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id r52P4El18Msg for <dmarc@ietfa.amsl.com>; Fri, 16 Jun 2023 09:01:03 -0700 (PDT)
Received: from shout11.prelivemail.de (shout11.prelivemail.de [IPv6:2001:868:100:600::f152]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 14A1FC15106D for <dmarc@ietf.org>; Fri, 16 Jun 2023 09:01:02 -0700 (PDT)
Received: from zzz-shout01.prelivemail.de (unknown [10.0.120.51]) by shout11.prelivemail.de (Postfix) with ESMTPS id E991FA0166 for <dmarc@ietf.org>; Fri, 16 Jun 2023 18:00:58 +0200 (CEST)
Received: from zzz-postfix01.prelivemail.de (zzz-postfix01.bt.mail.de [10.0.121.56]) by shout01.prelivemail.de (Postfix) with ESMTP id C8D9BA00B8 for <dmarc@ietf.org>; Fri, 16 Jun 2023 18:00:58 +0200 (CEST)
Received: from smtp01.prelivemail.de (zzz-smtp01.bt.mail.de [10.0.121.42]) by zzz-postfix01.prelivemail.de (Postfix) with ESMTP id 985DAC00AA for <dmarc@ietf.org>; Fri, 16 Jun 2023 18:00:58 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=team.mail.de; s=teammail202009; t=1686931258; bh=Mdvh86XObONhYiT/62hBJAiUeQt8XFVtQXvrHCnaKOc=; h=Message-ID:Date:Subject:To:From:From:To:CC:Subject:Reply-To; b=fNA36aBr+mBmpqA+qHQVYXIIOhyHsT2MEk6XV4gxlI6tNxL8qvO01fqBZCfvytBUr ipZU++wdb23l1CFSBPZmOIayfKBpLe8vHp9XgfKOt5XK2oqp2lB6QgHKZrunB3NZ/I zw3uladKIKZ0KVyPsWjShbSNv4eKru0Jc/1ElSdN3iA6buTKadrlMDK9hO5lg22S4m teTbFNF+WVVRZI/jey8fankWSHIxCrtgmPBrKIE1IIq4t/F5KDImVhroXHWuhlUZcf VoXPKuJBNllWc8qJ/DmwDSKLecJ9aKpMgCr1/ZRqOCQeZMdPLqV2LCjv9klICi8HV7 h9+tRUTXOuE+Q==
Received: from [127.0.0.1] (localhost [127.0.0.1]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) (No client certificate requested) by smtp01.prelivemail.de (Postfix) with ESMTPSA id 1568221073 for <dmarc@ietf.org>; Fri, 16 Jun 2023 18:00:55 +0200 (CEST)
Message-ID: <77630ec8-2a73-b264-2aa2-8425806e32f8@team.mail.de>
Date: Fri, 16 Jun 2023 18:00:55 +0200
MIME-Version: 1.0
To: dmarc@ietf.org
References: <30BB83B2-B454-41B8-992B-8E2569802D9C@1und1.de> <D225D7FC-C570-4B63-A694-9F16DB1F33E1@kitterman.com> <CALaySJKwuOK-81dW2H9dtURxa5mLQDUNo+MWcs+Hho8N+yP9qg@mail.gmail.com> <2817813.dRqVH37e0G@localhost> <CALaySJJbPFBAV_7mZaARYWuMzuX+74r2Cm0jD+z92_iuFRn_MQ@mail.gmail.com> <25736.57534.195344.782189@fireball.acr.fi> <1ec42959-977a-9ce0-907a-83a5eb2b6ef2@tana.it> <25739.5435.550786.601699@fireball.acr.fi> <25739.33240.127804.524371@fireball.acr.fi> <5d9a0b0f-8777-2494-d779-376c6ab8b37d@tana.it> <7d39aa8e-dacc-05fa-eff1-2cc350d521db@inboxsys.com> <CAH48ZfwyBwfKzG_3R5uyV6tmY0yUtWy=5yAoAOEhUGn_Rz6HNw@mail.gmail.com> <47b8a0c7-6a52-a4ad-e98e-8cb2f881713e@inboxsys.com>
From: Michael Kliewe <m.kliewe@team.mail.de>
In-Reply-To: <47b8a0c7-6a52-a4ad-e98e-8cb2f881713e@inboxsys.com>
Content-Type: text/plain; charset="UTF-8"; format="flowed"
Content-Transfer-Encoding: 7bit
X-purgate: clean
X-purgate: This mail is considered clean (visit http://www.eleven.de for further information)
X-purgate-type: clean
X-purgate-Ad: Categorized by eleven eXpurgate (R) http://www.eleven.de
X-purgate: This mail is considered clean (visit http://www.eleven.de for further information)
X-purgate: clean
X-purgate-size: 3757
X-purgate-ID: 154282::1686931256-CE84692D-BD80892D/0/0
X-Rspamd-Server: zzz-rspamd01
X-Spamd-Bar: -----
X-Rspamd-Queue-Id: 1568221073
X-Spamd-Result: default: False [-5.97 / 12.00]; BAYES_HAM(-3.00)[100.00%]; NEURAL_HAM(-2.87)[-0.958]; MIME_GOOD(-0.10)[text/plain]; ASN(0.00)[asn:3320, ipnet:2003::/19, country:DE]; FROM_EQ_ENVFROM(0.00)[]; RCVD_COUNT_ZERO(0.00)[0]; MIME_TRACE(0.00)[0:+]; DBL_BLOCKED_OPENRESOLVER(0.00)[p200300ccc7179c01c0b1bb53a861413c.dip0.t-ipconnect.de:rdns,theregister.com:url]; RCPT_COUNT_ONE(0.00)[1]; FROM_HAS_DN(0.00)[]; MID_RHS_MATCH_FROM(0.00)[]; TO_MATCH_ENVRCPT_ALL(0.00)[]; TO_DN_NONE(0.00)[]; ARC_NA(0.00)[]
Authentication-Results: smtp01.prelivemail.de; auth=pass smtp.mailfrom=m.kliewe@team.mail.de
Archived-At: <https://mailarchive.ietf.org/arch/msg/dmarc/I32XX5dlp_WF0mfwh9iCzS_jbFA>
Subject: Re: [dmarc-ietf] DMARC2 & SPF Dependency Removal
X-BeenThere: dmarc@ietf.org
X-Mailman-Version: 2.1.39
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: Fri, 16 Jun 2023 16:01:08 -0000

Hi,

Am 16.06.2023 um 13:28 schrieb Sebastiaan de Vos:
> The need for separate DKIM failure codes to be able to separate 
> between in-transit changes and public key errors is more than just 
> valid and I don't consider SPF worthless in general, but I just find 
> it disturbing how the obviously misplaced confidence in SPF currently 
> weakens the whole DMARC standard.

Exactly.

There are rare bugs in DKIM software (signer or verifier) that only were 
fixed recently. These bugs have been there for years, but nobody noticed 
them because of the "SPF safety net" in DMARC. SPF is hiding bugs in 
DKIM software.

The SPF safety net has holes/problems, like:

- "I include 7 different big ESPs into my SPF record", which results in 
millions of IPs
- or "I put my whole cloud IP range into my SPF record to be sure that 
my future IPs that I might get are already in it",
- or when switching the mail provider, only add the new IP at the new 
provider, but don't remove the old IP of the old provider. Then some 
lucky guy will get/reuse that old IP sooner or later...
- or "+all"
- or: If you have an ESP which puts multiple customers on one outbound 
IP ("shared infrastructure"), then all customers who are on the same IP 
can send mails with all the other domains on that IP. The same with mail 
relays on "standard web hosters": Lots of them don't check the 
Envelope-From or From-Header, they just relay all mails to the Internet. 
Every customer can send mails with the domains of all other customers, 
and you get an SPF=pass.
- "my mails fail DKIM, but I have the safety net SPF, so everything is 
fine, I don't need to fix DKIM". They forget that all those mails will 
fail SPF/DMARC if they are being forwarded (indirect mailflow).

You can argue that SPF helps as a safety-net to DKIM (but only on 
"direct mailflows"), but you also have lots of problems in DMARC because 
of SPF.

You don't need a half-broken safety net to DKIM if you concentrate on 
fixing the DKIM bugs, like bugs in DKIM software (signer+verifier) or 
fixing bugs in DKIM deployments like missing/wrong DKIM DNS records, or 
not DKIM-signing your bounce mails (default behaviour of Postfix, 
locally generated bounce-mails are not processed by milters).

If everyone on this mailing list can generate a list of DKIM signatures 
which are failing often, but should not fail, and contact those top 20 
or top 50 domains, then I guess 95% of the total mail volume with DKIM 
problems will be fixed, and you can get rid of the SPF safety net that 
you don't need anymore in DMARC (you might still use SPF later in the 
analysis as a "scoring/reputation/detection mechanism" or so, we are 
just talking about removing it from DMARC to reduce problems while 
calculating the DMARC result and detect sender forgery).

I don't know how BIMI will proceed, currently it relies on the DMARC 
result. But because of recent problems with Gmail and UPS, it looks like 
it's a good idea to only trust the DMARC result if it was based on the 
DKIM result. I found this statement from Google:

"This issue stems from a third-party security vulnerability allowing bad 
actors to appear more trustworthy than they are. To keep users safe, we 
are requiring senders to use the more robust DomainKeys Identified Mail 
(DKIM) authentication standard to qualify for Brand Indicators for 
Message Identification (blue checkmark) status."
https://www.theregister.com/2023/06/09/google_bimi_email_authentication/

...requiring senders to use the more robust DKIM authentication standard...

Which means: the SPF result is being ignored when evaluating BIMI, "DKIM 
only" is the way to go for sender authentication.

/M