Live data from Hacker News

Poul-Henning Kamp: LinkedIn Password Leak? Salt Their Hide

queue.acm.org

11–20 of 62 posts

Re: Poul-Henning Kamp: LinkedIn Password Leak? Salt Their Hide

#11
One thing that I always wondered about this approach:

    for (i = 0; i 
Aren't we weakening the hash function? Presumably the hash function is not one-to-one, so if you iterate this for many iterations there is a danger that you could end up with a function that has a much higher probability of collisions?

Re: Poul-Henning Kamp: LinkedIn Password Leak? Salt Their Hide

#12
post #8
post #2

Dear tech journalists, please stop saying stuff like "But we have yet to find out why nobody objected to them protecting 150+ million user passwords with 1970s methods." We do know why people use SHA1(unsalted password), and it's because the dev stack still doesn't support something like SHA-256 or better yet bcrypt/PBKDF2 at all levels. So, right, I was a web developer pushing my PHP-based company to have a more rob…

> So suppose you are developing an agile product, someone loses access to their account and asks for a new password, you type `head -c 9 /dev/urandom | base64`....`UPDATE users` I don't think I ever want to be _that_ agile. My agile projects usually have a set of application functions exposed as scripts immediately. And yes, proper password change is one of them. (besides, how about just using `pwgen 16` and not some…

... and since you are not danish, you don't realize that base64 emits the danish word "badeanstalts" and therefore fall to even the most trivial dictionary attack.

Re: Poul-Henning Kamp: LinkedIn Password Leak? Salt Their Hide

#13
post #2

Dear tech journalists, please stop saying stuff like "But we have yet to find out why nobody objected to them protecting 150+ million user passwords with 1970s methods." We do know why people use SHA1(unsalted password), and it's because the dev stack still doesn't support something like SHA-256 or better yet bcrypt/PBKDF2 at all levels. So, right, I was a web developer pushing my PHP-based company to have a more rob…

I think you're setting the bar too high for tech journalists, lets aim for them knowing the difference between "md5" and "md5crypt" first.

But no, I don't think it is at all obvious why LinkedIn used unsalted SHA1.

LinkedIn went through an IPO, which implies that a number of companies have audited them from head to tail several times along the way.

If the commodity you buy is millions of user accounts, shouldn't you, as investor, at least check that there was a lock on the door to the warehouse ?

Re: Poul-Henning Kamp: LinkedIn Password Leak? Salt Their Hide

#14
post #11

One thing that I always wondered about this approach: for (i = 0; i Aren't we weakening the hash function? Presumably the hash function is not one-to-one, so if you iterate this for many iterations there is a danger that you could end up with a function that has a much higher probability of collisions?

Why would you assume that?

Persumably there should be no real reason why HASH(8_char_password) = 160_bit_hash should be less strong than HASH(160_bit_hash).

Not only that, but most hashing algorithms already do several iterations before returning the hash.

Re: Poul-Henning Kamp: LinkedIn Password Leak? Salt Their Hide

#15
post #10

Would it be possible to come up with a simple little icon that can be put on sign-up pages to indicate that the service is using PBKDF2 or bcrypt of the like? Then, it would need to become popular enough for users to start to recognise it and look out for it when signing up. Even if most users don't have any idea what it's about, plenty of the more technically inclined users would, and they tend to be the early adopt…

This is a bad idea, and here's why: Honestly, I see it as almost self-evident that user would never ever learn this. But more importantly, what would stop anyone from putting up these icons? Who would check that they actually implemented it? Even if that was solved, people would just implement this one thing because it looked good. But there are plenty of other ways to ruin your password security, so you couldn't rea…

Yes, most users wouldn't understand what this is. However, if some did, and they expected it to be there, that might be enough.

You're quite right that there'd be nothing stopping people from using this dishonestly, except their consciences and the fact they may have some explaining to do if a dump of MD5s of their passwords was released. That may or may not be enough.

In any case, I'm sure that this industry can do a bit better than it is at the moment. With big breaches of LinkedIn, Last.fm and eHarmony in the last 48 hours, surely something can be done.

Re: Poul-Henning Kamp: LinkedIn Password Leak? Salt Their Hide

#16
It is all very well suggesting running the hash millions of times but sites with many users might not want such performance hit.

This kind of escalating competition based purely on computing power indicates to me that the very concept of passwords has probably had its day and we should seriously think of better alternatives.

Passwords are no fun to remember and to keep secure for the users either. Anyone with a reasonably active 'online life' suffers from this.

Maybe this is the real reason why Facebook is doing so well? Only one password to remember.

Re: Poul-Henning Kamp: LinkedIn Password Leak? Salt Their Hide

#17
In last.fm's defense, they argued that there were some hardware devices (radios) that had last.fm clients, so they couldn't update their password system.

I have a question though, how would a strong password that takes around 1 second to hash affect the scalability of these systems; would it impact the login times of users a lot? Imagine thousands of people trying to login at once. Might it be the reason linkedin didn't hash and salt properly?

Re: Poul-Henning Kamp: LinkedIn Password Leak? Salt Their Hide

#18
post #10

Earlier quoted context omitted.

This is a bad idea, and here's why: Honestly, I see it as almost self-evident that user would never ever learn this. But more importantly, what would stop anyone from putting up these icons? Who would check that they actually implemented it? Even if that was solved, people would just implement this one thing because it looked good. But there are plenty of other ways to ruin your password security, so you couldn't rea…

Yes, most users wouldn't understand what this is. However, if some did, and they expected it to be there, that might be enough. You're quite right that there'd be nothing stopping people from using this dishonestly, except their consciences and the fact they may have some explaining to do if a dump of MD5s of their passwords was released. That may or may not be enough. In any case, I'm sure that this industry can do…

Like what? The other guy was nice, but badges are flatly stupid. Unless you want to force websites to allow security inspectors, you have to either assume they're doing the right thing or believe them if they tell you "They've got it".

Re: Poul-Henning Kamp: LinkedIn Password Leak? Salt Their Hide

#19
I had a long discussion with a my colleague Commander Adams today about improving password management policies for Krell Power Systems client logins.

This is a change that would have to be added to the current project backlog, specified and designed, developed, and implemented. Selling this means making a compelling case that salting and changing our hashes would actually solve a problem for us and our clients. My sense is that this is the case, but articulating the case in a unassailable way is still something that needs work.

The most compelling case would be for our clients to demand this as part of their security requirements for our systems. This sword cuts two ways, and a number of our existing password policies are clearly based on well-intended but somewhat misguided client-based requirements. The sane thing is to get good requirements.

Absent that, the question becomes: what is the threat, what is the risk model, what is the mitigation, and what benefits does that mitigation buy us and our clients.

The risk as I see it is disclosure of our user authentication hashes (thank Krell we're not storing cleartext passwords ... at least not there).

Leaking unsalted hashes means that both rainbow tables can be applied against the known hashes, and that duplicate hash instances (hence: duplicate passwords) can be determined and targeted for rainbow/brute force attacks.

Leaking non-bcrypt hashes means that brute-forcing is cheap. At some estimates, 3.3 billion keys per second on $1000 of hardware for MD5, roughly half that for SHA1 (http://www.extremetech.com/computing/84314-how-to-secure-you...).

A successful attack would gain user access, and might gain access to user information (of varying but largely low sensitivity) and be able to impersonate the user for communications purposes. Some collections of user data might be valuable for contact/communications/social-engineering purposes.

The biggest risk would be for users sharing keys among several services. As a fair number of our clients are corporate, and it's fairly well known that corporate password policies are often even more grossly weak than individuals', the likelihood of compromised passwords being used to access other user accounts in some instances is fairly high.

The question remains: how large are any of these risks?

What does salting and bcrypting buy in way of protection?

My read is that, on the technical side:

- salting hides common passwords within our userbase, and renders rainbow tables useless. Weak passwords are somewhat better protected.

- bcrypt makes the costs of brute-forcing passwords markedly more expensive. Very, very weak passwords could still be cracked, but we're talking on the order of searching through perhaps a few millions of keys -- 4-character alphanumeric mixed-case passwords would be at risk.

- checking proposed (or entered) passwords against a known set of common passwords -- even just a few tens of thousands of the most common ones -- would further reduce low-hanging fruit. Ideally I'd like to see a publicly available corpus of all known passwords, to be used to exclude duplicates.

But again, the question becomes, what demonstrable benefits does this present to us and our clients? How do I make the case?

Re: Poul-Henning Kamp: LinkedIn Password Leak? Salt Their Hide

#20
post #2

Dear tech journalists, please stop saying stuff like "But we have yet to find out why nobody objected to them protecting 150+ million user passwords with 1970s methods." We do know why people use SHA1(unsalted password), and it's because the dev stack still doesn't support something like SHA-256 or better yet bcrypt/PBKDF2 at all levels. So, right, I was a web developer pushing my PHP-based company to have a more rob…

Poul-Henning Kamp is many things, but journalist? He is allowed to say stuff like "But we have yet to find out why nobody objected to them protecting 150+ million user passwords with 1970s methods." And this is Linkedin. They should know and do better. I actually imagine that their very gifted developers are running around wondering how they themselves didn't audit this.

> I actually imagine that their very gifted developers are running around wondering how they themselves didn't audit this.

or perhaps its that some 3rd party can authenticate users using sha1 passwords i.e. that internally linkedin passwords are scrypted or something, but this dump was from MitM between 3rd party plugin and linkedin?

Post reply on HN