21

I remember hearing before that it's a sign they are storing your info unencrypted but I never checked.

Is this true? I was logging into a .gov website and noticed it does that.

top 27 comments
sorted by: hot top controversial new old
[-] p_consti@lemmy.world 55 points 1 day ago

The only thing that needs to be encrypted or hashed is the password.

But telling that an email is already in use is leaking information. A bad actor can use this to figure out if you are using a particular service, or alternatively try random email addresses and check if they belong to a real user. This is why it's usually encouraged to just say "invalid combination of username/email and password", instead of specifying which is incorrect.

[-] Saik0Shinigami@lemmy.saik0.com 33 points 1 day ago

This is why it’s usually encouraged to just say “invalid combination of username/email and password”, instead of specifying which is incorrect.

I keep telling my team this all the time... The push back is always from the support side that says "well users complain that they don't know what's incorrect to fix." and my answer is always "they got their own credentials wrong... it's ALL incorrect. Do it over".

But that's "user hostile".

[-] subignition@fedia.io 4 points 1 day ago

That's such brain dead reasoning. Only the password should be hidden - if the user can't tell whether their username is correct they need not to be using a computer...

[-] _core@sh.itjust.works 4 points 16 hours ago

Sometimes the username is not whats expected. Is it the full email or just the first part of the email? Is if something generated by the system? Do you use the system often enough to remember it? Putting a "what's my username link?" Can be helpful

[-] subignition@fedia.io 1 points 10 hours ago

Usernames can be written down or saved in a file for reference if needed. Only passwords really need to be memorized. (Password managers notwithstanding)

[-] Saik0Shinigami@lemmy.saik0.com 6 points 22 hours ago* (last edited 22 hours ago)

... Well... yes... it is brain dead.

I've had people fail the password reset page... Apparently chrome just autofills whatever it wants and doesn't care about websites that say NOT to autofill a field unless you declare it in some magic way that is non-standard. And our users will get a temporary password in email to let them back into the service to do a proper password reset... They'll fail the reset because chrome autofills their old password and they're too dumb to paste in their temp password from the email. Now the message there is a bit more vague... something like "Please check all inputs. No changes have been made." But I've literally watched users on screenshare complain that "No, I put the password there! See the dots are in the box!".... No... your browser put your old password there because that's what it knows. You need to put the temporary one there... See the words to the right of the field that say "TEMPORARY PASSWORD"? That's where you put it.

The infuriating part is sales and support staff that are on the user's side and make requests to devs to change it... There's reasons that we've only ever had one security event in 22 years... 1) we're lucky... 2) these rules matter.

Users are indeed dumb. Especially the 10-20% of them that hog up 80% of your support staff.

Addendum: Oh! Our users (companies) can create sub-users (workers)! So they can invite others to do stuff on their behalf/in their account. We have support staff ask us constantly to reset those sub-user accounts... Big NO. I don't know that user and can't validate that user. I will not be accidentally granting someone sensitive information to another person's information. You can contact the person who gave you the account access and tell them to reset your information.... make sure you enter the temp password and not your old password in the reset form... otherwise I'll be talking to you again in about 15 minutes.

[-] bjoern_tantau@swg-empire.de 2 points 15 hours ago

That's why you use a reset link instead of a temp password.

[-] fibojoly@sh.itjust.works 2 points 19 hours ago

I've had it happen to me a few times on my phone that the stupid auto complete would write my email with a space after, and then the even more stupid form would take the space into account.
Took me a while to realise what was going on!

[-] subignition@fedia.io 2 points 10 hours ago

This has been something frustrating about switching to FUTO keyboard recently. Its auto space insertion isn't clever enough not to activate in username/email fields, compared to Gboard. So because many of my logins contain a period, I have to catch and remove all the extraneous spaces now.

[-] _core@sh.itjust.works 1 points 16 hours ago

Input forms can be designed so that an email input doesn't put a space in it. Notice the .com, .org or whatever doesn't do that, it's just when it's in the username portion. Its just lazy programming to not do it.

[-] fibojoly@sh.itjust.works 1 points 10 hours ago

100% why I wrote "the even more stupid form". Someone isn't sanitizing inputs and it drives me nuts every time.

[-] TachyonTele@piefed.social 7 points 1 day ago

"WIPE IT CLEAN. This fucking lady's getting a new account."

[-] CameronDev@programming.dev 11 points 1 day ago

The only issue with it is that it allows attackers to determine that a given person has an account on a site. Which if the site is pornhub or similar, could be embarrassing (try sign up to pornhub with your local politicians email).

The way around this is to do something like:

"We need to verify your email is correct, by sending you a code"

This doesnt tell the attacker anything, but if there already is an account, the email itself can just say "You already have an account, here are the links to reset and login".

Side note: encryption is reversible, hashing is not. Passwords should be stored hashed, but email only need to be encrypted (or plaintext, but less ideal). And because its reversible, they can get the original value back. They cannot reverse a hash to get the password back, so if a site ever tells you info about your password, that is a sign they might not be hashing it correctly.

[-] hitmyspot@aussie.zone 5 points 23 hours ago

Given many people use the same password.on many sites, it can allow the bad actor to "guess" their password based on data from other leaks.

Then whatever is inside that account may be accessible, such as financial info. Even protected data like cc info might show the last 4 digits, which can be used when talking to an agent to verify identity etc.

