Reply to Re: Secure auto-login (remember me) - possible?

Your name:

Reply:


Posted by Ric on 01/02/07 13:50

Anze schrieb:
> Hi!
>
> I'm trying to build a "Remember Me" auto-login feature but all solutions I
> have seen on the Internet are done insecurely.
> The way I see it, cookie is always transmitted in cleartext, so anyone could
> steal it and acces the user's account without problems. At least in all
> implementations I have seen.

The cleartext is not the problem, you can store encrypted info in the
cookie by encrypting it on server side before sending the cookie.
But if someone steals the cookie it doesn't matter if it is encrypted or
not, the server needs to know if this cookie really belongs to the user
who authenticated or the one who stole it and that is not really
practical. Evene if you add info like ip browser etc to the cookie and
then compare it next time some user sends it, it is no guarantee that
the bad guy doesn't have the same vals, for example both use the same
browser and proxy.


>
> What is more: I think there is no way to store data on client computer and
> transmit it on challenge / response mechanism.

Exactly

>
> Am I right?
>
>
> I thought I might have a solution to this, but when trying to implement it I
> figured out that JS can't access SSL-only cookies. :(

That would be really bad:-)

> This is the solution I had in mind (it can't be done, but anyway):
> The cookie should be set SSL-only (even though we don't have SSL), but
> readable by JavaScript.
> Once the user comes (again) to the side, it gets a challenge string from
> server. JS checks and notices the SSL-only cookie, makes a hash from the
> SSL-only cookie and the challenge string, then set a normal cookie with it
> and redirects the browser to the same page - which posts the normal cookie
> to the server. Server then checks this normal cookie if it is a hash of
> challenge+SSL-only cookie, and if so, it is OK. If not - login fails.
>
> Unfortunately JS can't read SSL-only cookies and all non-SSL cookies are
> transmitted as cleartext. :(
>
>
> Any thoughts on how to implement secure "remember me" without SSL would be
> appreciated. Even "it can't be done" would be helpful... :)
>

It can't be done in a completely secure way. Dependig on what you want
to do you could make this less secure but comfortable enough,.
For example the cookie with auth data is enough to view certain things,
if one does admin tasks, he needs to authenticate first even if he has
the correct auth data in a cookie. So you would have a two level
security. Or just use the cookie to store the username and always
request the password to auth and then set some authflag in your
phpsession data, this way the user has to input only his pass and not
the username, this is more comfortable then typing both vals but still
secure enough.



> Best,
>
> Anze

[Back to original message]


Удаленная работа для программистов  •  Как заработать на Google AdSense  •  England, UK  •  статьи на английском  •  PHP MySQL CMS Apache Oscommerce  •  Online Business Knowledge Base  •  DVD MP3 AVI MP4 players codecs conversion help
Home  •  Search  •  Site Map  •  Set as Homepage  •  Add to Favourites

Copyright © 2005-2006 Powered by Custom PHP Programming

Сайт изготовлен в Студии Валентина Петручека
изготовление и поддержка веб-сайтов, разработка программного обеспечения, поисковая оптимизация