Re: [dmarc-ietf] third party authorization, not, was non-mailing list

Alessandro Vesely <vesely@tana.it> Wed, 26 August 2020 16:58 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 7CB813A1720 for <dmarc@ietfa.amsl.com>; Wed, 26 Aug 2020 09:58:30 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -3.046
X-Spam-Level:
X-Spam-Status: No, score=-3.046 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, 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=ham 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 Ug7UK1hV27-8 for <dmarc@ietfa.amsl.com>; Wed, 26 Aug 2020 09:58:28 -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 23C683A1727 for <dmarc@ietf.org>; Wed, 26 Aug 2020 09:58:26 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=tana.it; s=delta; t=1598461102; bh=DQOnyrKc43LdjOhGIboTN+kDnPuJYb8bcnbb+HfQyVg=; l=3806; h=To:Cc:References:From:Date:In-Reply-To; b=Bc0TdIfqQ1EDQIedPg2o9kbWPTCxgocayScDWQ5nGUyQ1IeGzz8M8uGUUFHVkg9ez 2ScdN8ZJyCHwEy+iQQ3/4wYYw4HjG3e7DJqA9DZ2l7JNgfu83LetZT4cP7hyIYbQUh nyPMFGwccoDT/9KtAXf6mH71vUgCiS210BANiP2HcQ23RqM6IarOviltUGRIy
Authentication-Results: tana.it; auth=pass (details omitted)
Received: from [172.25.197.111] (pcale.tana [172.25.197.111]) (AUTH: CRAM-MD5 uXDGrn@SYT0/k, TLS: TLS1.3, 128bits, ECDHE_RSA_AES_128_GCM_SHA256) by wmail.tana.it with ESMTPSA id 00000000005DC08B.000000005F4694AE.00006FA9; Wed, 26 Aug 2020 18:58:22 +0200
To: John R Levine <johnl@taugh.com>, Dotzero <dotzero@gmail.com>
Cc: IETF DMARC WG <dmarc@ietf.org>
References: <20200824172403.A927C1F14BF5@ary.qy> <5fe7d5c2-7330-c9fb-2856-e7dfc2175c82@tana.it> <CAJ4XoYc1vutV61E-66DHWcdOxHmCUWiC0HC0AmiRYUcMxLgcCQ@mail.gmail.com> <1fe7a47f-4ebc-7621-2c1-e4803473e8d7@taugh.com> <CAJ4XoYf3_y4tb5JYm5fGndqxKN+070LvZ6i5kjHKqH0NnbHnhg@mail.gmail.com> <13aa3f6f-df8-4ea-c075-9a1e885b28da@taugh.com>
From: Alessandro Vesely <vesely@tana.it>
Message-ID: <c37909a6-57e2-5bc1-4990-9f54dfde1128@tana.it>
Date: Wed, 26 Aug 2020 18:58:20 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.11.0
MIME-Version: 1.0
In-Reply-To: <13aa3f6f-df8-4ea-c075-9a1e885b28da@taugh.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/QmmghFoZ41B6TntTsiePpGIhLZc>
Subject: Re: [dmarc-ietf] third party authorization, not, was non-mailing list
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: Wed, 26 Aug 2020 16:58:31 -0000

On Tue 25/Aug/2020 20:13:46 +0200 John R Levine wrote:
> On Tue, 25 Aug 2020, Dotzero wrote:
>>>> I would expect there to be multiple potential approaches to identifying
>>>> acceptable intermediaries.
>>>
>>> The harder part is to decide which intermediary gets to re-sign which
>>> message at the time you apply the weak signature.
>>
>> It would have be the domain in the "To" field.  It wouldn't work with
>> random unknown intermediaries. It would address the MLM issue as long as
>> the MLM domain is the same as the "To" domain when the message was
>> originally sent. It could also presumably work for vanity domains if they
>> DKIM sign. It wouldn't work for forwards on the receiver side that the
>> sender is unaware of.
> 
> If the list is somelist@lists.foo.org, does the signature have to be 
> d=lists.foo.org?  How about d=foo.org?
> 
> On the flip side, do you put a weak signature on all of your outgoing mail, 
> which seems like a bad idea, or just mail that you expect to go through list 
> modification?  In the latter case, how do you tell?  These are the scaling 
> problems that I fear make this unworkable.


https://tools.ietf.org/html/draft-levine-dkim-conditional-03#section-4.1 looks 
quizzical.  It says:

    A small sender that doesn't know which of its mail recipients are
    likely to be forwarders might put a weak signature on all outgoing
    mail, in the expectation that few of its users correspondents are
    likely to be malicious.

If a sender has no idea, what domain would it put in fs=, the recipient's 
domain?  That entails that a signing filter acts in an advanced SMTP step, 
where the connection to the MX is established and the receiving domain known.

Also, in the previous paragraph:

    A sender that expects a message to be forwarded might put both a
    conventional DKIM signature and a signature with a !fs tag that
    refers to the domain name of the expected forwarder.  That signature
    would typically be a "weak" signature that covers the From, To, Date,
    and Message-ID headers but does not cover the Subject header or the
    message body, so that it would remain valid even if a forwarder made
    changes typical of forwarders such as mailing lists.

I understand that nobody can prevent a sender to put a conventional DKIM 
signature, even if it expects the message to be forwarded.  However, if the 
scenario gets upgraded so as to consider that the sender /knows/ that the 
message is going to be forwarded, then the conventional signature is pretty 
useless, as forwarding will break it.  How about this:

    A sender that expects a message to be forwarded might well skip putting
    a conventional DKIM signature and put just a signature with a !fs tag that
    refers to the domain name of the expected forwarder.  That signature
    would typically be a "weak" signature that covers the From, Date, and
    Message-ID headers but does not cover the Subject, To, or Cc header fields,
    nor the message body.

(To: and Cc: are often reordered, which breaks signatures.)

Finally, IMHO the Security Consideration section should compare using !fs= 
versus plain weak signatures.  In particular, consider senders who carefully 
avoid to send out weak signatures except for trusted (forwarding) recipients. 
Would it be advisable to put both a plain weak signature and a signature with 
!fs=?  Plain weak signatures might be discarded by recipients with local 
policies about l=, while v=man signatures might be discarded by unupgraded 
verifiers.  Putting two signatures together is rather common in the presence of 
new features, e.g. those who use elliptic keys do so.  What is the difference 
between the risks brought on by each kind of weak signature?  Answering such 
question justifies the version change.


Best
Ale
--