Re: [dmarc-ietf] WGLC ARC-16 concern on Section 5.1.2 - cv=fail should sign greedily

"Murray S. Kucherawy" <superuser@gmail.com> Fri, 27 July 2018 15:24 UTC

Return-Path: <superuser@gmail.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 B6610130FA6 for <dmarc@ietfa.amsl.com>; Fri, 27 Jul 2018 08:24:58 -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, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.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 fxo5vE2IU1Jm for <dmarc@ietfa.amsl.com>; Fri, 27 Jul 2018 08:24:56 -0700 (PDT)
Received: from mail-lj1-x229.google.com (mail-lj1-x229.google.com [IPv6:2a00:1450:4864:20::229]) (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 C37DC130F75 for <dmarc@ietf.org>; Fri, 27 Jul 2018 08:24:55 -0700 (PDT)
Received: by mail-lj1-x229.google.com with SMTP id p10-v6so4764454ljg.2 for <dmarc@ietf.org>; Fri, 27 Jul 2018 08:24:55 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=WQfiAmaFDD7SEXiCQ/SqbPfgb1qqkU2iMW4vSnBRXCM=; b=awXO2fElCT4zwd4H3vMY2Ux6HtRRYyu7wbXvWkBAek//tFDFyLiu9L70mXDPqXL00J TZBK48cIag9t9EG+Md13ziXcGoPwsIreSkRuqHCuFAEtZ2FLxKvp2GeyBmFQ9QFOXgiz F8zjFBVM1lIJzllg6zt4u3n2Kp6EC3UfgN0qBLfM2MM9bhOjxEnDzQFUWFIv5c04s+Eo UpaSeGWe/BCkhSTcFsRzCWLmXPA9VYhhalBDL7MYsk6vs4jsGERWkDSyDRDFUPP9wxk+ 9yGwUp3bp3D7C34NYeNjtrj6/wAMOzduE/8FziRf2l5EsQadlCgI8ibCI6SDYEotSrh7 TQKg==
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=WQfiAmaFDD7SEXiCQ/SqbPfgb1qqkU2iMW4vSnBRXCM=; b=CstFXHCZTNMXDfWpMklb05rc2dvsWjPE8/L0ADS2wbjMKw+mW3XHJQwUQT2BHP7EIY LCEu0l2UV1bCkqeR+4FYblHD84YFquZroTLmKADn5XCvLhOuKm5lLuPcotpSJh0WLWjF UzHlH9lkEqCA5WCcttdPOgj3V952YGbIiLX4luR0cItIHWKYnYI3pLF48ByFzuSu6iaO q6p+R5dqQEtQIBaR36uUgQW93++HYFoJjRRrvmWT9I4u8K3zzU/LD+21ORFR4nhJSpI6 ALTXgA2uc8kECNfpVOhQsEg+1t6w4HSqWy/MXRStWW/4tRpL8nDnOjUqDGWjHebfHPG0 YQIA==
X-Gm-Message-State: AOUpUlFAq5JwJO1NNyRXHYESF1HLrIv9aL/oP6AfitdTFV+6uzT7wLEU HTeMOqqwQvDenPkHVhFy+EyH1gZg7qW6z+cVnzvh1Q==
X-Google-Smtp-Source: AAOMgpf4mwEj9N+o42z7g1HsLp7Dvi/TdQcR0vmwAICaSfsN0OZ9zLjZO8qb7pRrVYc1oj2cZctansbQXMaQhKjfxeQ=
X-Received: by 2002:a2e:259:: with SMTP id 86-v6mr5457398ljc.107.1532705093946; Fri, 27 Jul 2018 08:24:53 -0700 (PDT)
MIME-Version: 1.0
Received: by 2002:a2e:3a13:0:0:0:0:0 with HTTP; Fri, 27 Jul 2018 08:24:53 -0700 (PDT)
In-Reply-To: <CAD2i3WMMJPaZYonS-qcz8pwOKYmS2Xe+8WBZPuAqjiGoYePzSg@mail.gmail.com>
References: <CAD2i3WMMJPaZYonS-qcz8pwOKYmS2Xe+8WBZPuAqjiGoYePzSg@mail.gmail.com>
From: "Murray S. Kucherawy" <superuser@gmail.com>
Date: Fri, 27 Jul 2018 08:24:53 -0700
Message-ID: <CAL0qLwapyX3U=0OqQWzx+dDELn3W0v=N_HyzDnSw49oWQ+SE5Q@mail.gmail.com>
To: Seth Blank <seth@sethblank.com>
Cc: IETF DMARC WG <dmarc@ietf.org>
Content-Type: multipart/alternative; boundary="000000000000ab90f00571fcb66f"
Archived-At: <https://mailarchive.ietf.org/arch/msg/dmarc/fEf5mb2R2dZh11uMwG3nO9v_W7A>
Subject: Re: [dmarc-ietf] WGLC ARC-16 concern on Section 5.1.2 - cv=fail should sign greedily
X-BeenThere: dmarc@ietf.org
X-Mailman-Version: 2.1.27
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, 27 Jul 2018 15:24:59 -0000

On Wed, Jul 25, 2018 at 2:34 PM, Seth Blank <seth@sethblank.com> wrote:

> When we introduced the concept of cv=invalid last year, the advice was to
> only sign your own ARC Set, because there was no deterministic way to know
> which header fields to sign when those ARC header fields were not properly
> intact (the definition of invalid). We then decided to abandon the
> cv=invalid path and only have cv=fail.
>
> Somehow, in the current doc this advice for invalid chains now applies to
> all chain failures. Section 5.1.2's title even mentions it is for the
> invalid case, but the text as written applies to all failed chains.
>
> Without the ARC Seal covering the ARC header fields in the failing chain,
> all the data in the failed chain can be modified as it is not covered under
> the latest signature.
>
> The proper guidance should be that the ARC-Seal MUST sign the ARC Chain in
> its entirety, unless that is structurally impossible, in which case it
> should only sign itself.
>
> I believe the proper text for this section (replacing the first paragraph
> for 5.1.2 in its entirety) should be:
>
>    In the event that it is not possible to generate a deterministic list
> of previous
>    ARC Sets to sign (such as when the chain undergoing validation
>    is structurally invalid), the signature scope of the AS header field b=
>    value MUST only include the latest ARC Set headers as if this newest ARC
>    Set was the only set present.
>

I think it's weird that the body of content that gets hashed by the sealer
in this case varies from what would normally happen.  A verifier might have
to try two different verification algorithms if, for example, it doesn't
determine that the chain is structurally invalid.

If I receive a chain that was apparently valid at the last sealer and
determine that it is no longer so, could we simply decline to re-seal it at
all?

-MSK