Re: [dmarc-ietf] Revisiting DMARC bis Ticket 66 - What It Means To Implement DMARC

Alessandro Vesely <vesely@tana.it> Tue, 25 August 2020 08:44 UTC

Return-Path: <vesely@tana.it>
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 1B9563A0BA1 for <dmarc@ietfa.amsl.com>; Tue, 25 Aug 2020 01:44:07 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 3.854
X-Spam-Level: ***
X-Spam-Status: No, score=3.854 tagged_above=-999 required=5 tests=[DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, GB_SUMOF=5, NICE_REPLY_A=-0.948, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=no autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1152-bit key) header.d=tana.it
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 PiBhvyPlvE3G for <dmarc@ietfa.amsl.com>; Tue, 25 Aug 2020 01:44:05 -0700 (PDT)
Received: from wmail.tana.it (wmail.tana.it [62.94.243.226]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 352BA3A0775 for <dmarc@ietf.org>; Tue, 25 Aug 2020 01:44:04 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=tana.it; s=delta; t=1598345042; bh=v+d0FpenH2XHz69Bnzom4CZbDKY9gv+FgBYTBaCtTPI=; l=4951; h=To:References:From:Date:In-Reply-To; b=CYShQFMcPSeRMJSeLBAuUqd9PrQePgvoZQwmnQC9ZC4RZVm/oyA7LffajHrx0sQ8j cUeRfNyjw+BES7Zcu8yQAwlg/UH/BvARu2CdrWziS8L1SP6ZPQTnokhJ3GmAZfNJmm hUUoP+i7U/8X52CTKWVsgnhzMUv5KWclm1sW/EjWvaCR79jl4LJSdSBCi2aE/
Authentication-Results: tana.it; auth=pass (details omitted)
Received: from [192.168.1.103] ([5.170.68.61]) (AUTH: CRAM-MD5 uXDGrn@SYT0/k, TLS: TLS1.3, 128bits, ECDHE_RSA_AES_128_GCM_SHA256) by wmail.tana.it with ESMTPSA id 00000000005DC081.000000005F44CF51.000038D9; Tue, 25 Aug 2020 10:44:01 +0200
To: dmarc@ietf.org
References: <CAHej_8kxYCy0pMktOZ2YtzUneatx3Sp3wgAtTZp1VpjAeyMZgA@mail.gmail.com> <a8e4d87c-7782-afe0-bac7-92a5099f1e26@tana.it> <CAHej_8=3bKJjCACXzwb2fZWHN8LeCVnVo0xBrSyvRyzyR-UvvQ@mail.gmail.com>
From: Alessandro Vesely <vesely@tana.it>
Message-ID: <16de4b1f-299a-91e3-3f6a-0ff33c691fe1@tana.it>
Date: Tue, 25 Aug 2020 10:43:55 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.10.0
MIME-Version: 1.0
In-Reply-To: <CAHej_8=3bKJjCACXzwb2fZWHN8LeCVnVo0xBrSyvRyzyR-UvvQ@mail.gmail.com>
Content-Type: text/plain; charset="utf-8"; format="flowed"
Content-Language: en-US
Content-Transfer-Encoding: 8bit
Archived-At: <https://mailarchive.ietf.org/arch/msg/dmarc/7rxgPt3_COv6-4Utg-DXcqTi6Jw>
Subject: Re: [dmarc-ietf] Revisiting DMARC bis Ticket 66 - What It Means To Implement DMARC
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: Tue, 25 Aug 2020 08:44:07 -0000

Just a couple of notes, inline:

On Mon 24/Aug/2020 20:20:06 +0200 Todd Herr wrote:
> On Sat, Aug 22, 2020 at 5:06 AM Alessandro Vesely <vesely@tana.it> wrote:
>> On Fri 21/Aug/2020 21:25:50 +0200 Todd Herr wrote:
>> [snip]
>>
>>> 8.1.2 Full Domain Owner Implementation
>>>
>>> Full implementation of the DMARC mechanism by a Domain Owner requires all
>>> of the following characteristics:
>>>
>>>      -
>>>
>>>      Creation of the DMARC policy record in DNS which meets these
>> criteria:
>>>      -
>>>
>>>         The policy record MUST express a Requested Mail Receiver policy of
>>>         “quarantine” or “reject” for the Organizational Domain and all
>> sub-domains
>>>         -
>>>
>>>         The Requested Mail Receiver policy MUST apply to a percentage of
>> mail
>>>         not less than 100
>>>         -
>>
>>
>> Nope.  A domain can say it has a *strict policy* when the above criteria
>> are met.  Standing the principle that domains which host human users
>> mailboxes must not publish a strict policy, mandating that these domains
>> don't fully implement DMARC makes little sense.
>>
>> Note that I'm opposed to said principle, which is a limitation of DMARC.
>> However, the limitation is there and we must first remove it.  Afterwards,
>> perhaps, we can mandate strict policies.
>>
>>
> I'm not clear on what you mean by "strict policy"; it's not a term I used
> here.


I was proposing that term, as an alternative to "domain X fully 
implements DMARC" —which can hardly be a synonym of "domain X deploys 
a strict DMARC policy".


> Also worth noting is that I'm not trying to mandate anything, only
> attempting to define two levels of implementation for each role - minimal
> and full.


Got it.  Still, to require a strict policy in order to enable a mail 
site to boast full DMARC compliance makes little sense nowadays, 
especially since we deprecate Yahoo, AOL, et al. for having done so...


>>>      -
>>>
>>>      Validation of any ARC header sets found in the message
>>
>>
>> Nope.  DMARC has nothing to do with ARC.
>>
>>
> Your statement is true, but I would submit that ARC has everything to do
> with DMARC (and SPF, and DKIM) and attempting to mitigate the failures in
> authentication that can be caused by mail transiting intermediaries.


The difference is DMARC is deterministic, in the sense that a receiver 
can mechanically operate according to the spec.  ARC, reputation 
sites, and other external sources of information are very useful but 
have "batteries not included".


>>>      -
>>>
>>>      Send aggregate reports at least daily using “mailto” URIs; such
>>>      aggregate reports MUST be no larger than ten megabytes in size.
>>
>>
>> I'd just mandate reporting.  Size is a different issue.
>>
>>
> The ten megabytes limit is original text from section 8 -
> https://tools.ietf.org/html/rfc7489#section-8 -  It seems antiquated to use
> such a small size today, but I was trying not to stray too far afield of
> the original text.


Uh, I hadn't noticed it.  SMTP mandates a minimum of 64K only.  In 
Italy, we have a legal minimum of 30Mb[*], Gmail can receive up to 
50Mb[†], while others still suggest a limit of 10Mb[‡].  Looking 
around, I see values ranging from 150Mb to 40Mb:

250-DM3NAM06FT012.mail.protection.outlook.com Hello [5.170.68.61]
250-SIZE 157286400

250-mx.google.com at your service, [5.170.68.61]
250-SIZE 157286400

250-BN8NAM12FT041.mail.protection.outlook.com Hello [5.170.68.61]
250-SIZE 157286400

250-ietfa.amsl.com
250-PIPELINING
250-SIZE 67108864

250-BN8NAM11FT050.mail.protection.outlook.com Hello [5.170.68.61]
250-SIZE 49283072

250-mtaproxy523.free.mail.gq1.yahoo.com
250-PIPELINING
250-SIZE 41943040

250-us-app.us.dmarcian.com
250-PIPELINING
250-SIZE 40960000


[*] https://tools.ietf.org/html/rfc6109#section-3.1.1
[†] https://support.google.com/a/answer/1366776?hl=en
[‡] 
https://support.microsoft.com/en-us/office/send-large-files-with-outlook-8c698842-b462-4a4c-8d53-5c5dd04f77ef


>> Limiting the size makes more sense for each mailto: address, as it should
>> reflect message size limits that the corresponding MTA enforces.  See also
>> ticket #53.
>>
>> Some domains react to the size limit by sending multiple records for the
>> same period.  The sum of sizes exceeds the size of a single report, given
>> the way compression works.
>>
>> Report size is obviously inversely proportional to frequency.  How about
>> requiring the ability to send reports hourly for full implementations and
>> at least daily for medium ones?
>>
>>
> Once every 24 hours was in the original text; I wasn't present at the
> creation of the original RFC, but it seems to be a cadence that most
> reporters use.


This topic deserves more discussion.  The spec doesn't help much for 
developing a way to negotiate values of ri= between the consumer and 
the producer of aggregate reports.


Best
Ale
--