Re: [regext] Comments to the feedback about epp-over-http

Mario Loffredo <mario.loffredo@iit.cnr.it> Fri, 01 April 2022 07:03 UTC

Return-Path: <mario.loffredo@iit.cnr.it>
X-Original-To: regext@ietfa.amsl.com
Delivered-To: regext@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id AF3703A00DB for <regext@ietfa.amsl.com>; Fri, 1 Apr 2022 00:03:05 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.909
X-Spam-Level:
X-Spam-Status: No, score=-1.909 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HTML_MESSAGE=0.001, NICE_REPLY_A=-0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
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 dLq3gQNDuA_P for <regext@ietfa.amsl.com>; Fri, 1 Apr 2022 00:03:00 -0700 (PDT)
Received: from smtp.iit.cnr.it (mx4.iit.cnr.it [146.48.58.11]) by ietfa.amsl.com (Postfix) with ESMTP id 6CC953A00AD for <regext@ietf.org>; Fri, 1 Apr 2022 00:02:54 -0700 (PDT)
Received: from localhost (localhost [127.0.0.1]) by smtp.iit.cnr.it (Postfix) with ESMTP id 8ECEAB806CB; Fri, 1 Apr 2022 09:02:51 +0200 (CEST)
X-Virus-Scanned: Debian amavisd-new at mx4.iit.cnr.it
Received: from smtp.iit.cnr.it ([127.0.0.1]) by localhost (mx4.iit.cnr.it [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id qgFFAfBYfxLT; Fri, 1 Apr 2022 09:02:48 +0200 (CEST)
Received: from [192.12.193.108] (pc-loffredo.staff.nic.it [192.12.193.108]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits)) (No client certificate requested) by smtp.iit.cnr.it (Postfix) with ESMTPSA id 74470B80686; Fri, 1 Apr 2022 09:02:48 +0200 (CEST)
Content-Type: multipart/alternative; boundary="------------WpKeouTM0JJ7hVVNhSOr2DNU"
Message-ID: <15a5eac3-c145-3fef-9bb4-6cf245b9e0a9@iit.cnr.it>
Date: Fri, 1 Apr 2022 09:00:51 +0200
MIME-Version: 1.0
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:91.0) Gecko/20100101 Thunderbird/91.7.0
To: Francisco Obispo <francisco@unr.com>
Cc: regext@ietf.org
References: <0843A6FD-79B8-45B9-BE58-0BCED21C19B0@verisign.com> <1b87995b-700b-0d16-1241-c69cf142c3f7@iit.cnr.it> <8346151e-acc1-8e9a-f8ce-ac4d2f6a8dac@knipp.de> <759658bd-4781-a9cb-b7dd-88ba596fe2b0@iit.cnr.it> <58f622e5-1548-4894-a14c-c21125972a74@www.fastmail.com> <de81a129-68a4-8759-ee00-09ef2091ec22@iit.cnr.it> <6E923AA5-4027-4188-8DA3-6A93F39A3173@unr.com> <20457027-440b-02a5-82b8-3bef4e95819a@iit.cnr.it> <25E251B5-32D0-4E11-8383-F6CFFFD72CB8@unr.com> <c2bbe76c-4efd-4e92-3098-028291298001@iit.cnr.it> <01C969FA-3BE7-4F97-A171-A73C97D58580@unr.com>
From: Mario Loffredo <mario.loffredo@iit.cnr.it>
In-Reply-To: <01C969FA-3BE7-4F97-A171-A73C97D58580@unr.com>
Archived-At: <https://mailarchive.ietf.org/arch/msg/regext/TsIbQtPMwGb-goPBssyeYsq_dc0>
Subject: Re: [regext] Comments to the feedback about epp-over-http
X-BeenThere: regext@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: Registration Protocols Extensions <regext.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/regext>, <mailto:regext-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/regext/>
List-Post: <mailto:regext@ietf.org>
List-Help: <mailto:regext-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/regext>, <mailto:regext-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 01 Apr 2022 07:03:06 -0000

Hi Francisco,

Il 31/03/2022 22:19, Francisco Obispo ha scritto:
>
> Hi Mario,
>
> Response inline.
>
> On 31 Mar 2022, at 13:03, Mario Loffredo wrote:
>
>     Hi Francisco,
>
>     appreciated but:
>
>     1) The ssl variables in NGINX are different.
>
> Yes, they usually are :-)
>
>     2) Even supposing to extract CN or SAN, as it seems one should do
>     in NGINX via a regular expression, it doesn't necessarily
>     correspond to the registrar username to access the EPP server.
>
> Well, whichever method is used, it is important to tie the SSL client 
> to the |clID| otherwise an authorized client could try to login with a 
> separate account, so it serves the purpose of a multi-factor 
> authentication:
>
>   * IP address whitelist
>   * SSL client certificate pinning
>   * clID/password combination
>
Is this a recommendation or is a must?

It seems to me that there is no sentence in the security consideration 
section of RFC5734 stating that the SSL CN MUST be equal to clID ?

Anyway the concept that client certificate may be required is already 
present in the security considerations of epp-over-http:

    As a further measure to enforce the security, servers MAY require
    clients to present a digital certificate.  Clients who possess and
    present a valid X.509 digital certificate, issued by a recognized
    Certification Authority (CA), could be identified and authenticated
    by a server who trusts the corresponding CA.  This certificate-based
    mechanism is supported by HTTPS and can be used with EPP over HTTP.
    The TLS protocol describes the specification of a client certificate
    in Section 7.4.6 of [RFC8446].

I can replace in that sentence the word "MAY" with "SHOULD" and add text 
about client being required to check server certificate.

But the real question is another.

The real question is that every HTTP-based server implementing HTTP 
sessions through session cookies (including the RDAP server!) starts a 
session as a consequence of a successful authentication.

It's unnatural to start an HTTP session after a command that doesn't 
provide the server with any user preference. In RDAP, the user 
preferences are the user claims; in EPP, they are the namespaces that 
should be in force until the Logout.

This should be enough just to follow a consistent designing method 
between two protocols that would be used at the same layer of the stack.


Best,

Mario

>     3) I repeat: why should I complicate a solution to come to another
>     that I consider less efficient?
>
> Those methods described above, happen at different layers in the 
> stack, it is not complicated, this is exactly how we operate today (at 
> least Tucows Registry), SSL certificates are checked to ensure they 
> belong to the clID.
>
> IMO a new transport for EPP should at least offer the same safeguards.
>
>     Thanks again for the example that maybe will be useful in the
>     future :-)
>
>
> N/P, this is very similar to how IP access works at the HTTP level 
> using the |X-Forwarded-For| header or similar approach to signal the 
> application information about the client.
>
> Francisco
>
-- 
Dr. Mario Loffredo
Technological Unit “Digital Innovation”
Institute of Informatics and Telematics (IIT)
National Research Council (CNR)
via G. Moruzzi 1, I-56124 PISA, Italy
Phone: +39.0503153497
Web:http://www.iit.cnr.it/mario.loffredo