[Ufmrg] Re: [Seat] Comments on formal analysis of relay attacks in attested TLS (CVE-2026-33697)
Nathanael Ritz <nathanritz@gmail.com> Sat, 27 June 2026 19:19 UTC
Return-Path: <nathanritz@gmail.com>
X-Original-To: ufmrg@mail2.ietf.org
Delivered-To: ufmrg@mail2.ietf.org
Received: from localhost (localhost [127.0.0.1]) by mail2.ietf.org (Postfix) with ESMTP id 7B4D5108DC41E for <ufmrg@mail2.ietf.org>; Sat, 27 Jun 2026 12:19:17 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=ietf.org; s=ietf1; t=1782587957; bh=f2BpC8gPzJtNGqk7JCN95Tzg7ehg7iNUb6NNz2lvQVE=; h=References:In-Reply-To:From:Date:Subject:To:Cc; b=X7vP839ilJrkCBEhbGXUCyfFkR30Pu6JFjGj6iGpfspuSgTdYkn+iA2VKnYADgbD1 VgVdWJWBy/EVsQTpoQpr8A9tHIbzrqrZ5g8O3iszn5yohbBsvIXWT38tCR0juwYRLX EVVn2obTzyJDDScFzmP8e/QaUKylmvysx81FMRCI=
X-Virus-Scanned: amavisd-new at ietf.org
X-Spam-Flag: NO
X-Spam-Score: -1.988
X-Spam-Level:
X-Spam-Status: No, score=-1.988 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, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, TRACKER_ID=0.1, T_KAM_HTML_FONT_INVALID=0.01] 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 nosk0-_oDfK8 for <ufmrg@mail2.ietf.org>; Sat, 27 Jun 2026 12:19:15 -0700 (PDT)
Received: from mail-dl1-x122c.google.com (mail-dl1-x122c.google.com [IPv6:2607:f8b0:4864:20::122c]) (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 34FBB108DC3C1 for <ufmrg@irtf.org>; Sat, 27 Jun 2026 12:19:15 -0700 (PDT)
Received: by mail-dl1-x122c.google.com with SMTP id a92af1059eb24-13981833e13so2599846c88.1 for <ufmrg@irtf.org>; Sat, 27 Jun 2026 12:19:15 -0700 (PDT)
ARC-Seal: i=1; a=rsa-sha256; t=1782587948; cv=none; d=google.com; s=arc-20260327; b=j5mnUauc1JDUHUStk8OuFL9W0NnlykriJM3Y9jEcU6NfITZNrGVMYqygoG1lJmAT8V 7tPGAB3ts4H6m8Gbo8TfFdMgtCKnX1Mh+cQHcaDVUkuId8d5TvBOUtKOBbt/K1yWzMYM U0rmjNZwaU6kIONfbm34rV988vcGEwhq4go+E6Z+gZ5ptllWZ3y2okxVL4F11a7cSp3l t431fs73So5iajWoWXfQ06+dJEMhLA+UA8NIIduw8LQfpcCCc8FbPJ+j9vmxGwE8+USy OYAUJOm3DNL1N9OhfcyVOx+ar3MsaBGuOcSogWxuRLdH+UBPSFSU8LRIs1HEogEo+dtd hlVg==
ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20260327; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:dkim-signature; bh=Og/oHcrfzOLSxnf/WB3u7mBPBBZJlwH9JxeJXCfJzrY=; fh=x5S0WlmiaxRJLW1JoeV81PWc5jcux8YX1fq6FaH6v+o=; b=SN/XL0hN6Vbc5YwIg0DYqBuGY9YPjlgA8P5f0CxA+1ZrZ/RL5yHbF1Y6YbF1AlSTFX L2sR1GZK2L9ZuxsFt/qIKuWaLnDt40TAmfBPY17TsRz7INXiXB1Cl8moPhT1r0sZRRyF vYbDpzwdUfIZKiQbxSK2Sn3tY/teCiBGI+gSn78MER8AQUysH9gNDLRJwVEa233ztiuQ +wWXECgp66KKkfk2I6I8futT+Lc0vWJOjtl8E9C6c5At3ulOY0+HBZaIiOQcG6D+zAs5 E/v/kKXTdrmg/xDxyvpDdG9MIrpgPxwOY+epi35V+JzcdOnBbmXbucDmwMzXODpqbUsA a3lQ==; darn=irtf.org
ARC-Authentication-Results: i=1; mx.google.com; arc=none
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1782587948; x=1783192748; darn=irtf.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=Og/oHcrfzOLSxnf/WB3u7mBPBBZJlwH9JxeJXCfJzrY=; b=kbCoT+JytLSISCfKCnSOIcTV21TSg1ZTeJLApKgqELIJhHJgzAuMhGhC5poyElJKNu Wv0msG5rt4jpNa8As9aQVaBpNkSGvn1dx6c50edHmM/lDcTS7bOWsKu5SrFwzJn7vF+f hvMT8eXUcHdrdRafq+2NkSpfjAjiOE6r1Vqw/KJWx9iQFLIak3I8UO4Otm5gM5C8SzIs Irlnk0iFna3d29EVNAyI2FlECFLgJ2JcLhBXDO7PjzMIKJQvBNHGudfXApL/bdNem+PR WxjeTM8yNH2Gn0GD5Ueyta3NmT+riPpY+nfYK5omZOP2pqFiQ916yofYc7xjnpLw+Gl7 7EeQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1782587948; x=1783192748; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=Og/oHcrfzOLSxnf/WB3u7mBPBBZJlwH9JxeJXCfJzrY=; b=skrSI4C8nXO/v3+yz3dtADwQoItMBazAqS3CLtvrSygMZCwox4CqElhu/ilzw8ywov Nfz3DWwCn4J1Zt0tvcEFSTj2Lt/FZ2a3xSI4iEP8OhidlpdAc0vxfLsFLTQppdrW5zCn xZWarUQQ+I5hWUsoCua4JpgHjXkqse64svyon+mS4LPEoKtkU1yRFUvP50fzE9gk2KB1 iZr9xwHR7pZtEvSQR15BcVW7NzSUehnt+8qrFRBZ+8f5dCPCgFBz1bjIWgnHYJ0YzUSO x3ug5pa2EwTFtcK3q9WNKnpsJ2Pb77xLSxhIuvqPH3UfLQZBmDK2LyfS27R2DeKv7cnB 0QRQ==
X-Gm-Message-State: AOJu0YwzeaxjsPfktbmYWSqNWQi8MQiiH8ZQDYH7vL5vChst+9rnHXkx E6b5ZGNQBUV780KKDgzQFgSC2qUccQaF9u6TV09FaGNKG/flvdEVpFbLKMZnBSHXF0OtkDA9tr/ TF2M2B3If7wkPLbn7lKgo8bUgOdX2BGY=
X-Gm-Gg: AfdE7ck8s+iSv0BM1xLUweTquw7N/sOJwOf3gh6J0fbOmfnTZhsYvfNaANV9no5IeKI 5rdAXksTm3d09UMimS7JPNlqISUknyDpYE1LbO/iyEn2/1JF1vMMn19myd2r+Oa8lYtIdxgoVBG ndASTU/z/XKYGOpBilVfn6Kzuy1hfmOX2GcSA7q/srNQ2SEdrc2b5rRjJpjF4bDZBm3DwCsS1R3 ScoLOE3uYqRqoxhWVdPM1eim+jaXwaqFV07CTMbLxxnPHwatdiF9sj/xeMfSkN+Eihdz9tJ
X-Received: by 2002:a05:7022:6192:b0:138:e4:c44d with SMTP id a92af1059eb24-139dbae0ad1mr8596486c88.25.1782587947773; Sat, 27 Jun 2026 12:19:07 -0700 (PDT)
MIME-Version: 1.0
References: <5f361893-bc32-4737-9578-fdb3ad7be3f9@tu-dresden.de> <9F03163D-B0F9-40DD-A4AB-69C151B872D6@aiven.io> <c4a0c433-173d-44ac-bd48-eed642a674d3@tu-dresden.de> <CAHxYnaOBMnPp7EiRLNYWX8AQDc2zYoBL226nfeBiPXsyii7Now@mail.gmail.com> <CAHxYnaOFWQBLf0Pn8bY=CMx7ytSEkTbvj7xp-s0GCHJohRh5xg@mail.gmail.com> <2b53d833-51b8-4915-82b0-ac3305e89528@tu-dresden.de>
In-Reply-To: <2b53d833-51b8-4915-82b0-ac3305e89528@tu-dresden.de>
From: Nathanael Ritz <nathanritz@gmail.com>
Date: Sat, 27 Jun 2026 13:18:55 -0600
X-Gm-Features: AVVi8CdF0W3hlpEEQIPoR0jCoAsLg7Y1tkIGzAYMzrpTuJsFdl-bB-xpubvhUsg
Message-ID: <CAHxYnaPDTzHuXyeC06bKWNOQ+wYfc-02AVyDETveL7dTteYURA@mail.gmail.com>
To: "seat@ietf.org" <seat@ietf.org>
Content-Type: multipart/alternative; boundary="0000000000006876ba0655411966"
Message-ID-Hash: ZM2UDT4LQDHFTYTCL4E7PLIN5Q4AYZ7W
X-Message-ID-Hash: ZM2UDT4LQDHFTYTCL4E7PLIN5Q4AYZ7W
X-MailFrom: nathanritz@gmail.com
X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header
CC: ufmrg@irtf.org, Songbo Bu <bluedognull@gmail.com>, Muhammad Usama Sardar <muhammad_usama.sardar@tu-dresden.de>
X-Mailman-Version: 3.3.9rc6
Precedence: list
Subject: [Ufmrg] Re: [Seat] Comments on formal analysis of relay attacks in attested TLS (CVE-2026-33697)
List-Id: Usable Formal Methods Research Group <ufmrg.irtf.org>
Archived-At: <https://mailarchive.ietf.org/arch/msg/ufmrg/K7Qwse5hNOw819IHG7AifUjEaz8>
List-Archive: <https://mailarchive.ietf.org/arch/browse/ufmrg>
List-Help: <mailto:ufmrg-request@irtf.org?subject=help>
List-Owner: <mailto:ufmrg-owner@irtf.org>
List-Post: <mailto:ufmrg@irtf.org>
List-Subscribe: <mailto:ufmrg-join@irtf.org>
List-Unsubscribe: <mailto:ufmrg-leave@irtf.org>
Hi Songbo, Usama, all I have additional comments to share regarding the recent formal analysis put foward by Sardar et al., which evaluates relay attacks in attested TLS such as CVE-2026-33697, as well some of the proposed mitigations. Comments are offered below with [NR]: On Sat, 27 Jun 2026 at 09:02, Songbo Bu <bluedognull@gmail.com> wrote: > Hi all, > > I would like to add an independent reproducibility data point for the > public artifact. > > [...] > > The artifact provides a reproducible and formal way to compare different > authentication-binding strengths in TLS. > [NR] I can confirm that the artifacts presented are reproducible and align with the inline commentary included in the ProVerif source. [NR] That being said, it's worth noting that the authors of the models have made efforts to clarify [13] that their analysis cannot provide structural analysis of the entire design space, as neither of the three active I-Ds with concrete protocol specifications previously presented to the SEAT WG includes a dual-signature CV (`CV_Ext`). [NR] This makes the models put presented by Usama and collaborators fundamentally incompatible with those drafts, meaning they cannot provide concrete counter-examples to any of the security claims or properties mentioned in the individual I-Ds from either draft-fossati-seat-early-attestation-04 or draft-ritz-seat-facts-00. This is a meaningful limitation of the formal analysis within the intra-handshake attestation design space. This is useful for the SEAT discussion because it distinguishes binding > evidence to early/DH-derived state, handshake traffic-key state, and > application traffic-key state under the confidential computing adversary > model. > [NR] The work is useful to the SEAT discussion because it affirms our understanding that current implementations based on the unadopted, and expired individual Internet-Draft [17] are insecure and exclude a number of possible designs that have also been formally proven to be insecure. Therefore, as I mentioned previously, I **strongly advise** against introducing concrete designs or specifications in any active Internet-Draft that reflects any of the binders proposed by Sardar et al. in their most recent work. I also think the artifact is valuable input for evaluating whether > intra-handshake attestation adds security benefit commensurate with its > protocol complexity. Extra code paths, transcript interactions, and TLS > state-machine changes increase implementation and review burden. Before > absorbing that complexity into protocol design, it seems useful to make > explicit which security property an intra-handshake component achieves, and > whether that property cannot be achieved by a simpler post-handshake design. > [NR] I agree completely. For example, I understand that much of the concrete specification I proposed in my own individual I-D, draft-ritz-seat-facts-00 is more complex than necessary compared to draft-fossati-seat-early-attestation-03 released the same day. This complexity is even more apparent when compared to the changes published in their recent -04 revision. [NR] I am hopeful that such evaluations on concrete proposals based on **active** Internet-Drafts under discussion with the SEAT WG will continue, especially if the WG has concensus towards formal adoption of draft-mihalcea-seat-use-cases. > If a proposed construction is believed to bind attestation state to TLS in > a way that differs from the current artifact, a minimal model change or PR > would make the comparison easier to evaluate. > [NR] Agreed. However, I'm not convinced a minimal model change is possible given the fundamental incompatibility between how the current models under discussion are constructed and the specifications and security considerations outlined in the active drafts discussed with the SEAT WG. For those curious, I outlined the necessary model changes that might be necessary in order to properly evaluate draft-fossati-seat-early-attestation-03 at [18], (also copied below in this thread). I have also proposed a model that demonstrates proper mitigation of the flaw, as I understand it, at both [19] and [20]. On Fri, 26 Jun 2026 at 05:41, Muhammad Usama Sardar < muhammad_usama.sardar@tu-dresden.de> wrote: > Hi Nathanael, > > [...] > > I respectfully request that the authors update their ProVerif artifacts to > accurately reflect the actual binder derivations (such as the > `HKDF-Expand-Label` derivation in Section 5.1.1) and the standard > `CertificateVerify` boundaries established by the WG's drafts if they have > not already done so, and present that work here. > > There are no WG's drafts in SEAT as of today. All are *individual* I-Ds. > [NR] Thanks for clarifying that important detail. The request respectfully still stands for the *individual* I-Ds I suggested earlier. > Finally and to that end, I suggest this working group focus its future > energy on carefully considering the merits of active indivual I-Ds such as > `draft-fossati-seat-expat` or `draft-fossati-seat-early-attestation`. Both > are designed to provide resilience against single-key compromise and > neither has any known attacks (beyond typical cryptographic assumptions). > > We disagree with your assessment of draft-fossati-seat-early-attestation. > We believe the design in draft-fossati-seat-early-attestation is vulnerable > to CVE. > [NR] Once again, the claim that active individual I-Ds such as draft-fossati-seat-early-attestation are potentially vulnerable to CVE-2026-33697 continues to persist without clear demonstrable evidence. The claim appears to be framed as informed intuition [21], but I don't think the models’ applicability to inform such intuition has been backed by their technical merits. As mentioned earlier, I identified two constructive elements causing the models to strictly fall out of alignment with the drafts' specifications, and the authors have not disputed this misalignment. [NR] I believe that repeated claims of attacks on active drafts under discussion within any WG ought to be supported by published evidence or concrete testable arguments, as I largely suggested the same on-list a few months back [22]. Cheers, Nathanael [9] https://github.com/CCC-Attestation/formal-spec-KBS > > [10] > https://mailarchive.ietf.org/arch/msg/tls/amNYPs3eV3a-l5bFQtUDGx4fU24/ > > [11] > https://github.com/CCC-Attestation/formal-spec-KBS/tree/f96761deeee3b7574959eec9f44fe940b33dcbde > > [12] > https://github.com/CCC-Attestation/formal-spec-KBS/blob/f96761deeee3b7574959eec9f44fe940b33dcbde/README.md?plain=1#L58 > > [13] https://github.com/CCC-Attestation/formal-spec-KBS#modeling > > [14] https://github.com/CCC-Attestation/formal-spec-KBS#acknowledgments > > [15] https://github.com/CCC-Attestation/formal-spec-KBS#pre-print > [16] https://mailarchive.ietf.org/arch/msg/seat/2HfF4JjZbJhw-HJo1GbVTkUmeVU/ > > [17] https://datatracker.ietf.org/doc/draft-fossati-tls-attestation/ [18] https://mailarchive.ietf.org/arch/msg/seat/U-0qtLpaFqQ7MDq-ArRflnEe-rE/ [19] https://mailarchive.ietf.org/arch/msg/seat/-_ljx07LGlxvVtNaKQfKKcUEuhw/ [20] https://mailarchive.ietf.org/arch/msg/seat/bdLxj7cMeRaSgtppKek8uVXHSjA/ [21] https://mailarchive.ietf.org/arch/msg/seat/6P_1jR-fylM9WCOGGTgaVEQ0Khc/ [22] https://mailarchive.ietf.org/arch/msg/seat/J3-2ivC7smo2qNpK6SMP-rKKAjU/ ----------------------------------------------- From: Songbo Bu <bluedognull@gmail.com> Date: Sat, 27 Jun 2026 at 09:02 Subject: [Seat] Re: Comments on formal analysis of relay attacks in attested TLS To: <seat@ietf.org>, <ufmrg@irtf.org>, Muhammad Usama Sardar < muhammad_usama.sardar@tu-dresden.de> Hi all, I would like to add an independent reproducibility data point for the public artifact. I ran the formal-spec-KBS ProVerif artifact at commit: f96761deeee3b7574959eec9f44fe940b33dcbde Environment: ProVerif 2.05 OPAM switch: default OCaml 5.5.0 Command used in each model directory: proverif -lib tls-lib-simple.pvl tls13-multiagent.pv I ran all seven candidate binding mechanisms, binder1 through binder7, and the proposed mechanism, proposal. All eight runs completed successfully. I also extracted the Verification summary from each run and compared it against the log.txt files in the repository; the summaries matched exactly in all eight cases. For the three correlation goals, my reproduced results are: Mechanism | G1: evidence to DH shared secret | G2: evidence to client handshake traffic key | G3: evidence to client application traffic key binder1 | false | false | false binder2 | false | false | false binder3 | true | false | false binder4 | false | false | false binder5 | true | false | false binder6 | false | false | false binder7 | true | false | false proposal | true | true | false The artifact provides a reproducible and formal way to compare different authentication-binding strengths in TLS. This is useful for the SEAT discussion because it distinguishes binding evidence to early/DH-derived state, handshake traffic-key state, and application traffic-key state under the confidential computing adversary model. I also think the artifact is valuable input for evaluating whether intra-handshake attestation adds security benefit commensurate with its protocol complexity. Extra code paths, transcript interactions, and TLS state-machine changes increase implementation and review burden. Before absorbing that complexity into protocol design, it seems useful to make explicit which security property an intra-handshake component achieves, and whether that property cannot be achieved by a simpler post-handshake design. If a proposed construction is believed to bind attestation state to TLS in a way that differs from the current artifact, a minimal model change or PR would make the comparison easier to evaluate. I am continuing to investigate implementation evidence and can update later if I obtain additional reproducible results. Best, Songbo _______________________________________________ Seat mailing list -- seat@ietf.org To unsubscribe send an email to seat-leave@ietf.org ----------------------------------------------- From: Muhammad Usama Sardar <muhammad_usama.sardar@tu-dresden.de> Date: Fri, 26 Jun 2026 at 05:41 Subject: Re: [Seat] Comments on formal analysis of relay attacks in attested TLS (CVE-2026-33697) To: Nathanael Ritz <nathanritz@gmail.com>, seat@ietf.org <seat@ietf.org> Cc: <ufmrg@irtf.org> Hi Nathanael, Thank you for your detailed comments. First, we updated the subject, which was mistakenly mentioning an irrelevant CVE instead of the one we discovered. The key point is that as already discussed (e.g., [16]), we believe draft-fossati-seat-early-attestation itself contradicts SEAT charter, and hence any reasonable formal analysis related to this draft will do so. Moreover, we would like to clarify the following and welcome constructive feedback as a minimal PR: On 26.06.26 09:08, Nathanael Ritz wrote: ## A. Every demonstrated model uses a non-standard dual `CertificateVerify` construction (`CV_Ext`), in contradiction to the SEAT WG charter We believe the model section [13] is sufficiently clear on this but we will clarify it further in the repo. We considered it more useful to show the added value of this contribution to the WG by using the fixed version of diversion attacks as the baseline, rather than showing the same old attacks from ID-Crisis paper, and the discovered CVE (CVE-2026-33697) -- which the previous analysis could not find -- practically demonstrates that. This modeling choice makes it clear that even with the diversion attacks fixed, high-severity relay attacks would still remain in intra-handshake attestation. The pre-print (which will be added soon [15]) makes this clear as well. This is also reflected in acknowledgments, where folks who contributed to the previous formal modeling effort are acknowledged with an explicit split [14]. (Thank you all once again) Therefore, I propose that if Usama and collaborators are serious about exploring a dual-signature variation of CertificateVerify as a genuine solution for composing remote attestation with TLS, they perhaps consider continued collaboration with the authors of `draft-yusef-tls-pqt-dual-certs` [10], or with others in the TLS WG, to bring forward their case for novel modifications to the TLS state machine. Otherwise, just as the authors of `draft-fossati-seat-early-attestation` did when moving from revision -02 to -03, I suggest that Sardar et al. consider bringing forward novel proposals or formal analysis for intra-handshake attestation that conform to the SEAT charter. Thanks. We will share the analysis with the TLS WG as well and as already clarified, draft-fossati-seat-early-attestation is technically a hybrid with a combination of intra- and post-handshake attestation and our formal analysis contribution to the WG questions the claim on the need for intra-handshake attestation in this combination. ## B. The CA-backed key (`pubLTK`) is never bound into the attestation evidence (`rdata`) Sure, things are a bit more subtle. There are several open questions here based on confidential computing (CC) threat model on how to do that with the cloud provider out of TCB and we welcome your thoughts on those: 1. What is the "long-term identity" of the CC workload? How is "long-term identity" assigned to the CC workload? Which entity supplies this "long-term identity"? How is that Identity Supplier trusted? 2. How is CA-certified Long-Term Key (LTK) injected in the Confidential Computing workload in the first place? In every single model (`binder1` through `binder7`, `aggregate`, and `proposal`), the `rdata` value—which is what the Attestation Key (`privAK`) actually signs to generate the evidence—is restricted to nonces, session-derived values, and the uncertified ephemeral key (`pubEK`). That's how we understand the four analyzed real-world practical implementations are doing it 1. Meta's AI 2. Cocos AI 3. Edgeless Systems 4. CCC proof-of-concept and they have acknowledged it. If your understanding of any of the analyzed implementations is different, we would appreciate a minimal possible PR for the respective binding mechanism that we will be happy to concretely discuss. ## Other remarks >From careful review, and based on what has been published to-date, *I have personally found no merit to the claims* that the main results "suggest that more recent proposals draft-fossati-seat-early-attestation and draft-ritz-seat-facts add unnecessary complexity of intra-handshake attestation without adding any security benefit". [12] One aspect missing here is that both mentioned drafts are hybrids (combination of intra- and post-handshake attestation). Could you please identify a concrete security property which is achieved by the combination of intra- and post-handshake attestation but not by simple post-handshake attestation? I respectfully request that the authors update their ProVerif artifacts to accurately reflect the actual binder derivations (such as the `HKDF-Expand-Label` derivation in Section 5.1.1) and the standard `CertificateVerify` boundaries established by the WG's drafts if they have not already done so, and present that work here. There are no WG's drafts in SEAT as of today. All are *individual* I-Ds. Finally and to that end, I suggest this working group focus its future energy on carefully considering the merits of active indivual I-Ds such as `draft-fossati-seat-expat` or `draft-fossati-seat-early-attestation`. Both are designed to provide resilience against single-key compromise and neither has any known attacks (beyond typical cryptographic assumptions). We disagree with your assessment of draft-fossati-seat-early-attestation. We believe the design in draft-fossati-seat-early-attestation is vulnerable to CVE. Even if you disagree with it, additional code is additional complexity and thus additional attack surface. We would like to see much stronger arguments than have been presented to date before we absorb this complexity. Best regards, Usama, Slava, and Jean-Marie [9] https://github.com/CCC-Attestation/formal-spec-KBS [10] https://mailarchive.ietf.org/arch/msg/tls/amNYPs3eV3a-l5bFQtUDGx4fU24/ [11] https://github.com/CCC-Attestation/formal-spec-KBS/tree/f96761deeee3b7574959eec9f44fe940b33dcbde [12] https://github.com/CCC-Attestation/formal-spec-KBS/blob/f96761deeee3b7574959eec9f44fe940b33dcbde/README.md?plain=1#L58 [13] https://github.com/CCC-Attestation/formal-spec-KBS#modeling [14] https://github.com/CCC-Attestation/formal-spec-KBS#acknowledgments [15] https://github.com/CCC-Attestation/formal-spec-KBS#pre-print [16] https://mailarchive.ietf.org/arch/msg/seat/2HfF4JjZbJhw-HJo1GbVTkUmeVU/ ----------------------------------------------- From: Nathanael Ritz <nathanritz@gmail.com> Date: Fri, 26 Jun 2026 at 01:08 Subject: Comments on formal analysis of relay attacks in attested TLS (CVE-2026-3369) To: seat@ietf.org <seat@ietf.org> Cc: <ufmrg@irtf.org> Hello, Thank you to Usama and collaborators for bringing their recent work forward for the SEAT WG and UFMRG to consider [9]. I have independently reviewed the models and I have a number of concerns regarding the applicability of the analysis to the current effort of this working group. My concerns are organized into two main parts, A. and B., along with a few additional remarks. My comments are offered below: ## A. Every demonstrated model uses a non-standard dual `CertificateVerify` construction (`CV_Ext`), in contradiction to the SEAT WG charter TLS 1.3 (RFC 8446bis) requires a single signature from the endpoint's identity key over the handshake transcript. However, the models apply *both* an uncertified ephemeral key (`privEK`) and a CA-backed long-term key (`privLTK`) to sign the transcript independently of each other. This is explicitly written in the `Server` process: ```ocaml let sg = sign(privEK ,hash(hash_algo,log_CRT)) in let sg_LTK = sign(privLTK,hash(hash_algo,log_CRT)) in out(io,CV_Ext(sg,sg_LTK)); ``` The `Client` process is then hardcoded to receive and verify this dual-signature payload: ```ocaml in(io,CV_Ext(s,s_LTK)); if verify(pubEK,hash(shash_algo,log_CRT),s) = true then if verify(pubLTK,hash(shash_algo,log_CRT),s_LTK) = true then ``` In case it is not apparent, this dual-signature `CV_Ext` mechanism has no basis in any IETF proposed standard. Therefore, I propose that if Usama and collaborators are serious about exploring a dual-signature variation of CertificateVerify as a genuine solution for composing remote attestation with TLS, they perhaps consider continued collaboration with the authors of `draft-yusef-tls-pqt-dual-certs` [10], or with others in the TLS WG, to bring forward their case for novel modifications to the TLS state machine. Otherwise, just as the authors of `draft-fossati-seat-early-attestation` did when moving from revision -02 to -03, I suggest that Sardar et al. consider bringing forward novel proposals or formal analysis for intra-handshake attestation that conform to the SEAT charter. ## B. The CA-backed key (`pubLTK`) is never bound into the attestation evidence (`rdata`) In every single model (`binder1` through `binder7`, `aggregate`, and `proposal`), the `rdata` value—which is what the Attestation Key (`privAK`) actually signs to generate the evidence—is restricted to nonces, session-derived values, and the uncertified ephemeral key (`pubEK`). Looking at the `Server` process across the binder folders, the exact definitions for `rdata` across all the evaluated mechanisms are: ``` * **Binder 1:** `let rdata = rand2bs(cr)` (Client's TLS nonce) * **Binder 2:** `let rdata = rand2bs(ar)` (Client's attestation nonce) * **Binder 3:** `let rdata = exp0` (Early exporter) * **Binder 4:** `let rdata = pub2bs(pubEK)` (Ephemeral public key) * **Binder 5:** `let rdata = (ar,exp0)` (Attestation nonce + Early exporter) * **Binder 6:** `let rdata = (ar,pubEK)` (Attestation nonce + Ephemeral public key) * **Binder 7:** `let rdata = (ar,exp0,pubEK)` (Attestation nonce + Early exporter + Ephemeral public key) * **Aggregate:** `let rdata = (cb,pubEK)` (Custom HS-derived exporter + Ephemeral public key) * **Proposal:** `let cb = kdf_exp(hs,log_SH) in let rdata = (ar,cb,pubEK)` (Attestation nonce + Custom HS-derived exporter + Ephemeral public key) ``` Not one of these definitions in the published folders includes an rdata construction where a CA-backed `pubLTK` is included. Therefore, the attestation Evidence generated in these models completely fails to cryptographically bind to a trusted 3rd party to validate the identity associated with the given TLS connection. I do not believe it is necessary to evaluate the merits of how values like `cb` are derived when none of the models can even stand up to single key compromise -- of which -- binding a CA-backed `pubLTK` with the session is what would be required. As of the currently published commit (#f96761d) in the shared repo [11], the vulnerability analysis in the public release relies on an architecture that is fundamentally misaligned with the recommendations discussed in both of the most recent revisions for the current front-running individual I-Ds: `draft-fossati-seat-early-attestation` and `draft-fossati-seat-expat`. ## Other remarks While formal methods are an invaluable tool for our process, their utility depends entirely on the accuracy of the models themselves. >From careful review, and based on what has been published to-date, *I have personally found no merit to the claims* that the main results "suggest that more recent proposals draft-fossati-seat-early-attestation and draft-ritz-seat-facts add unnecessary complexity of intra-handshake attestation without adding any security benefit". [12] Furthermore, I do not believe repeating such statements serves the SEAT WG's best interests unless concrete evidence for those claims can be brought forward and examined independently. I respectfully request that the authors update their ProVerif artifacts to accurately reflect the actual binder derivations (such as the `HKDF-Expand-Label` derivation in Section 5.1.1) and the standard `CertificateVerify` boundaries established by the WG's drafts if they have not already done so, and present that work here. With all of that said, I strongly believe this effort unequivocally demonstrates and makes clear that no further consideration of the long-expired `draft-fossati-tls-attestation` I-D is necessary effort in this WG. I would strongly recommend that any vendors still deploying systems based on that old specification make immediate plans to transition away, in order to avoid well-known vulnerabilities such as CVE-2026-3369, which Usama and collaborators had previously responsibly disclosed. Finally and to that end, I suggest this working group focus its future energy on carefully considering the merits of active indivual I-Ds such as `draft-fossati-seat-expat` or `draft-fossati-seat-early-attestation`. Both are designed to provide resilience against single-key compromise and neither has any known attacks (beyond typical cryptographic assumptions). Authors (all): Please feel free to correct me if I've missed a substantive detail, though nits are also okay! Cheers, Nathanael --- [9] https://github.com/CCC-Attestation/formal-spec-KBS [10] https://mailarchive.ietf.org/arch/msg/tls/amNYPs3eV3a-l5bFQtUDGx4fU24/ [11] https://github.com/CCC-Attestation/formal-spec-KBS/tree/f96761deeee3b7574959eec9f44fe940b33dcbde [12] https://github.com/CCC-Attestation/formal-spec-KBS/blob/f96761deeee3b7574959eec9f44fe940b33dcbde/README.md?plain=1#L58 ----------------------------------------------- From: Muhammad Usama Sardar <muhammad_usama.sardar@tu-dresden.de> Date: Thu, 25 Jun 2026 at 16:19 Subject: [Seat] Re: Relay Attacks in Intra-handshake Attestation for Confidential Agentic AI Systems To: seat@ietf.org <seat@ietf.org>, UFMRG IRTF <ufmrg@irtf.org> Hi SEAT and UFMRG, In line with the SEAT charter (*emphasis* our own): The working group will engage with the research community on the evaluation and formal analysis of the protocol artifacts *in parallel* with the specification work. and the required property in the SEAT charter (*emphasis* our own): The attested D(TLS) protocol extension will also describe a minimum subset of properties that the attested state must convey in order to *bind the Evidence* and Attestation Results *to the TLS connection*. we (I, Slava, and Jean-Marie) would like to share the concrete technical results for binding mechanisms of the intra-handshake attestation from our formal analysis in ProVerif [9]: 1. All analyzed binding mechanisms and the corresponding implementations of intra-handshake attestation are vulnerable to relay attacks. 2. Early exporter helps achieve level 1 binding. 3. Our proposed mechanism helps achieve level 2 binding. 4. It may not be possible to achieve level 3 binding in intra-handshake attestation alone. 5. The research suggests that more recent proposals draft-fossati-seat-early-attestation and draft-ritz-seat-facts add complexity of intra-handshake attestation relative to draft-fossati-seat-expat without offering additional security benefits. To support independent review, further research and development by the RG/WG, we have released the ProVerif artifacts [9] under Apache-2.0 License. We hope these artifacts provide useful input for SEAT. There is also a paper-and-pen proof in the corresponding paper supporting the above results, which we will share soon with the WG/RG. We welcome any constructive and technical feedback from the WG/RG and will be happy to address it. Best regards, Usama, Slava, and Jean-Marie ----------------------------------------------- From: Nathanael Ritz <nathanritz@gmail.com> Date: Mon, 22 Jun 2026 at 11:12 Subject: Re: [Seat] Re: Relay Attacks in Intra-handshake Attestation for Confidential Agentic AI Systems To: seat@ietf.org <seat@ietf.org> Hi SEAT, I have some additional comments to offer in this thread. Comments are offered below with [NR]: On Thu, 18 Jun 2026 at 15:58, Muhammad Usama Sardar < muhammad_usama.sardar@tu-dresden.de> wrote: > Hi Paul, > [...] Formal (Symbolic and paper-and-pen) analyses is *the most* serious > thing we could do. Let us know if you had/have something else in mind. > [NR] I generally agree with Usama's sentiment regarding the merits of additional formal analysis work, which he shared with me at [2]. Of course, understanding the context helps interpret any formal analysis to evaluate how and why certain query results relate to the present work. > Technically, we do not believe we have missed any binding mechanism for > intra-handshake attestation that might lead to different results. > [NR] My current understanding of this statement is that the paper and/or artifacts may not directly analyze the unique binding of either of the "two [3,4] out of three current proposals under discussion in the WG." While formal analysis of real-world implementations may be useful for some vendors still deploying old, unstable specs (resulting in high-severity CVEs), I believe that the current work proposed to this WG has moved well beyond the limitations originally found in the expired `draft-fossati-tls-attestation` I-D, for example. > We would be happy if you could tell from the email in the thread which > binding mechanism or point us to any missing real-world implementation for > intra-handshake attestation you would like us to check. Formal analysis > artifacts are easily extensible. > [NR] In my view, the binding mechanism the WG should evaluate, if not done already, is found in draft-fossati-seat-early-attestation-04 as defined by section 5.1.1. > One can check additional binding mechanisms by just changing the value of > a single variable: rdata. Everything else is automated. > [NR] Depending on the model's construction, merely changing the input to `rdata` may not yield new results, as that modification alone would be insufficient without also incorporating a CA-backed certificate into the same model. I don't think anyone in this WG will argue that any concrete protocol proposals submitted to the list should not produce a usable second trust anchor. Usama also noted this sentiment in his IETF-125 follow-up to the CFRG mailing list regarding his presentation about composing remote attestation with TLS [5]. I agree that providing two independent trust anchors seems to be the general point of the exercise. [NR] Furthermore, both `draft-fossati-seat-expat-02` and `draft-fossati-seat-early-attestation-04` acknowledge the risks of so-called "split deployments," where the TLS stack does not reside inside the TEE [6, 7]. This kind of split deployment can occur when CV is checked against a standard CA-backed webPKI certificate whose private key resides outside the TEE. [NR] Therefore, beyond merely updating the single `rdata` value -- the formal model needs to evaluate the security properties when a CA-backed signing key (LTK) is composed with Evidence signed over by the attestation signing key (AK) present inside the attesting environment. In a follow-up to Usama's request [2] for my own formal analysis work on `draft-fossati-seat-expat-02`, I did just that [8], and found that while the ephemeral signing key inside the TEE provided no independent security fallbacks on it's own (pending critical feedback on my model), I still found that both the AK and LTK independently provided resilience against single key compromise. [NR] My models for `draft-fossati-seat-early-attestation-03` (extended from Sardar et al.'s Identity Crisis research) also indicated the same to me: both the AK and LTK (TIK) appear to provide independent, trust-anchor redundancy in the case the AK might be abused as a signing oracle, or separately in the case where the AK is assumed fine, but LTK has been stolen or otherwise compromised itself. [NR] In short, while it's hard to be sure about the full scope of the forthcoming work for now, I would like to see Usama and collaborators share a model that explicitly evaluates the binder mechanism from `draft-fossati-seat-early-attestation-04`, where the assumptions align with that draft's security model: modeling a TEE-resident TIK that is provisioned with a CA-backed certificate alongside the novel binder mechanism. I would be very interested to see the results of such a direct analysis, regardless of opinions regarding the status of the draft's apparent scope within the SEAT charter. Sincerely, Nathanael [0] > https://github.com/CCC-Attestation/formal-spec-KBS#upcoming-and-recent-talks-and-research-visits > > [1] https://datatracker.ietf.org/doc/draft-usama-seat-intra-vs-post/ > [2] https://mailarchive.ietf.org/arch/msg/seat/VEgdWuRdOq0YwGV6OUTWUp5ShWM/ [3] https://datatracker.ietf.org/doc/draft-fossati-seat-early-attestation/ [4] https://datatracker.ietf.org/doc/draft-ritz-seat-facts/ [5] https://mailarchive.ietf.org/arch/msg/cfrg/sUQnF1KOL5XsvCwY0VRASICk3T4/ [6] https://www.ietf.org/archive/id/draft-fossati-seat-expat-02.html#section-5.2-2 [7] https://www.ietf.org/archive/id/draft-fossati-seat-early-attestation-04.html#section-5.2-2 [8] https://mailarchive.ietf.org/arch/msg/seat/zD1NTnUEdRM5SayHxXfuO9robTA/ On Thu, 18 Jun 2026 at 15:58, Muhammad Usama Sardar < muhammad_usama.sardar@tu-dresden.de> wrote: > Hi Paul, > On 18.06.26 22:45, Paul Wouters wrote: > > On Jun 16, 2026, at 17:02, Muhammad Usama Sardar > <muhammad_usama.sardar@tu-dresden.de> > <muhammad_usama.sardar@tu-dresden.de> wrote: > > Respectfully, just to clarify: as the email mentions, the work was > requested by Paul, the AD at that time. > > i have not requested any formal verification papers. > > I meant to refer to the protocol design and analysis work, not the paper. > This is what we (Slava, Jean-Marie, and I) understood you to be requesting. > > I am not aware of any one beyond 2-3 participants who can review the code. > Since this WG does not have the blessing of FATT, we believe writing paper > and getting it reviewed at conferences helps in independent evaluation of > the design approach and artifacts, in addition to WG participants' review. > > I have asked the WG in the past to seriously look at intra handshake > options with offering a straw man idea, > > Formal (Symbolic and paper-and-pen) analyses is *the most* serious thing > we could do. Let us know if you had/have something else in mind. > > but you seem mostly interested in disproving your own versions of > intra-handshake in favour of your preferred solution. > > I don't think they are *my* versions. We have collected the binding > mechanisms from existing real-world implementations of intra-handshake > attestation, including: > > 1. Meta's AI > 2. Cocos AI > 3. Edgeless Systems > 4. CCC proof-of-concept > > and discussions with the community, i.e., several research and industry > consortia [0], including the Confidential Computing Consortium. > > Technically, we do not believe we have missed any binding mechanism for > intra-handshake attestation that might lead to different results. We would > be happy if you could tell from the email in the thread which binding > mechanism or point us to any missing real-world implementation for > intra-handshake attestation you would like us to check. Formal analysis > artifacts are easily extensible. One can check additional binding > mechanisms by just changing the value of a single variable: rdata. > Everything else is automated. > > I also do not believe post-handshake is *my* preferred solution. It was > recommended by TLS WG back then, and several developers have shown their > preference because of security, privacy and unnecessary complexity issues > with intra-handshake attestation [1]. > > I still haven't seen, or missed in the many emails, of why binding TEE PKI > evidence and web server tls WebPKI cannot be done with some DNS/SAN binding > signed by the TEE, to ensure the integrity of the TLS server by the TEE > (even if that is not a confidential cloud computing use case) and avoiding > rebinding attacks by using a different compromised TEE > via the SAN reference of the TEE. > > We did not understand how to formalize that. If you could write a draft > clarifying the protocol spec, we'll happily do the analysis for you and > help you move the idea forward. > > Best regards, > > -Usama >
- [Ufmrg] Comments on formal analysis of relay atta… Nathanael Ritz
- [Ufmrg] Re: [Seat] Re: Comments on formal analysi… Давид Nunhausen
- [Ufmrg] Re: [Seat] Comments on formal analysis of… Muhammad Usama Sardar
- [Ufmrg] Re: [Seat] Re: Comments on formal analysi… rachid bouziane
- [Ufmrg] Re: [Seat] Comments on formal analysis of… Nathanael Ritz
- [Ufmrg] Re: [Seat] Comments on formal analysis of… Songbo Bu
- [Ufmrg] Re: [Seat] Comments on formal analysis of… Nathanael Ritz
- [Ufmrg] Re: [Seat] Comments on formal analysis of… Muhammad Usama Sardar
- [Ufmrg] Re: [Seat] Comments on formal analysis of… Nathanael Ritz
- [Ufmrg] [Seat] Re: Comments on formal analysis of… Songbo Bu
- [Ufmrg] Re: [Seat] Comments on formal analysis of… Muhammad Usama Sardar
- [Ufmrg] Re: [Seat] Comments on formal analysis of… Muhammad Usama Sardar
- [Ufmrg] Re: [Seat] Comments on formal analysis of… Nathanael Ritz
- [Ufmrg] Re: [Seat] Comments on formal analysis of… Songbo Bu
- [Ufmrg] Re: [Seat] Comments on formal analysis of… Nathanael Ritz
- [Ufmrg] Re: [Seat] Comments on formal analysis of… Songbo Bu
- [Ufmrg] Re: [Seat] Comments on formal analysis of… Muhammad Usama Sardar
- [Ufmrg] Re: [Seat] Comments on formal analysis of… Songbo Bu
- [Ufmrg] Re: [Seat] Re: Comments on formal analysi… Steve
- [Ufmrg] Re: [Seat] Re: Comments on formal analysi… Chengxin Huang
- [Ufmrg] Re: [Seat] Comments on formal analysis of… Song Haowen
- [Ufmrg] Re: [Seat] Re: Comments on formal analysi… Mark Novak
- [Ufmrg] Re: [Seat] Re: Comments on formal analysi… Markus Rudy
- [Ufmrg] Re: [Seat] Re: Comments on formal analysi… Mark Novak
- [Ufmrg] Re: [Seat] Re: Comments on formal analysi… camilo ayerbe
- [Ufmrg] Re: [Seat] Comments on formal analysis of… Markus Rudy
- [Ufmrg] Re: [Seat] Comments on formal analysis of… Muhammad Usama Sardar
- [Ufmrg] Re: [Seat] Comments on formal analysis of… Markus Rudy
- [Ufmrg] Re: [Seat] Comments on formal analysis of… Muhammad Usama Sardar
- [Ufmrg] Re: [Seat] Comments on formal analysis of… Markus Rudy
- [Ufmrg] Re: [Seat] Re: Comments on formal analysi… Nathanael Ritz
- [Ufmrg] Re: [Seat] Re: Comments on formal analysi… Muhammad Usama Sardar
- [Ufmrg] Re: [Seat] Re: Comments on formal analysi… Nathanael Ritz
- [Ufmrg] Re: [Seat] Re: Comments on formal analysi… Muhammad Usama Sardar
- [Ufmrg] Re: [Seat] Re: Comments on formal analysi… Salz, Rich
- [Ufmrg] Re: [Seat] Re: Re: Re: Comments on formal… Muhammad Usama Sardar
- [Ufmrg] Re: [Seat] Re: Comments on formal analysi… Nathanael Ritz
- [Ufmrg] Re: [Seat] Re: Comments on formal analysi… Muhammad Usama Sardar
- [Ufmrg] Re: [Seat] Re: Comments on formal analysi… Song Haowen
- [Ufmrg] Re: [Seat] Re: Comments on formal analysi… Chengxin Huang
- [Ufmrg] Re: [Seat] Re: Comments on formal analysi… Salz, Rich
- [Ufmrg] Re: [Seat] Comments on formal analysis of… Muhammad Usama Sardar
- [Ufmrg] Re: [Seat] Comments on formal analysis of… Markus Rudy