Re: [dmarc-ietf] Alternative draft text for draft-ietf-dmarc-arc-protocol

Seth Blank <seth@valimail.com> Wed, 24 May 2017 22:56 UTC

Return-Path: <seth@valimail.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 08988128B93 for <dmarc@ietfa.amsl.com>; Wed, 24 May 2017 15:56:13 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.999
X-Spam-Level:
X-Spam-Status: No, score=-1.999 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=valimail.com
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 JK-I3uTyNqAq for <dmarc@ietfa.amsl.com>; Wed, 24 May 2017 15:56:09 -0700 (PDT)
Received: from mail-qt0-x234.google.com (mail-qt0-x234.google.com [IPv6:2607:f8b0:400d:c0d::234]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id AA7C01288B8 for <dmarc@ietf.org>; Wed, 24 May 2017 15:56:09 -0700 (PDT)
Received: by mail-qt0-x234.google.com with SMTP id f55so167943912qta.3 for <dmarc@ietf.org>; Wed, 24 May 2017 15:56:09 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=valimail.com; s=google2048; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=dULWhGb53BJQ95uq2HA40iJ/nTsfpLCK5wS878aeVoc=; b=gI23Erec9cvzHwEPtTLxugo29zK9Tcd53dJTaFskcRx3OqDp4Ynh49QkF/tTYmqe9S hYBSnt3olHQIh+9Pbr/xzGQKoy37FeisfPCPTn1w8EkFdEkW/zJ/mVmcYvedLj4FiWit NnAy8genV5UnV1mH8pPIdDUSQOD46cZ+mqkmxZRZtG2fzdvcB63QudeEu0a63THrD4O+ CrLnlDvcYxRxyP4abyp14ayNtsIZQsxbIrJCq/Q7C1Xj+FwaZDjvSFdzTiALDTKWgm0x UD9nLi33y8M6Qhwo8z6cdCRx+zHacyhL/Uxq4NNJRlqQ5MF+XNVVmE7FLqOldLFuWB/s GEUA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=dULWhGb53BJQ95uq2HA40iJ/nTsfpLCK5wS878aeVoc=; b=VaRJbZQIMwhbb3pxJQrFZu4FnHfMMvyZOFaJMcgD8BuspS7k2lBvdAOvpbWG1SYPlg O8OKNc9VIb518jsJXNZ+30FcxhFUFbagzUv1n+klebSEKp+LOrXw8u7yl2um/VA2XRaX 3r0EXoA+Gpm4BMjufhohNLFcD+E54utQUVMY+RFWtT0EZQtZl4UeApKprIozUSHH0402 qT8JC/nSZ3zCrYa+aGV5tYgOFu51Wcyxqj8zpqo1J9XJezxrVp0j0B7myBPDzfCer/DS xn8IXd9sOU34Kb6fhPm2d0TK2Frby/fMbhpoy1frngMMDzfj+1viffiumk3OxcPCdP+X Rpdw==
X-Gm-Message-State: AODbwcD6CAHxoVIyJpRT2YVi6CxFCqMXIGPPkasYZHsoK/DxaufwbzgF O+gVO8iDhSvakexxTXZf9TktwmGtC53A
X-Received: by 10.237.37.154 with SMTP id x26mr39882068qtc.133.1495666568844; Wed, 24 May 2017 15:56:08 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.200.42.242 with HTTP; Wed, 24 May 2017 15:55:48 -0700 (PDT)
In-Reply-To: <CABa8R6uzHrgXmCXQ+99nwkMswJnOeYjpb_2CP5JEn_CiYndPdg@mail.gmail.com>
References: <CAL0qLwZEeL8ksPK3AwXjty1+RRUgAH=kL1MUOwERGiGxOGd5NQ@mail.gmail.com> <CABa8R6vL720q879ks7ELPBH6aXjigntmHQ65hy86T-MQvLJ6+g@mail.gmail.com> <CANtLugMJV9_SOp0tSnjODmo7viiChk5NupVq5+7od_4scQ2iJg@mail.gmail.com> <CABa8R6uzHrgXmCXQ+99nwkMswJnOeYjpb_2CP5JEn_CiYndPdg@mail.gmail.com>
From: Seth Blank <seth@valimail.com>
Date: Wed, 24 May 2017 15:55:48 -0700
Message-ID: <CAOZAAfMAgu5oBgF=z+uQOXCJwh8cxt8rzLRKrYn8mP3W7wA45w@mail.gmail.com>
To: "dmarc@ietf.org" <dmarc@ietf.org>
Cc: Gene Shuman <gene@valimail.com>, "Murray S. Kucherawy" <superuser@gmail.com>, Brandon Long <blong@google.com>, Kurt Andersen <kboth@drkurt.com>
Content-Type: multipart/alternative; boundary="001a113bfc7289e8b205504d026c"
Archived-At: <https://mailarchive.ietf.org/arch/msg/dmarc/PB00V1lpesyi-fy3SGQtm1xG24E>
Subject: Re: [dmarc-ietf] Alternative draft text for draft-ietf-dmarc-arc-protocol
X-BeenThere: dmarc@ietf.org
X-Mailman-Version: 2.1.22
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, 24 May 2017 22:56:13 -0000

Looping back about this.

Currently openarc only supports relaxed canonicalization for the ARC
Message Signature.

On closer inspection, https://tools.ietf.org/html/
draft-ietf-dmarc-arc-protocol-03#section-5.1.2 and https://tools.ietf.org/
html/draft-ietf-dmarc-arc-protocol-03#section-5.1.2.1.2 do *not* appear to
be in direct contradiction of each other.

5.1.2 states that AMS header canonicalization must be relaxed, and
5.1.2.1.2 says that AMS body canonicalization must respect the c= value.

Is this what was intended (AMS headers=relaxed, body=[c value]), and should
be included in the proposed draft? Or should the entire AMS (headers and
body) respect the c value and both specs be updated?

Seth

On Wed, May 10, 2017 at 12:34 AM, Brandon Long <blong@google.com> wrote:

>
>
> On Tue, May 9, 2017 at 3:56 PM, Gene Shuman <gene@valimail.com> wrote:
>
>> I've taken a look at the proposed draft and have a few notes as well.
>>
>> 4.  The currently specified limits on i= are not included MUST >10,
>> SHOULD > 50, etc
>>
>> 5.1 - In the current draft, it's mandated that AMS must use relaxed
>> header canonicalization, but that's missing from the proposed draft
>>
>
> I think that 5.1.2 in the current draft is wrong, it's overridden by 5.1.2.1.2.
> We started out only allowing relaxed, but then added back support for c= in
> a later draft.
>
> Brandon
>
> 5.2 - I'm a bit confused by the comment noting the importance of i=2.
>> What is it that you're intending there?
>>
>> 5.3.1 - typo:  one of three possible values: -> one of *four* possible
>> values
>>
>> 7.2 - It may be worth elaborating more on the possible ways in which
>> cv=invalid can arise, if not here, maybe somewhere else
>>
>> 7.4 - In general I prefer this to the psuedo code in the current draft,
>> but I think it could still use a bit of work.  In particular, sections C-H
>> are exactly describing how to validate a DKIM signature and seems somewhat
>> unnecessary. Is there any particular reason you decided to include this, as
>> opposed to just relying on the DKIM spec for this?
>>
>> 7.5 - typo: no -> all
>>
>> In general though, I agree with Brandon, the proposed draft definitely
>> makes some things clearer, which I think is a step in the right direction.
>>
>> =Gene
>>
>>
>> On Tue, May 9, 2017 at 2:04 PM, Brandon Long <blong@google.com> wrote:
>>
>>> In 5.1 defining the AMS, you say that it should cover DKIM-Signature and
>>> AuthRes headers.  In particular, AuthRes headers are expected to be removed
>>> by ADMDs, especially if the message transits the same ADMD multiple times.
>>> Also, the information in the AuthRes header is superseded by the ArcAuthRes
>>> header.  Including it means an arbitrary AMS breakage for something pretty
>>> minor, so I would recommend to not include it.
>>>
>>> Our implementation explicitly blacklists that header.
>>>
>>> I know some mailing lists also strip the DKIM-Signature header, but
>>> since they are likely to break the AMS anyways, that's less important.  I'm
>>> not sure what the benefit is to including it, but it seems harmless.  In
>>> particular, if the DKIM-Signature still passes, then the ARC isn't adding
>>> that much, and removing the DKIM-Signature header doesn't mean all that
>>> much either since it's validity was already assessed and that assessment
>>> included in the AAR.  We don't blacklist the DKIM-Signature method in our
>>> implementation, but I don't understand the advisement.
>>>
>>> You also talk about "responsibility".  I'm not sure that's how I would
>>> describe it.  An ARC hop is documenting that a message passed through it,
>>> and that it evaluated the authentication of the message.  The only
>>> responsibility of a hop is to correctly validate the SPF/DKIM/ARC
>>> information, there is no ownership implied over the message itself.
>>>
>>> With AMS, you can answer the question: which ADMD is the last ADMD to
>>> have modified the message.  I guess in that sense, the last modifier is
>>> "responsible" for the current state of the message... but that kind of
>>> means that the AMS of previous hops allows them to disown responsibility
>>> for the current state of the message...
>>>
>>> 5.2 - should we point out that there should be only one of these per
>>> hop?  The openspf/dkim/dmarc implementations tend to add separate AuthRes
>>> headers for each evaluation, but ARC requires those to be a single instance.
>>>
>>> 5.3.1 - none as defined as "arrives at an MTA from an MSA", perhaps my
>>> understanding of those terms is slightly odd, but I would think that an MSA
>>> usually uses an MTA to actually send the message, and it isn't that
>>> "sending" MTA that's the first hop, it should be the first "receiving"
>>> MTA.  I mean, that's usually the point at which the DKIM signature is
>>> applied, and the SPF would be "from" there, not based on the location of
>>> the MUA.
>>>
>>> There are some missing pieces here, corresponding to the current draft
>>> sections 5.4 (alternate signing algorithms), 6.4.3 (arc email
>>> authentication method for AuthRes), 6.4.5 for dmarc xml.  I see that the
>>> arc is included in your IANA section, not sure if the call out outside of
>>> the definition is necessary or not.
>>>
>>> Overall, I think your draft makes some things clearer, and some things
>>> in the original are clearer.  It's worth looking into either combining or
>>> choosing.
>>>
>>>
>>> Brandon
>>>
>>> On Thu, May 4, 2017 at 12:56 AM, Murray S. Kucherawy <
>>> superuser@gmail.com> wrote:
>>>
>>>> Colleagues,
>>>>
>>>> As I progress (slowly, alas) toward completing my sample implementation
>>>> of OpenARC, I've found myself taking a lot of notes about the current
>>>> draft.  This has helped me make progress; in some cases it became things I
>>>> posted to the list, and in others it was just to help or confirm my
>>>> understanding of the protocol.
>>>>
>>>> I have developed this enough to become a fairly comprehensive
>>>> alternative text to the current draft.  I find the layout of this version
>>>> to flow better for my own purposes, and in a few places I've tried to
>>>> clarify some of the material by rewriting chunks of it.  None of this is
>>>> meant to assert that the current draft is deficient; I've just found it to
>>>> be a helpful exercise for me.
>>>>
>>>> I offer it here to the WG as a contribution; the WG of course is free
>>>> to use some, all, or none of it as it wishes.
>>>>
>>>> http://blackops.org/~msk/draft-kucherawy-dmarc-arc-base.txt
>>>>
>>>> If it would be more helpful to post this as an I-D, please let me know.
>>>>
>>>> -MSK
>>>>
>>>> _______________________________________________
>>>> dmarc mailing list
>>>> dmarc@ietf.org
>>>> https://www.ietf.org/mailman/listinfo/dmarc
>>>>
>>>>
>>>
>>> _______________________________________________
>>> dmarc mailing list
>>> dmarc@ietf.org
>>> https://www.ietf.org/mailman/listinfo/dmarc
>>>
>>>
>>
>
> _______________________________________________
> dmarc mailing list
> dmarc@ietf.org
> https://www.ietf.org/mailman/listinfo/dmarc
>
>


-- 

[image: logo for sig file.png]

Bringing Trust to Email

Seth Blank | Head of Product for Open Source and Protocols
seth@valimail.com
+1-415-894-2724 <415-894-2724>