Last week, I tried to register for a service and was really surprised by a password limit of 16 characters. Why on earth yould you impose such strict limits? Never heard of correct horse battery staple?

136 points

This is my biggest pet peeve. Password policies are largely mired in inaccurate conventional wisdom, even though we have good guidance docs from NIST on this.

Frustrating poor policy configs aside, this max length is a huge red flag, basically they are admitting that they store your password in plan text and aren’t hashing like they should be.

If a company tells you your password has a maximum length, they are untrustable with anything important.

permalink
report
reply
85 points

Oh I had the same thought. Whoever limits password length probably has many other shitty security practices.

permalink
report
parent
reply
31 points

If a company tells you your password has a maximum length, they are untrustable with anything important.

Lemmy-UI has a password limit of 60 characters. Does that make it untrustworthy?

permalink
report
parent
reply
55 points

OWASP recommendation is to allow 64 chars at least:

Maximum password length should be at least 64 characters to allow passphrases (NIST SP800-63B). Note that certain implementations of hashing algorithms may cause long password denial of service.

The lemmy-UI limit is reasonably close and as everything is open source, we can verifiy that it does hash the password before storing it in the database.

There is a github issue, too.

permalink
report
parent
reply
14 points

It being open source helps because we can confirm it’s not being mishandled, but it’s generally arbitrary to enforce password max lengths beyond avoiding malicious bandwidth or compute usage in extreme cases.

permalink
report
parent
reply
20 points

If a company tells you your password has a maximumn length, they are untrustable with anything important.

I would add if they require a short “maximum length.” There’s no reason to allow someone to use the entirety of Moby Dick as their password, so a reasonable limit can be set. That’s not 16 characters, but you probably don’t need to accept more than 1024 anyway.

permalink
report
parent
reply
5 points

Why not? You’re hashing it anyways, right?

Right?!

permalink
report
parent
reply
12 points

Sure but if my password is the entire lord of the rings trilogy as a string, hashing that would consume some resources

permalink
report
parent
reply
5 points

Of course, but if you’re paying for network and processing costs you might as well cap it at something secure and reasonable. No sense in leaving that unbounded when there’s no benefit over a lengthy cap and there are potentially drawbacks from someone seeing if they can use the entirety of Wikipedia as their password.

permalink
report
parent
reply
2 points

Bcrypt and scrypt functionally truncate it to 72 chars.

There’s bandwidth and ram reasons to put some kind of upper limit. 1024 is already kinda silly.

permalink
report
parent
reply
1 point

I wonder if a lot of it is someone using their personal experience and saying “just a little bigger ought to cover it”

When I used my own passwords, I rarely used more than 12 characters, so that should be enough

All the password generators I’ve used default to about 24 chars, so 30 ought to be enough for anyone

permalink
report
parent
reply
1 point

you probably don’t need to accept more than 1024 anyway.

OWASP recommends allowing at least 64 characters. That would cover all of my passphrases, including the ones that are entire sentences

permalink
report
parent
reply
14 points

The number of government websites that I’ve encountered with this “limitation.” Even more frustrating when it’s not described upfront in the parameters or just results in an uncaught error that reloads the page with no error message.

permalink
report
parent
reply
2 points
*

Or accepts and silently truncates it 🤬

permalink
report
parent
reply
10 points

bcrypt has a maximum password length of 56 to 72 bytes and while it’s not today’s preferred algo for new stuff, it’s still completely fine and widely used.

permalink
report
parent
reply
2 points

Wait, really? I always thought bcrypt was just a general-purpose hash algorithm, never realized that it had an upper data size limit like that.

permalink
report
parent
reply
2 points

also, if they think a strong password is only about types of characters. a dozen words from as many languages and 5+alphabets is just as good!

its to the point I don’t bother remembering my passwords anymore, because this bullshit makes user-memorable-hard-to-machine-guess passwords impossible.

permalink
report
parent
reply
1 point

I am now very concerned about a certain medical implant device company

permalink
report
parent
reply
0 points

True!

permalink
report
parent
reply
-8 points
*

