[secdir] Re: draft-ietf-suit-report-14 ietf last call Secdir review
Brendan Moran <brendan.moran.ietf@gmail.com> Tue, 16 September 2025 10:35 UTC
Return-Path: <brendan.moran.ietf@gmail.com>
X-Original-To: secdir@mail2.ietf.org
Delivered-To: secdir@mail2.ietf.org
Received: from localhost (localhost [127.0.0.1]) by mail2.ietf.org (Postfix) with ESMTP id 0A6CD637DE04 for <secdir@mail2.ietf.org>; Tue, 16 Sep 2025 03:35:58 -0700 (PDT)
X-Virus-Scanned: amavisd-new at ietf.org
X-Spam-Flag: NO
X-Spam-Score: -2.099
X-Spam-Level:
X-Spam-Status: No, score=-2.099 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, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001] autolearn=unavailable autolearn_force=no
Authentication-Results: mail2.ietf.org (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.com
Received: from mail2.ietf.org ([166.84.6.31]) by localhost (mail2.ietf.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id jv6uEXYYTf2f for <secdir@mail2.ietf.org>; Tue, 16 Sep 2025 03:35:57 -0700 (PDT)
Received: from mail-pf1-x435.google.com (mail-pf1-x435.google.com [IPv6:2607:f8b0:4864:20::435]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature ECDSA (P-256) server-digest SHA256) (No client certificate requested) by mail2.ietf.org (Postfix) with ESMTPS id 9A272637DDF8 for <secdir@ietf.org>; Tue, 16 Sep 2025 03:35:57 -0700 (PDT)
Received: by mail-pf1-x435.google.com with SMTP id d2e1a72fcca58-77796ad4c13so1510814b3a.0 for <secdir@ietf.org>; Tue, 16 Sep 2025 03:35:57 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1758018957; x=1758623757; darn=ietf.org; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=4ybAS8gQyk+9hv7LBR5PdS86RTslNakUFaTM0uL21zA=; b=F4VgEwcz034VLfv8jcot8WqVNfn1QpeICEZkbVhd/NsOTFri5uvRxGlh2j/7fUX00n Uikv/JXjnQQXipLIHpnb4tDq7aJDIu5djwp4AAhDqNkZGZLVxjkJipQQTwuqF6maVl4X UQ5gBcRnea850SFPJz63oMdouNIT6BcSylcIa5A+pKrkEnsuN7TyqT2rEAw4bJ7RfU/Y 3eM3rGeO6HytkRR7nICOBW1Qj+P0qUyA+1W5dmNN1T70MsTjIlPaS03un9jGaYQHnsq3 pPFBGy7EsWmq3+lmpk9EmghfEjqBcjbdbPeVEJYlQjR2sNdq/ugZcNiNSuiAf6Bakr85 og4Q==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1758018957; x=1758623757; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=4ybAS8gQyk+9hv7LBR5PdS86RTslNakUFaTM0uL21zA=; b=IapUgSwEhoHIFR2cAq0dVlPYOV2469spw6KuD5+wmUAlLldWcwFeqU38nv3yj2A8+5 fLjFAAi5zGKzI//WkKiG7J2a9F24Yl0ItjENQ1gjkpGnKzsECGPsaMn7yWHOC7Syu4zY YNfNelkY8XNfD3r3lbbZRp9ReHJH8liZyQjFauqlhKfg0LiwnWXSAPezCeg50lFpAn31 /p/dkUNCZMe0pmgR7NA683g1TkSifVHhE1TyvkSTIhdMFw/oE/gTm6hd5Ue45cqAyguP yXBWnPHcyki6m59Ukn1eSbVYgPKJKfJqFmBSRG9yR45ZJgURC1ZO/+LgSAvZdkIw5zHX vBYQ==
X-Gm-Message-State: AOJu0YyDkj3hTcaU+Gt2U9uMjWXtIwtTQZ8qAopRVBxBZzedfWkzvUOs PYDBIa0ozkMJwnSkJaKi6fe44DVOh1Al63rdSJByjb1M0iGcnp+wZHqo5tUT56WNz7f+Ix2N4y6 oh6WoMHpUcH9s4aDaOx5iCiiRLCBjtLs=
X-Gm-Gg: ASbGncu5cda1/cFjdOTvjb+SeS4XGQeh7FJuCEpHRQWyilfXEsxqCyQdNWl4XFjC5Bj hMT40sWqjNZXrJ2jLids4jNad+B8JdLzmf1ad0KfGGwBrH4BokyvGeWkeoFC7ie7zytVhb8i0dw n+30oTU76HBhXznkAZSBR6QDR0T8BY6eZmAeXdtISFWaygflf6VtzKu9rJjGhEhbAtPhdhWSQB5 0IvZHwm
X-Google-Smtp-Source: AGHT+IE9JtQw+qKWOFf5wSVQQ4est+7mwCs2hZFkvwNJ8zEHoKhjpOSwukmLnLArJqg0zJytpVMwK4yNtJAiTjcOmiQ=
X-Received: by 2002:a05:6a20:2449:b0:252:2bfe:b654 with SMTP id adf61e73a8af0-2602c050269mr20059439637.51.1758018956484; Tue, 16 Sep 2025 03:35:56 -0700 (PDT)
MIME-Version: 1.0
References: <175460160369.618.18122085543723534498@dt-datatracker-6f95f9d9c-8g9j6>
In-Reply-To: <175460160369.618.18122085543723534498@dt-datatracker-6f95f9d9c-8g9j6>
From: Brendan Moran <brendan.moran.ietf@gmail.com>
Date: Tue, 16 Sep 2025 11:35:45 +0100
X-Gm-Features: AS18NWBIzYcB-FZ2TFzivhu-DU_4H68fPGiHbrwkTRxvTQSOeLL6ggGftz1oYJ4
Message-ID: <CAPmVn1NR88aBNUBn718BoJ82qBzisuOAD2__mtLwCewE9ZLWbA@mail.gmail.com>
To: Russ Housley <housley@vigilsec.com>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable
Message-ID-Hash: JD5UXCK4RKUMTXK4DDYHEWIC7JMR7EV7
X-Message-ID-Hash: JD5UXCK4RKUMTXK4DDYHEWIC7JMR7EV7
X-MailFrom: brendan.moran.ietf@gmail.com
X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; header-match-secdir.ietf.org-0; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header
CC: secdir@ietf.org, draft-ietf-suit-report.all@ietf.org, last-call@ietf.org, suit@ietf.org
X-Mailman-Version: 3.3.9rc6
Precedence: list
Subject: [secdir] Re: draft-ietf-suit-report-14 ietf last call Secdir review
List-Id: Security Area Directorate <secdir.ietf.org>
Archived-At: <https://mailarchive.ietf.org/arch/msg/secdir/7EgO3K2NEqqCIW9z2I-o7BmR6Kg>
List-Archive: <https://mailarchive.ietf.org/arch/browse/secdir>
List-Help: <mailto:secdir-request@ietf.org?subject=help>
List-Owner: <mailto:secdir-owner@ietf.org>
List-Post: <mailto:secdir@ietf.org>
List-Subscribe: <mailto:secdir-join@ietf.org>
List-Unsubscribe: <mailto:secdir-leave@ietf.org>
Hi Russ, Thank you for your review. I have now published draft-ietf-suit-report-15, which I believe addresses the issues identified in this review. Please see my comments, inline. Best Regards, Brendan On Thu, Aug 7, 2025 at 10:20 PM Russ Housley via Datatracker <noreply@ietf.org> wrote: > > Document: draft-ietf-suit-report > Title: Secure Reporting of Update Status > Reviewer: Russ Housley > Review result: Not Ready > > I reviewed this document as part of the Security Directorate's ongoing > effort to review all IETF documents being processed by the IESG. These > comments were written primarily for the benefit of the Security Area > Directors. Document authors, document editors, and WG chairs should > treat these comments just like any other IETF Last Call comments. > > Document: draft-ietf-suit-report-14 > Reviewer: Russ Housley > Review Date: 2025-08-07 > IETF LC End Date: 2025-08-11 > IESG Telechat date: Unknown > > Summary: Not Ready > > > Major Concerns: > > Section 5: I do not understand the meaning of "Manifest Processor & Report > Generator". This is part of a MUST statement, and it is unclear what is > required. The new language for this section follows. I believe that it is clearer and should resolve this concern. For the SUIT_Report to be usable as Attestation Evidence, the environment that generated the SUIT_Report also needs to be measured. Typically, this means that the software that executes the commands in the Manifest (the Manifest Processor) must be measured; similarly, the piece of software that assembles the measurements, taken by the Manifest Processor, into the SUIT_Report (the Report Generator) must also be measured. Any bootloaders or operating systems that facilitate the running of the Manifest Processor or Report Generator also need to be measured in order to demonstrate the integrity of the measuring environment. Therefore, if a Remote Attestation format that conveys Attestation Evidence, such as an Entity Attestation Token (EAT, see [RFC9711]), contains a SUIT_Report, then it MUST also include an integrity measurement of the Manifest Processor, the Report Generator and any bootloader or OS environment that ran before or during the execution of both. > Section 5: The last paragraph begins with "This information is not intended". > I cannot determine what information is being referenced, , and it is unclear > what SHOULD be translated into general-purpose claims. This paragraph has been substantially expanded. Instead of vague statements, the language is now more precise. Hopefully the new language, below, will resolve this concern. For a Verifier to consume the SUIT_Report, it requires a copy of the SUIT_Manifest. The Verifier then replays the SUIT_Manifest, using the SUIT_Report to resolve whether each condition is met. It identifies each measurement that is required by attestation policy and records this measurement as an Attestation Claim. It evaluates whether the SUIT_Report correctly matches the SUIT_Manifest as an element of evaluating trustworthiness. For example there are several indicators that would show that a SUIT_Report does not match a SUIT_Manifest. If any of the following (not an exhaustive list) occur, then the Manifest Processor that created the report is not trustworthy: * Hash of SUIT_Manifest at suit-report-manifest-uri does not match suit-report-manifest-digest * A SUIT_Record is issued for a SUIT_Command_Sequence that does not exist in the SUIT_Manifest at suit-report-manifest-uri. * A SUIT_Record is identified at an offset that is not a condition and does not have a reporting policy that would indicate a SUIT_Record is needed. Many architectures require multiple Verifiers, for example where one Verifier handles hardware trust, and another handles software trust, especially the evaluation of software authenticity and freshness. Some Verifiers may not be capable of processing a SUIT_Report and, for separation of roles, it may be preferable to divide that responsibility. In this case, the Verifier of the SUIT_Report should perform an Evidence Transformation [I-D.ietf-rats-evidence-trans] and produce general purpose Measurement Results Claims that can be consumed by a downstream Verifier, for example a Verifying Relying Party, that does not understand SUIT_Reports. > Section 7: This section does not have any information that will assist an > implementer. It does not explain what makes an EAT measurements type > more consumable than a SUIT_Report on its own. If this section is kept, > it should include a reference to EAT; the reference is several pages earlier. In combination with the above, Section 7 has been expanded as follows: The Entity Attestation Token (EAT, see [RFC9711]) is a secure container for conveying Attestation Evidence, such as measurements, and Attestation Results. The SUIT_Report is a form of measurement done by the SUIT Manifest Processor as it attempts to invoke a manifest or install a manifest. As a result, the SUIT_Report can be captured in an EAT measurements type. The log-based structure of the SUIT_Report is not conducive to processing by a typical Relying Party: it contains only a list of waypoints through the SUIT Manifest--unless system parameter records are included--and requires additional information (the SUIT_Manifest) to reconstruct the values that must have been present at each test. A Verifier in possession of the SUIT_Manifest can reconstruct the measurements that would produce the waypoints in the SUIT_Report. The Verifier SHOULD convert a SUIT_Report into a more consumable version of the EAT claim by, for example, constructing a measurement results claim that contains the digest of a component, the vendor ID & class ID of a component, etc. > > Minor Concerns: > > Section 4: It is not clear which algorithm will be used to compute > the SUIT_Digest. The structure is defined in [I-D.ietf-suit-manifest], > and I copy it here: > > SUIT_Digest = [ > suit-digest-algorithm-id : suit-cose-hash-algs, > suit-digest-bytes : bstr, > * $$SUIT_Digest-extensions > ] > > For example, is the party that produces the SUIT_Reference that contains > the SUIT_Digest expected to use the same hash algorithm as was used in > the SUIT_Manifest? This is now is spelt out explicitly: suit-report-manifest-digest provides a SUIT_Digest (as defined in [I-D.ietf-suit-manifest]) that is the characteristic digest of the Root manifest. This digest MUST be the same digest as is held in the first element of SUIT_Authentication in the referenced Manifest_Envelope. > Section 5: What does the term "well-informed" really mean here? I read > the sentence without this term an come away with the same understanding. > Can this be dropped? Yes, you are right. This probably could be dropped. Unfortunately, I missed that in the latest version. Would you like an update to address this? > Nits: > > Section 3: s/well, however this/well; however, this/ Fixed. > Section 4: s/of SUIT_Records/of SUIT_Records as defined in Section 3/ Fixed. > Section 5: s/SUIT_report/SUIT_Report/ Fixed. > > >
- [secdir] draft-ietf-suit-report-14 ietf last call… Russ Housley via Datatracker
- [secdir] Re: draft-ietf-suit-report-14 ietf last … Brendan Moran
- [secdir] Re: draft-ietf-suit-report-14 ietf last … Akira Tsukamoto | OPENCHIP