[-] IHawkMike@lemmy.world 8 points 1 day ago

I don't think many places encrypt/hash email addresses, but even if they did they could just apply the hash algorithm to what you entered to compare the hashes.

[-] boatswain@infosec.pub 4 points 1 day ago

Anyone dealing with health information should definitely be encrypting email address; it's one of the HIPAA identifiers.

[-] joshcodes@programming.dev 1 points 1 day ago

So ultimately hashing an email address could be a good thing, but its a matter of half measures. Sure, you can perform a basic hash before putting it in the database, but if we assume hashing is performed to prevent it being read by an attacker, why bother unless youre doing it properly?

Passwords, being more sensitive, should only be compared once finished being entered, so you can afford to run all the hashing, salting etc that is a requirement to keep the passwords safe.

If you were going to hash the email to the same standard, it becomes harder to retrieve and display, so when the user wants to look at their profile in the ui, you have to run an intense cryptographic algorithm just to display the email. Or if you want to contact the customer, or any other use for their email. Hence, people dont bother.

[-] CameronDev@programming.dev 6 points 1 day ago

Hashing is completely irreversible. You cannot hash an email address and then unhash it. At most you can brute-force guess the email until the hash matches, but this is basically impossible.

Hashing the email address would break one of the main reasons to use an email address - the ability to send emails to users.

Encrypting email addresses is fine, but you wouldnt compare the encrypted data, you'd just decrypt and compare the original email address.

[-] joshcodes@programming.dev 1 points 20 hours ago

Man, youre totally right and I now feel embarassed i forgot that.

[-] hitmyspot@aussie.zone -2 points 23 hours ago

The email can be stored in 2 parts in the database. One hashed as a login and once as an email address to send to.

Sure, if your database is compromised, it's still public but it still makes the log in process more secure.

[-] p_consti@lemmy.world 1 points 21 hours ago

The only reason we store passwords in hashed form is to prevent damage from leaks. How would storing it twice make login more secure? The client sends both the email and the password in plaintext, everything else is on the server's side. The client does not care or know how the data is stored (or if it is stored at all). So storing it twice does nothing except waste disk space.

[-] hitmyspot@aussie.zone 1 points 21 hours ago

It only helps if log in details are siloed. The storage space taken is negligible.

It's also possible to hash client side, so that the log in process does not access data, like the email but just confirms matching hashes for received data.

[-] p_consti@lemmy.world 1 points 21 hours ago

Why the fuck would the client confirm the hashes? Don't trust the client. The server handles the login; an attacker can just write a lying client "yeah sure I know this guy, it's hitmyspot, now let me in".

[-] hitmyspot@aussie.zone 1 points 20 hours ago

The client doesn't confirm the hash. The client hashes and sends the hashed data. The server confirms.

Omg, how do you know my login? ;)

[-] p_consti@lemmy.world 1 points 20 hours ago

The client doesn't hash. The client needs to send the plain text. Otherwise, that's a security problem; the server needs to confirm the user knows the actual password, so the server needs to compute the hash and compare. If the client sent the hash, then there was no reason to compute hashes in the first place, because the attacker can just send the leaked hash (the reason to hash it is to avoid that the leak can be used to log in directly).

[-] hitmyspot@aussie.zone 1 points 18 hours ago

No client side hashing is possible and secure.

If you look at sending plain text under SSL, it's almost the same thing.

The password hashed under a mutually known algorithm that is not reversible is just as good as the plaintext.

What's particularly interesting right now is manipulation of data that is encrypted to allow the same output (encrypted) as unencrypted data.

The point of sending hashes info from the client is that each site uses a different key, even if publicly available. This means that leaked login data cannot be compared or matched across different leaks.

[-] p_consti@lemmy.world 1 points 17 hours ago* (last edited 17 hours ago)

No, it is not. If the server accepts the hash from an untrusted source (the client), then that's equivalent to not using hashes at all. The reason why we hash is so a database leak does not allow malicious actors to login directly. If the server accepts a hash, that means it only does hash_from_client == hash_from_db, meaning that's the same as doing password_from_client == password_from_db in terms of security. This is because the client can just send the hash from the DB, the user does not actually need to know the password, hence your proposal is equivalent to not using hashes at all in terms of security.

The point of sending hashes info from the client is that each site uses a different key, even if publicly available. This means that leaked login data cannot be compared or matched across different leaks.

That is for keyed hash functions, which is not typically done for passwords (but peppers are sometimes used, which helps similarly). This does not prevent the above scenario, though, because the leaked hash can still be used on that site. Sending hashes is a bad idea, the hash should always be computed in a trusted environment to ensure the user actually knows the password.

this post was submitted on 08 Aug 2025
21 points (88.9% liked)

Cybersecurity

8013 readers
310 users here now

c/cybersecurity is a community centered on the cybersecurity and information security profession. You can come here to discuss news, post something interesting, or just chat with others.

THE RULES

Instance Rules

Community Rules

If you ask someone to hack your "friends" socials you're just going to get banned so don't do that.

Learn about hacking

Hack the Box

Try Hack Me

Pico Capture the flag

Other security-related communities !databreaches@lemmy.zip !netsec@lemmy.world !securitynews@infosec.pub !cybersecurity@infosec.pub !pulse_of_truth@infosec.pub

Notable mention to !cybersecuritymemes@lemmy.world

founded 2 years ago
MODERATORS