[ftpext] Fwd: Re: ftpext2 review of FTP HOST command?

Tony Hansen <tony@att.com> Mon, 12 March 2012 14:43 UTC

Return-Path: <tony@att.com>
X-Original-To: ftpext@ietfa.amsl.com
Delivered-To: ftpext@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 406E621E8028 for <ftpext@ietfa.amsl.com>; Mon, 12 Mar 2012 07:43:06 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -106.598
X-Spam-Level:
X-Spam-Status: No, score=-106.598 tagged_above=-999 required=5 tests=[AWL=-0.000, BAYES_00=-2.599, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_MED=-4, USER_IN_WHITELIST=-100]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id UqTyF5mHdyUN for <ftpext@ietfa.amsl.com>; Mon, 12 Mar 2012 07:43:05 -0700 (PDT)
Received: from mail119.messagelabs.com (mail119.messagelabs.com [216.82.241.195]) by ietfa.amsl.com (Postfix) with ESMTP id 37F4121E8025 for <ftpext@ietf.org>; Mon, 12 Mar 2012 07:43:05 -0700 (PDT)
X-Env-Sender: tony@att.com
X-Msg-Ref: server-12.tower-119.messagelabs.com!1331563383!15913749!1
X-Originating-IP: [144.160.20.145]
X-StarScan-Version: 6.5.5; banners=-,-,-
X-VirusChecked: Checked
Received: (qmail 29474 invoked from network); 12 Mar 2012 14:43:04 -0000
Received: from sbcsmtp6.sbc.com (HELO mlpd192.enaf.sfdc.sbc.com) (144.160.20.145) by server-12.tower-119.messagelabs.com with DHE-RSA-AES256-SHA encrypted SMTP; 12 Mar 2012 14:43:04 -0000
Received: from enaf.sfdc.sbc.com (localhost.localdomain [127.0.0.1]) by mlpd192.enaf.sfdc.sbc.com (8.14.5/8.14.5) with ESMTP id q2CEhYKe015816 for <ftpext@ietf.org>; Mon, 12 Mar 2012 10:43:34 -0400
Received: from sflint02.pst.cso.att.com (sflint02.pst.cso.att.com [144.154.234.229]) by mlpd192.enaf.sfdc.sbc.com (8.14.5/8.14.5) with ESMTP id q2CEhOda015615 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO) for <ftpext@ietf.org>; Mon, 12 Mar 2012 10:43:27 -0400
Received: from alpd052.aldc.att.com (alpd052.aldc.att.com [130.8.42.31]) by sflint02.pst.cso.att.com (RSA Interceptor) for <ftpext@ietf.org>; Mon, 12 Mar 2012 10:42:27 -0400
Received: from aldc.att.com (localhost.localdomain [127.0.0.1]) by alpd052.aldc.att.com (8.14.4/8.14.4) with ESMTP id q2CEgRkC026983 for <ftpext@ietf.org>; Mon, 12 Mar 2012 10:42:27 -0400
Received: from dns.maillennium.att.com (dns.maillennium.att.com [135.25.114.99]) by alpd052.aldc.att.com (8.14.4/8.14.4) with ESMTP id q2CEgNJg026856 for <ftpext@ietf.org>; Mon, 12 Mar 2012 10:42:23 -0400
Received: from [135.91.110.142] (dn135-91-110-142.dhcpn.ugn.att.com[135.91.110.142]) by maillennium.att.com (mailgw1) with ESMTP id <20120312143948gw1004orcne> (Authid: tony); Mon, 12 Mar 2012 14:39:48 +0000
X-Originating-IP: [135.91.110.142]
Message-ID: <4F5E0B4F.2080401@att.com>
Date: Mon, 12 Mar 2012 10:42:23 -0400
From: Tony Hansen <tony@att.com>
User-Agent: Mozilla/5.0 (Windows NT 6.1; rv:10.0.2) Gecko/20120216 Thunderbird/10.0.2
MIME-Version: 1.0
To: ftpext@ietf.org
References: <8CC6BE90-16F4-41DB-835B-B8BC9722156A@frobbit.se>
In-Reply-To: <8CC6BE90-16F4-41DB-835B-B8BC9722156A@frobbit.se>
X-Forwarded-Message-Id: <8CC6BE90-16F4-41DB-835B-B8BC9722156A@frobbit.se>
Content-Type: multipart/alternative; boundary="------------070603070003050805090607"
X-RSA-Inspected: yes
X-RSA-Classifications: public
X-RSA-Action: allow
Subject: [ftpext] Fwd: Re: ftpext2 review of FTP HOST command?
X-BeenThere: ftpext@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: <ftpext.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/ftpext>, <mailto:ftpext-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/ftpext>
List-Post: <mailto:ftpext@ietf.org>
List-Help: <mailto:ftpext-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/ftpext>, <mailto:ftpext-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 12 Mar 2012 14:43:06 -0000

I received the following review this weekend about the HOST command draft.

     Tony

-------- Original Message --------
Subject: 	Re: ftpext2 review of FTP HOST command?
From: 	Patrik Fältström


I have had a look at the draft, and some of the comments are general that I presume you have looked at.

In no specific order:

1. Denial of service attack

What is people try to do a dictionary attack by repeated HOST commands before the authentication?

I think the server should have the right to "just say no" after a number of failed HOST or failed combinations of host/authentication tries.

2. HOST command required

The text says this:

>     A server-PI that receives a USER command to begin the authentication
>     sequence without having received a HOST command SHOULD NOT reject the
>     USER command.

Is SHOULD NOT good enough?

Should there not be a specific error code if the HOST command is required?

Or should there be always failed authentication if a virtual host is not given?

Hmm...I am thinking of what the situation might look like many years from now. I do not think the HTTP/1.1 solution is good enough where there is a default host that normally is either crap, or worse, disclose data that give hints on low security in the host.

So, is it not better to say for example:

A server-PI that receives a USER command to begin the authentication sequence without having received a HOST command must either reject the USER command with error code XXX or treat the authentication as if the user authenticates towards a default host or the union of all virtual hosts.

3. Syntax of hostname

Is this really correct?

domain        = sub-domain *("." sub-domain)

Should it not be

domain        = sub-domain 1*("." sub-domain)

If my memory of abnf does not fail me, i.e. at least two domain name parts?

4. IDN

Suggestion, replace:

Internationalization of domain names is only supported through the
use of Punycode as described in [RFC3492].

With

Internationalization of domain names is only supported through the use of an A-label as defined in [RFCXXXX] as the hostname parameter.

5. HOST command after authentication

The text says this:

>     As discussed in section 3 of this document, if a HOST command is sent
>     after a user has been authenticated, the server MUST treat the
>     situation as an invalid sequence of commands and return a 503 reply.

Is there no command where the user can return to an unauthenticated state, but still be connected to the host? If so, I think it should be possible to give the HOST command there. So the key is that the HOST command is only allowed in a non-authenticated state, right?


Hope this helps...

    Patrik