“If a company tells you your password has a maximum length…”

Uhhh no. Not at all. What so ever. Period. Many have a limit for technical reasons because hashing passwords expands their character count greatly. Many websites store their passwords in specific database columns that themselves have a limit that the hashing algorithm quickly expands passwords out to.

If you plan your DB schema with a column limit in mind for fast processing, some limits produce effectively shorter password limits than you might expect. EVERYONE has column limits at least to prevent attacks via huge passwords, so a limit on a password can be a good sign they’re doing things correctly and aren’t going to be DDOS’d via login calls that can easily crush CPUs of nonspecialized servers.

permalink
report
parent
reply
15 points

It doesn’t matter the input size, it hashes down to the same length. It does increase the CPU time, but not the storage space. If the hashing is done on the client side (pre-transmission), then the server has no extra cost.

For example, the hash of a Linux ISO isn’t 10 pages long. If you SHA-256 something, it always results in 256 bits of output.

On the other hand, base 64-ing something does get longer as the input grows.

permalink
report
parent
reply
3 points

Hashing on the client side is as secure as not hashing at all, an attacker can just send the hashes, since they control the client code.

permalink
report
parent
reply
5 points

Can you not simply have a hashing algorithm that results in a fixed length hash?

permalink
report
parent
reply
7 points

That would be all of them, yes.

permalink
report
parent
reply
4 points

Just in case someone runs across this and doesn’t notice the downvotes, the parent post is full of inaccuracies and bad assumptions. Don’t base anything on it.

permalink
report
parent
reply
-1 points

Why not just store the first X characters of the hashed password?

permalink
report
parent
reply
1 point
*

The hash isn’t at all secure when you do that, but don’t worry too much about it. GP’s thinking about how things work is laughably bad and can’t be buried in enough downvotes.

permalink
report
parent
reply
60 points

I had to make an account the other day with the absolute worst password requirements I’ve ever seen:

permalink
report
reply
37 points

Do you know the password game?

The digits in your password must add up to 25.

permalink
report
parent
reply
9 points

Yeah but the stakes are higher in Jersey you can get fined or even jail for messing up that password.

permalink
report
parent
reply
15 points

When I was working on a password system a few years ago, I found some amazingly bad password requirements. One that stuck with me was it couldn’t contain any two digit years (e.g. 08).

I’ll also leave this here: https://dumbpasswordrules.com/sites-list/

permalink
report
parent
reply
1 point

That sounds like a rule from The Password Game

permalink
report
parent
reply
4 points

Ugh, I’m unfortunately even more bothered by the random extra spaces at the start of the first and last requirements than I am by the security horror.

permalink
report
parent
reply
3 points

I am now even more relieved that the NJ courts have removed me permanently from jury duty, so my chances of interacting with that entire nonsense has gone down. A bit. Just a bit down.

Now I just must try to not be taken to court or take one to court.

This is where hiding inside might help.

permalink
report
parent
reply
55 points
*

The worst is when it either won’t tell you what the character limit is so you have to just keep lowering it and retrying until it finally works, or when the infrastructure for signing up has a different character limit than the infrastructure for logging in, so you can sign up with a long password but can’t actually sign in with it. I once encountered a website that had this issue for both the password AND username so I had to change my password and then contact support to change my username. Absurd.

permalink
report
reply
17 points

I used to manage a system that had a longer character limit on the creation than in the sign in. To fix it, they just let you type in more characters when you signed in but only validated the first 8 anyway. 🤦‍♂️

permalink
report
parent
reply
15 points

Honestly at that point, it’s not worth using the service to me if I have to contact support just to sign in.

permalink
report
parent
reply
5 points

I used a service that had password validation on the “current password” field when you update your password. My password had stopped being valid due to a change in their password policy, but I couldn’t fix it because the “update password” form kept saying my current password was invalid. I know — you told me to change it!!!

permalink
report
parent
reply
3 points

I have had this before, I was so confused for a while.

Made account used my password manager, so I knew the password was correct, went around the loop a few times of “forgot password”; finally shortened form 25 to 16 characters and it just worked.

