WebApp Sec mailing list archives

Re: Problems with most web app auth schemes


From: Tim <tim-security () sentinelchicken org>
Date: Sun, 27 Jul 2003 18:17:04 -0700


That is true.  *HOWEVER* this misses the point of a PKI, CAs and RAs.  
TRUST!!!!   Exactly what is it in a locally-created, self-signed cert 
that induced me to have any confidence at all in the validity of the 
assertion the cert is making?  This is why PKIs exist.  This is why 
CPSs exist.  This is why CAs and RAs exist.  This is why CRLs exist.  
(Nominally) to provide the recipient of a public key/cert some small 
measure of reason to believe that the holder of the private key that is 
the partner of the public key being presented is who they are 
representing themselves to be.  Given the approach you recommend above, 
I can create a public key with your name in it and become you . . .  
Matter of fact, I've just created "your" public (PGP) key and will 
attach it to this message.  Problem is, *I* have the private key 
associated with it . . .  :->

Of course.  This is obvious.  

The thing is, the vast majority of web applications do no authentication
upon signup.  None at all.  You set up a yahoo account, do they care if
you are really John Q. Doe?  No. But once you do have an account, and
you start *using* that account, and people begin to implicitly think
that the email address you use is actually you, whether you ever state
your name or not.  That is how humans are.  Currently though, systems
are pretty easy to attack even after the account is set up.

So, the point is, you could sign up for a yahoo account with a private
key, associate it with your new yahoo email address, and there we have
it.  A good authentication system based upon the initial signup.  (and
only as good as the initial setup)

You do bring up a good point, that is, another poster in this discussion
stated "Authentication is easy".  This is totally bogus.  The most
difficult part of any of this is identifying who you are talking to upon
first contact.  This is why your CAs will do so much (probably not
enough) checking on your identity when you buy a cert.  So yeah, this is
a really hard problem.

But, this isn't the problem most people want to solve.  And there is no
reason why people shouldn't have the option to use a public key system
for website authentication.  It just makes sense.  That way, the system
will no longer rely on the technical security of your apps, it will
merely rely on the amount of verification the administrators decide to
employ upon sign-up.  They should have the ability to pick a PKI of
their own.  (Should a decent standard for those exist some day. =)

tim


Current thread: