Live data from Hacker News

McGill will double your password if you don’t do it first

mcgill.ca

121–130 of 152 posts

Re: McGill will double your password if you don’t do it first

#121
post #60

Earlier quoted context omitted.

I don't think that's necessarily true. Let's say they have all of the passwords stored as bcrypt hashes, and they also know the last time you changed your password. They could just update the application logic to check that your password is of the form if your last change date is before X. Then to check the password, they just take the first half and check that against the hash.

So, in other words, this is an elaborate prank?

It's a moderately aggressive way to get people to change their passwords (more aggressive than an email or prompt, less aggressive than forcing upon login)

Re: McGill will double your password if you don’t do it first

#123
post #94

Earlier quoted context omitted.

This would break passwords like "foofoo", since they'd think it was already doubled, they'd check "foo" against the hash and it would fail. Then again, you can get around that with doubling it again after checking, so I don't know.

Why is this a problem? If your password is "foofoo" and was set after the cutoff, then it won't be halved; if it is "foofoo" and was set before the cutoff, it will be halved, and then not match the password in the database, as intended.

You have to have stored the last password change date, which many systems don't do.

Re: McGill will double your password if you don’t do it first

#124

Earlier quoted context omitted.

You are correct - for UX reasons you don't want to be causing people to change password unnecessarily, so a check at login for length is the obvious way to do it, informing people on an as needed basis that their password is too short. I just don't think they want short passwords on their system any more. Hence there is nothing sinister about what they are doing and how they are storing passwords. The evidence fits t…

But they're not checking length. They apparently did this to all passwords and want all passwords changed because of heartbleed. I can't figure out any way it makes sense unless they are forbidden by policy from forcing password changes.

> But they're not checking length.

Yeah, for that you'd need to know more about the password than we'd like them to know. I imagine they are simply setting the policy to "double" the password if it is older than X days.

Re: McGill will double your password if you don’t do it first

#125
post #47

The McGill Password length has also been increased from exactly eight characters to a variable length of eight to 18 characters. So they're not using bcrypt (usable length 72). Even PBKDF2 would have been acceptable, but my guess is that they were sold a "layer over" on their stack with this. I can already tell this is a hacky patch. Every year, about 1,200 to 1,500 McGill accounts are compromised in one way or anoth…

> So they're not using bcrypt

Bcrypt is not the ONLY secure solution to securely store passwords (contrarily to what everyone is trying to tell you). See Thomas Pornin's answer on SO:

http://stackoverflow.com/questions/2772014/is-sha-1-secure-f...

Re: McGill will double your password if you don’t do it first

#126
post #94

Earlier quoted context omitted.

Why is this a problem? If your password is "foofoo" and was set after the cutoff, then it won't be halved; if it is "foofoo" and was set before the cutoff, it will be halved, and then not match the password in the database, as intended.

You have to have stored the last password change date, which many systems don't do.

If they didn't before, they can start storing it to implement this.

Re: McGill will double your password if you don’t do it first

#127
post #105

Earlier quoted context omitted.

As Dylan stated, an example of a way to do this on login without storing passwords in plaintext: login(): needsPasswordDoubled = [has user changed password since XX date?] username = [username post parameter] password = [password post parameter] if login successful: if needsPasswordDoubled: replace stored password hash with hash(password | password) else: return success return failure Done. That said, the security of…

The security of this is a joke because this isn't a security move. It's not designed to make the users secure after the Heartbleed vulnerability. It's purely designed to make logging in annoying for the users, so they finally change the password they should have changed a while ago. Seems a heck of a lot better than force-expiring passwords like I'd expect any other company to do.

Exactly; I like it, personally.

Blocking login until they've changed their password is too harsh, and it's counter-productive.

A college student who needs to choose a new password now but is under time pressure is definitely not going to take recommended steps like "go install a password manager that'll generate a secure random password for you." They may not even have a piece of paper on hand right now, so they will choose a password that they can remember.

Like -- their previous password, but "2" instead of "1" at the end....

Whereas if you just give them a nudge like this, they will bear the annoyance of typing it twice if they're in a rush, then when time permits they can choose a decent replacement.

Re: McGill will double your password if you don’t do it first

#128

Earlier quoted context omitted.

You are correct - for UX reasons you don't want to be causing people to change password unnecessarily, so a check at login for length is the obvious way to do it, informing people on an as needed basis that their password is too short. I just don't think they want short passwords on their system any more. Hence there is nothing sinister about what they are doing and how they are storing passwords. The evidence fits t…

But they're not checking length. They apparently did this to all passwords and want all passwords changed because of heartbleed. I can't figure out any way it makes sense unless they are forbidden by policy from forcing password changes.

Forcing password changes -- e.g., "you're locked out until you change your password" -- means that the student must select a new password right now, whatever time pressure they're under.

Most people in a rush aren't going to do a good job choosing a secure new password; they aren't going to read McGill's recommendations about password managers or whatever; they're not even going to take 30 seconds to think about how to come up with a reasonably secure but memorable password.

They're just going to use their old password with a "1" on the end.

So -- McGill came up with a way to keep nudging students into updating their passwords, without forcing the specific moment they need to do it.

Re: McGill will double your password if you don’t do it first

#130

Earlier quoted context omitted.

I't because they are still storing passwords in cleartext... If they were hashing passwords (which is the correct way to do it) there would be no limit.

That is simply not true. I used to think the same but real world experience showed me that a lot of websites hash the passwords but they still set a limit to password length. You should read this : https://www.reddit.com/r/gfycat/comments/2m7ddd/how_does_gfy...

makes sense... hopefully this is their reason instead of the former.
Post reply on HN