permalink
report
parent
reply
48 points

I know a bank with a 12 character max, no symbols password restriction.

Ridiculous

permalink
report
reply
28 points

Mine does not allow spaces. They used to use a 4 digit pin as 2FA. Not a new pin you got every time you logged in, the same 4 digit pin.

permalink
report
parent
reply
15 points

A lot of bank computing is a complete clusterf@#k. Getting even basic changes and bug fixes requires it being signed off on by various regulators and committees. Apparently, 18 months for a 1 line change is normal. This has ended up with layers of new work being frankensteined onto older systems. E.g. Internet banking, for a long time, physically printed checks, via an automated machine, posted them, and then had them read in, via an automated machine. Hence why Internet bank transfers took 2-3 days.

I had issues with my banks truncating my password a while back. It only looked at the first 8 characters.

permalink
report
parent
reply
11 points

One of my past banks used to be case-insensitive. They aren’t anymore (as far as I know). Their name starts with Key and ends with Bank.

permalink
report
parent
reply
2 points

My bank got busted a few years ago for cheating customers using their coin-counting machines. Literally nickel-and-dimed their own customers. They removed the machines and just threw loose cloth over the empty spaces - an ongoing testament to their shame, if they could feel shame, which they can’t. Out of sheer laziness I’m still with them.

permalink
report
parent
reply
1 point

Sheesh

permalink
report
parent
reply
0 points

Crazy that there are still banks that use a username and password for login.

permalink
report
parent
reply
2 points

What else should it be, aside from additional 2FA?

permalink
report
parent
reply
2 points
*

In my country all banks just use, instead of a username, the IBAN plus bank card serial number and they give their clients a hardware token that generates one time passwords. The client inserts their bank card into the hardware token then enter their PIN and gets the OTP to login. And when the client wants to make a transfer the bank generates a code that the client has to enter into the hardware token after entering their PIN to generate an OTP which the client uses to confirm the transfer. And if the client has the bank app installed on their phone the bank website generates a QR code which the client can scan with the app and then the client can login with their biometrics. Of course the client has to activate the app with the hardware token first.

This isn’t that much different from a username, password plus 2FA. But this way it takes out the weakness that is the client. This prevents the client from using an easy password or use a username and password that they use everywhere else. Old people don’t write down their password anywhere since there is no password. But they know their PIN by heart since they use it all their life. And it doesn’t rely on apps or SMS for 2FA. So people without a smartphone or even a mobile phone can still use it. Keyloggers are useless since the PIN is entered on the hardware token. Sure a sophisticated con is still possible but thefts like these https://appleinsider.com/articles/23/12/20/how-a-brazen-passcode-thief-used-stolen-iphones-to-rob-2-million where the thieves can drain a bank account if they just steal the phone and phone’s passcode and reset the 2FA are impossible.

The biggest weakness is ofcourse that if someone knows your PIN and obtains your bank card they can enter your bank account online. So the same security measure still applies with this that you should open a savings account at a different bank than your checking account.

permalink
report
parent
reply
38 points

A prominent Australian bank has these requirements:

For Internet Banking, your password must be six to eight characters long.

To improve security, it should:

contain both numbers and letters.
include upper and lower-case letters (your password is case sensitive).

permalink
report
reply
10 points

8 character max means they’re running it on a mainframe I think, though I don’t know enough about mainframes to know if this is a normal level of bad or really bad

permalink
report
parent
reply
7 points

Could be (probably still is) running COBOL. It’s a combination of “if it works and costs money to upgrade, why change” but mostly “if we migrate one thing it will break five other things”.

permalink
report
parent
reply
1 point

Yep, that sounds like old bank tech to me

permalink
report
parent
reply
7 points

8??? For banking? I haven’t used less than like 16 in at least 5, maybe 10 years. Jeez.

permalink
report
parent
reply

Cybersecurity - Memes

!cybersecuritymemes@lemmy.world

Create post

Only the hottest memes in Cybersecurity

Community stats

  • 400

    Monthly active users

  • 79

    Posts

  • 1K

    Comments