Great Circle Associates Firewalls
(September 1997)
 

Indexed By Date: [Previous] [Next] Indexed By Thread: [Previous] [Next]

Subject: RE: SMTP VRFY (was: Microsoft vs The world)
From: "Webb, Andy" <Andy . Webb @ swinc . com>
Date: Mon, 22 Sep 1997 00:15:17 -0500
To: "'Ned Freed'" <Ned . Freed @ innosoft . com>
Cc: "'firewalls @ GreatCircle . COM'" <firewalls @ GreatCircle . COM>

It would help if you specify the version of Exchange you think is
non-compliant.

With 5.0 and 5.0 SP1, VRFY is by default disabled and returns a 252
Cannot Verify User response.  Sounds like it's correct.  The 5.5 preview
release also behaves this way.  I can't find a 4.0 server to test
against anymore though.

220 grail.austin.swinc.com Microsoft Exchange Internet Mail Service
5.0.1457.7 ready
helo lumberjack
250 OK
help
214-Commands:
214-     HELO     MAIL     RCPT     DATA     RSET
214-     NOOP     QUIT     HELP     VRFY     XAUTH
214-     XEXCH50
214 End of HELP info
vrfy
501 Syntax Error
vrfy awebb @
 swinc .
 com
252 Cannot verify user
=======================================================
Andy Webb              awebb @
 swinc .
 com                 www.swinc.com
Simpler-Webb, Inc.                Austin, TX
512-322-0071
                             "Mauve has more RAM" - Dilbert
=======================================================

> -----Original Message-----
> From:	Ned Freed [SMTP:Ned .
 Freed @
 innosoft .
 com]
> Sent:	Sunday, September 21, 1997 1:39 PM
> To:	firewalls @
 GreatCircle .
 COM
> Cc:	Ned .
 Freed @
 innosoft .
 com
> Subject:	SMTP VRFY (was: Microsoft vs The world)
> 
> > > > 2. exchange does not implement VRFY correctly.  any username at
> any host
> > > >    receives the reply: "OK".  VRFY is not included in the
> minimum
> > > >    implementation, but if included must work according to spec.
> 
> > >	This one happens to be firewall related...
> 
> > > microsoft chose to implement the VRFY command and ignore the spec.
> > > this behavior is not uncommon in microsoft products.
> 
> > > G*D...  I NEVER thought I would EVER defend Microsoft on ANYTHING
> > > but you just can not lay this one at their door.  There are
> several other
> 
> > VRFY is *not* part of the "required minimum".
> > if microsoft or IBM wish to disable it, that's fine.
> > options are optional.
> > but do *not* claim to implement a function that is not implemented.
> 
> Unfortunately almost all of this is wrong insofar as current Internet
> standards
> are concerned.
> 
> First of all, VRFY *is* part of the required minimum command set of
> SMTP. As
> such, any firewall which fails to implement it is incompliant with the
> standards. So the claim that implementation of VRFY is optional is
> incorrect.
> 
> Second, implementations which do not want to support VRFY for security
> reasons
> (whether real or fanciful) are allowed to disable the command.
> 
> Third, not only is it permissible to not check the argument to VRFY to
> see if
> it respresents a valid user, a response code of 252 is specifically
> defined for
> this purpose. So the claim that if VRFY is implemented it has to
> actually check
> its argument is also incorrect.
> 
> In particular, RFC1123 says:
> 
>       5.2.3  VRFY and EXPN Commands: RFC-821 Section 3.3
> 
>          A receiver-SMTP MUST implement VRFY and SHOULD implement EXPN
>          (this requirement overrides RFC-821).  However, there MAY be
>          configuration information to disable VRFY and EXPN in a
>          particular installation; this might even allow EXPN to be
>          disabled for selected lists.
> 
>          A new reply code is defined for the VRFY command:
> 
>               252 Cannot VRFY user (e.g., info is not local), but will
>                   take message for this user and attempt delivery.
> 
> Fourth, the standards require that in the event of a successful
> determination
> of an associated mailbox that the name of that mailbox be returned in
> the
> response. That is, if the argument to VRFY is a valid username with an
> associated mailbox the name of that mailbox has to be returned in the
> response.
> Many implementations are deficient in this regard.
> 
> Fifth, current standards do not specify exactly what response is to be
> returned
> when VRFY is disabled. One can read a strong implication into the
> language that
> is there that 252 should just be returned whenever a syntatically
> valid
> argument is given. However, one could also argue that a "500 command
> disabled"
> response would be acceptable.
> 
> Sixth, this mess is cleaned up the DRUMS update to RFC821/RFC1123. In
> particular, the ambiguity about what a server with VRFY disabled
> should
> do is removed -- it has to return 252.
> 
> So what does all this mean? It means that:
> 
> (1) An implementation that returns a "500 command not recognized" or a
> "502
>     command not implemented" response to VRFY doesn't comply with the
> standards.
>     These responses were legal in RFC821 but were made illegal by
> RFC1123.
>     (Microsoft Exchange falls into this category, BTW.)
> (2) An implementation that returns 252 for all syntactically valid
> arguments
>     without doing any check is acting within both the letter and
> intent of the
>     standards. 
> (3) An implementation that returns a "503 command disabled" error is
> arguably
>     operating within the limits of acceptable behavior now, but will
> not be
>     in the future.
> 
> Now, this may seem like a largely academic issue -- after all, who
> uses VRFY
> anyway? The answer, however, is that there are in fact implementations
> out
> there that use VRFY as a component of their SMTP dialogues. (I think
> such usage
> is dumb, but that doesn't make it go away.) And perhaps more to the
> point,
> broken handling of VRFY all too often equates with broken handling of
> SMTP in
> general. And given how simple even extended SMTP is, this just doesn't
> wash in
> the present-day Internet.
> 
> 
> 				Ned


Follow-Ups:
Indexed By Date Previous: RE: The Different about proxy and firewall..
From: Ryan Russell/SYBASE <Ryan . Russell @ sybase . com>
Next: Re: Solaris v. NT Performance
From: Jyri Kaljundi <jk @ stallion . ee>
Indexed By Thread Previous: SMTP VRFY (was: Microsoft vs The world)
From: Ned Freed <Ned . Freed @ innosoft . com>
Next: SMTP VRFY and EHLO (was: SMTP VRFY) (was: Microsoft vs The world)
From: Ned Freed <Ned . Freed @ innosoft . com>

Google
 
Search Internet Search www.greatcircle.com