Slashdot Mirror


Ask Slashdot: Dealing With Passwords Transmitted As Cleartext?

An anonymous reader writes: My brother recently requested a transcript from his university and was given the option to receive the transcript electronically. When he had problems accessing the document, he called me in to help. What I found was that the transcript company had sent an e-mail with a URL (not a link) to where the document was located. What surprised me was that a second e-mail was also sent containing the password (in cleartext) to access the document.

Not too long ago I had a similar experience when applying for a job online (ironically for an entry-level IT position). I was required to setup an account with a password and an associated e-mail address. While filling out the application, I paused the process to get some information I didn't have on hand and received an e-mail from the company that said I could continue the process by logging on with my account name and password, both shown in cleartext in the message.

In my brother's case, it was an auto-generated password but still problematic. In my case, it showed that the company was storing my account information in cleartext to be able to e-mail it back to me. Needless to say, I e-mailed the head of their IT department explaining why this was unacceptable.

My questions are: How frequently have people run into companies sending sensitive information (like passwords) in cleartext via e-mail? and What would you do if this type of situation happened to you?

39 of 251 comments (clear)

  1. Responses by neminem · · Score: 5, Informative

    "How frequently have people run into companies sending sensitive information (like passwords) in cleartext via e-mail?"

    Not *that* often, but more often than you would think. (See plaintextoffenders.com - they've got hundreds of examples.)

    "What would you do if this type of situation happened to you?"
    What I do when this happens:
    1. Take a screencap of the email, black out the username and password, and send it to plaintextoffenders.com
    2. Contact the site admin, let them know that you just did that, and why it's such a bad idea. Link them to http://plaintextoffenders.com/...
    3. Immediately change your password on the site to something stupid that would definitely not even *remotely* help an attacker guess what sort of passwords you might use on other sites, since if their password security is that awful, chances are their security is awful in other ways too.

    1. Re:Responses by Zontar_Thing_From_Ve · · Score: 4, Interesting

      "How frequently have people run into companies sending sensitive information (like passwords) in cleartext via e-mail?"

      I see this and people sending both public and private PGP keys to outsiders more than I should from other companies. I assume it's because in general American businesses have devalued IT for so long that they're getting exactly what little they pay for now with barely trained and barely competent people who don't know anything about security.

    2. Re:Responses by chihowa · · Score: 3, Insightful

      My site, on account creation, generates a password and sends it to you in email in cleartext before putting it in the DB. In that email is a link to reset the password; you can't log into the rest of the site until you've done so. The updated password (and the original) are stored encrypted in the DB.

      If anyone has a better suggestion, I'm all ears.

      Seriously? Let the user enter their own password at account creation and send them an email with a link (containing a random hash that's indexed to that user in the DB) to verify the email address (if that's even a necessary step... it isn't always).

      Why would you need to generate a password for them, especially if you're going to email it plaintext and make them change it anyway? What possible benefit does that serve?

      --
      If you want a vision of the future, imagine a youtube comments section scrolling - forever.
    3. Re:Responses by rainmaestro · · Score: 2

      Not all accounts are created directly by the user. Half the systems I work with on a daily basis have no signup feature. Accounts are created by site admins. The most common way I see this handled is for the site to generate an OTP and send it via email to the user.

    4. Re:Responses by sexconker · · Score: 5, Informative

      My site, on account creation, generates a password and sends it to you in email in cleartext before putting it in the DB. In that email is a link to reset the password; you can't log into the rest of the site until you've done so. The updated password (and the original) are stored encrypted in the DB.

      If anyone has a better suggestion, I'm all ears.

      Don't send the fucking password in plaintext.
      Don't store the fucking password. If your database/application can read it, then it's decrypted at some fucking point. Don't fucking do it.

      User creates account.
      User provides password, username, email, etc.
      You generate salt.
      You generate a UUID (emailverificationUUID).
      You create DB entry with username, email, HASH(password + salt), salt, emailverificationUUID, emailverified (0).
      You email the user "Your account has been created, please click this link to verify your email address.".
      Link contains the UUID. When clicked, the site performs normal login processes (prompt login if not logged in already) and then verifies that the UUID matches the UUID stored for the logged-in user, and sets emailverified to 1 for that user if so.

    5. Re:Responses by ArcadeMan · · Score: 2

      What's that got to do with cars?!

    6. Re:Responses by ArcadeMan · · Score: 2

      At my company the security precautions have become a parody. 32 char mixed case, letters numbers, expiring every 4 hours. You have to get a new one every 4 fucking hours.

      What's your estimate on the time lost by all employees for dealing with such precautions? Try to document that, with proof, and get a meeting with your boss(es). After they see the money wasted on being over-precautious, IT will probably calm down a bit. Even a new password every month would annoy the hell out of me.

    7. Re:Responses by omnichad · · Score: 3, Funny

      If you don't salt your hashes, you're less likely to rust the undercarriage.

    8. Re:Responses by RingDev · · Score: 3

      [quote]So how do you encrypt this UUID?[/quote]

      You don't. It's just a GUID or some other low collision rate hash.

      [quote]And what do you send for a password reset?[/quote]

      You send them a new UUID in a link. When the link is hit, the UUID resolves back to their account and they are directed to enter a new password, just like a first time user.

      The combination of time (the UUID can be time boxed), activity (a successful login nullifies the UUID), and possession (control of the account's registered email address), and if you want to get really wild, knowledge of a security question, creates a scenario where there are no good purely technical solutions for the attacker.

      An attacker could, in theory, create a colliding GUID for an account they know the name of (but not password), manually enter the UUID link, and set the new password (assuming there is no security question).

      But if an attacker manages to consistently generate colliding GUIDs*, they have accomplished something so monumental that they should be heralded as the second coming of Steve Jobs or something.

      (*Assuming the coders didn't decide to come up with their own GUID generation algorithm that is easily reverse engineered and seeded)

      -Rick

      --
      "Most people in the U.S. wouldn't know they live in a tyrannical state if it walked up and grabbed their junk." - MyFirs
    9. Re:Responses by alexhs · · Score: 3, Interesting

      Ok, here are some possible benefits over chihowa's proposal, for specific use cases.

      - If the use case implies a system/"real" account rather than a virtual one (which I admit is a bad idea most of the time), the implementation practically comes for free: simply create an initially disabled account with a generated password. Particularly useful if the bunch of account creation doesn't actually use an e-mail account at all (say, university students accounts, with account names and initial passwords printed)

      - You don't have to develop a different UI to differentiate account validation and regular password change.

      - Some (web)mail applications are breaking URLs. Often times systems using generated URLs contain a link, plus a textual representation of the URL in case the link doesn't work (which usually means a text client), and sometimes some kind of pretty printer likes to add spaces after punctuation signs. With a short static URL and a password, you're minimizing copy/paste issues.

      --
      I have discovered a truly marvelous proof of killer sig, which this margin is too narrow to contain.
    10. Re:Responses by RavenLrD20k · · Score: 2

      So how do you encrypt this UUID?

      You don't need to. Paranoid about it? Wipe the UUID field from the database upon successful verification of the email so it can't be queried against in the future. However it would be better to just do a sanity check in the code that if there's a boolean 1 in the "emailConfirmed" field after querying for the UUID, just notify the user that the account has already been confirmed and doesn't need to be again.

      And what do you send for a password reset?

      An email to the address on file that has a link to the password reset possibly pre-filling the userID field, but I tend to make the user type that in themselves. If they don't remember the userID... then they'll need to know other pertinent information that the account was created with, otherwise new account time. After the password is reset, then send a confirmation that only states this fact and not giving any identifying information in it beyond that. The same thing you should be doing for any type of change made at the user's account level. If the user is changing their email address, send a confirmation to both the old and the new address that it has been changed, then also reset emailConfirmed to 0, regen the UUID, and force the user to verify the new address, following the same procedure as if it were the first time.

  2. Simple by juanfgs · · Score: 5, Insightful

    What would you do if this type of situation happened to you?

    I'd continue using different passwords for different accounts and not being a whiny bitch about it.

    1. Re:Simple by Anonymous Coward · · Score: 5, Insightful

      Don't mod down the angry bro just because he uses bad words.

      The only safe assumption is to assume that no one handles passwords correctly. So you use a different password for every service. Use a password manager and let it generate random passwords for you.

      The question one then to answer for themselves is if I assume they are not properly handling passwords, how much personal information is one willing to provide. You're on your own for that as everyone values information differently.

  3. KeyPass (and similar) by da_foz · · Score: 2

    This was one of the reasons I started using a password manager. No need to remember passwords to sites I rarely use and much easier to avoid using the same or similar passwords in general.

  4. Security by corychristison · · Score: 3, Insightful

    Your first example is acceptable in my opinion, as that password was probably random and (essentially) single use. After logging in, you should immediately change the password to something you can remember.

    The second example, however, is a big no-no in my books. I develop web based applications for a living. The only time we send a password over e-mail (or SMS) is when a user has locked themselves out of their account, and are using the account recovery tool to regain access. This is how we handle it:
    1. Click on "Forgot Password"
    2. Enter your e-mail address (and username if different from e-mail address), click "Begin Recovery"
    3. Send an e-mail with a verification URL for them to continue the process, this is to confirm they actually are the owner of the email address, and also to weed out people trying to use the recovery process maliciously.
    4. Upon following the URL you will be prompted to answer two security questions you set up on registration from a set of predefined questions. You must answer both correctly to proceed. Internally, when this URL is hit, the account in question is flagged in the DB that it is now in Recovery Mode.
    5. Upon answering the questions correctly, you will be e-mailed a single-use password you can log in with.
    6. Upon logging in, you are required to change your password to something you can remember (or store in a password DB, like you should be doing).

    I know it's long and cumbersome, but it works.

    1. Re:Security by BitZtream · · Score: 2

      You haven't been developing web apps very long, have you?

      Steps 5 and 6 are horrible from a UX perspective and actually lower security a tiny bit.

      By emailing out a single use password you make it possible for someone to eaves drop on the email train and login to your site using the single use password that you sent over email ... in clear text, over a system that may end up easily being stored on disk and snoop-able on many computers.

      There is absolutely no reason to email them the password, you've already verified the email address is viewed by the user, doing it again just exposes that information to other people who may not know the users 2 security questions, but do already have access to the users' email.

      You've effectively made your security questions useless if someone hacks the email account in the first place, which is often the case before using that to spider out and discover other services the user has. (You check the users sent/inbox/archive for emails from certain email addresses that are used by various services and can quickly tell the user does use specific services.)

      Emailing a password is ALWAYS BAD PRACTICE.

      ALWAYS.

      Did you hear me? ALWAYS.

      When you think you've figured out a way to make it 'safe'. Jab an unsharpened pencil in your eye as punishment and remember: ITS ALWAYS A BAD IDEA TO EMAIL PASSWORDS.

      I'll go ahead and not bother pointing out how bad of an idea 'pre-defined' security questions are at this point, seems like you probably need to do some brushing up one security practices from someone who knows a bit about what they are doing. FFS, there are frameworks for every major web dev environment for user auth recovery. You shouldn't even be rolling your own.

      --
      Persistent Volume manager for Kubernetes - https://github.com/dwimsey/openshift-pvmanager
  5. Have to do this all the time. by Lumpy · · Score: 2

    In ham radio command and control over remote digital ground stations all have clear text passwords because it's against the law to encrypt on ham radio bands. So every password is a single use.

    Today, if I connect to the digipeater that is near me I will use the password S4tA12fDg
    and it will work once and only for a certain window for that single login to happen.

    Any company worth anything would do the same. Here is your link, here is your one time use password, you had better get the file in the next 20 minutes or that password will not work.

    Perfectly secure for simple crap that really has zero value like a school transcript.

    --
    Do not look at laser with remaining good eye.
    1. Re:Have to do this all the time. by Anonymous Coward · · Score: 2, Interesting

      I just thought I should clarify this a tad bit for non-hams. (but the rotating password you provide is a good way to go)
      It is not permissible to encrypt the message in a way which obscures the meaning, but can in a non-obscure way to verify the user is authorized. This is still not common, but possible. One such method with digital modes is to have the user use a private key to sign the message, and the control operator maintaining the station can have the corresponding public key. In a fashion similar to Echolink, an Amateur VoIP system, an operator can be verified by the service before being granted access.
      Others have argued that on modes such as HSMM you can use WPA2 encryption as long as you share the key with any licensee who requests it, but this is still dubious, FCC hasn't said much on it, and the point of no encryption is that you can see who is talking with who.

      There is one exception to the encryption rule, and that is for telecommand of Space stations on the Amateur Radio service. However, that space station cannot encrypt data back Down to Earth.

      73!,

      ke5tuz
      (anonymous coward only because I'm on a corporate proxy which, while not prohibitive of slashdot, will log passwords). Normally I'd post under DaJJHman

    2. Re:Have to do this all the time. by Tolkienite · · Score: 2

      ke5tuz (anonymous coward only because I'm on a corporate proxy which, while not prohibitive of slashdot, will log passwords). Normally I'd post under DaJJHman

      Well, you silly rabbit, that's why we use SSL! So corps won't be able to listen to our passwords!
      Of course, this being a geeky site, it fully supports https.. oh wait...

  6. I used to see that all the time by HangingChad · · Score: 5, Interesting

    Before NMCI came along, I was tasked with taking over a mapping application for the Navy and discovered the app was sending admin credentials in clear text in the URL string. Instead being of grateful I found the obvious sloppy coding they accused me of trying to pad my billing with make work and blaming the previous programmer. When I explained their application was crap and a giant security hole they would say, "Well, it works for us."

    So I totally understand how apps like that make it online.

    --
    That's our life, the big wheel of shit. - The Fat Man, Blue Tango Salvage
  7. Concern not warranted by dfetter · · Score: 2

    If you check with black hats, you will noticed that there are two tactics that they use approximately never:

    - network packet sniffing, and
    - break-ins to email

    What they're saying by this is that passwords sent in the clear are not an interesting target.

    Just trying to bring this conversation back down to earth.

    --
    What part of "A well regulated militia" do you not understand?
    1. Re:Concern not warranted by JaredOfEuropa · · Score: 4, Informative

      If passwords are sent in the clear, they are kept in the clear (unless they are one-time randomly generated passwords). And if you check with black hats, you will note that they steal password files all the time. In most cases they'll end up with password hashes, which means they can spend some time and computing power to throw a dictionary at the file and see if any semi-obvious passwords come out. But if passwords are stored in the clear, they end up with everything, no matter how strong your password. And if you use that same password on multiple sites, you'll be in even more trouble.

      --
      If construction was anything like programming, an incorrectly fitted lock would bring down the entire building...
  8. Re:Ummmm... by corychristison · · Score: 2

    In 2015, passwords should be stored in a one-way hash. Preferably in the PBKDF2 format.

  9. FAO auditors the information + company regulator? by Bruce66423 · · Score: 2

    If the company is in any sort of regulated sector, this should be reported to their regulator

    If the company is big enough to have an auditor - and that's pretty small - they should be informed

    If it's a European company, then the Information commissioner https://en.wikipedia.org/wiki/... or the equivalent should be notified. This is clearly unsatisfactory behaviour

  10. FAO of inspector general - copy to Congress by Bruce66423 · · Score: 5, Interesting

    The inspector general of the navy should be informed, with a copy to the chairman of the armed services committee. Then run away. Fast...

    1. Re:FAO of inspector general - copy to Congress by Moof123 · · Score: 2

      Whistle blowers are prosecuted vigorously and do not get the benefit of the doubt.

      When dealing with a government entity you should probably do nothing, as the risks outweigh the rewards at this time. If you still feel like speaking up, raise the issue with your boss in one email, carefully and politely, and file a hard copy of the email somewhere safe. Do not go up the food chain, do not go to the press. If there is a crap storm the hard copy may save you, but even that is not assured.

      The default position should be to protect yourself and your family, and not stick your neck out. We have too many examples that show that even the best intentions may result in the messenger being vigorously prosecuted.

    2. Re:FAO of inspector general - copy to Congress by xombo · · Score: 4, Informative

      If you point out government waste or find out that the security practices required by the government contract were not met you can actually receive a % payment for the value of the difference won back in court. Try and work that route instead of just whistle-blowing. If you find the government was over-billed for services that weren't rendered (i.e. security) then you have a real case and there are official channels through which you can work.

  11. Passwords by gurps_npc · · Score: 2
    When it comes to passwords, I have found that corporations (and people) do one of two things:

    1) Treat them like worthless things - only having them to satisfy those weirdos that want something called 'privacy', whatever that is. What the hell, use the same default 123 for all passwords.

    2) Here is your top secret password. It must be 23 digits long, have symbols, letters, cyrillic characters and at least one unicode symbol whose name you don't know. Nothing can EVER be repeated, and it must change every 60 minutes. Also do NOT write it down - even though these conditions mean you absolutely have to write it down in order to remember it.

    Honestly, you are talking about your transcript for a University. I can not honestly think of a situation where someone that you don't want to see it would care enough to see it - unless you yourself are planning on committing fraud.

    If I was in charge (and I am not), the university should not use a password. They should let ANYONE see your transcript - but also notify you that someone has requested to see it.

    --
    excitingthingstodo.blogspot.com
  12. policy by Orgasmatron · · Score: 3, Interesting

    You don't control the security policy of most things that you need to interact with.

    You should be assuming that every single site that is not under your direct and personal control is doing the same thing. Even if they swear that they are not.

    Every password that you give to a remote system should be a unique random password given only to that system and saved in your personal password safe.

    The one exception is having a common password for things that you don't care about. The trick to taking advantage of the exception is making sure that you really, really don't care about any of the systems in that category, and never will.

    --
    See that "Preview" button?
  13. Hard Problems by Don+Faulkner · · Score: 2

    "Don't you know my name yet? That's the only answer. Tell me, who are you, alone, yourself and nameless?" — Tom Bombadil in Tolkien's Lord of the Rings

    "There are only two hard things in Computer Science: cache invalidation and naming things." — Phil Karlton

    This is one of the true hard problems in modern end-user computing, and it comes up all the time. What do you do when you get a phone call like, "hi, this is Don with $MORTGAGE_COMPANY. For security validation, please tell me your address."

    How do you provide a way for two people (entities) to get introduced to each other in a reliable way, without a trusted third party to make the introduction? And, beyond that, if you have to create an "account" with me to maintain that relationship, how do we make that happen safely (another questions is why those accounts are so uni-directional; why doesn't the bank need to create an account with you as well?)

    Most of the solutions to this problem favor us giving our personal information away for free to big companies, in exchange for some benefit which may never come. There's been talk for ages of having some sort of identity layer for the Internet, but that raises its own privacy and anonymity concerns.

  14. Pearson is guilty of this by bangular · · Score: 4, Informative

    I forgot my password on a Pearson website, so I did the whole "forgot password" thing. Low and behold I receive an email with the original password I chose.

    1. Re:Pearson is guilty of this by TheCarp · · Score: 4, Interesting

      One of the last companies I worked for was undergoing a single signon project. In their presentation they made it quite clear that they were actually encrypting passwords with a two way function. After the main presentation I pulled the presenter aside and asked why when hash functions are the industry standard.

      His response was kind of hillarious (and kind of sad).... too many IT managers were afraid of the repercussions of not being able to actually recover an executives password if he actually lost it and had used it for something important that couldn't just be reset.

      --
      "I opened my eyes, and everything went dark again"
  15. Comment removed by account_deleted · · Score: 2

    Comment removed based on user account deletion

  16. Re:Obfuscation by Social Engineering by neminem · · Score: 2

    The best password: ********

  17. Re:Happened to me once with a magazine subscriptio by i.r.id10t · · Score: 3, Insightful

    They didn't salt and then hash their copy of the passwords - they are still stored plain text. They just stopped including it in your email.

    --
    Don't blame me, I voted for Kodos
  18. Nobody cares about the password your transcript... by toadlife · · Score: 3, Insightful

    ...or your job application.

    Because of the low value of the data that the password grants access to, lax handling of the password is acceptable.

    Now if the password granted you access to everyone's college transcript or job application, then how it was handled would certainly be important.

    Different types of data have differing security requirements.

    --
    I don't always use unix-like operating systems; but when I do, I prefer FreeBSD.
  19. Security theater questions by tepples · · Score: 2

    Send an e-mail with a verification URL

    How do you encrypt this unique verification URL on its way to the subscriber to your service?

    security questions

    I'm sorry; I misread this as "security theater questions". See "The Curse of the Secret Question" by Bruce Schneier and "Wish-It-Was Two Factor" by Alex Papadimoulis.

  20. Re:Obfuscation by Social Engineering by jittles · · Score: 2

    That just shows up as asterisks here...

    Yep. I can type in my password all I want and you can't see anything but asterisks. So I can hunter2 all I hunter2 want and you can't hunter2 it

  21. Re:Don't encrypt! by LDAPMAN · · Score: 2

    There are actually valid reasons for using two-way encryption in some scenarios. It's not ideal but it can be quite secure if managed properly. For example, most privileged user management systems and password escrow systems need to use reversible encryption. There are also reasons to do so in certain credential synchronization/SSO scenarios. Yes, just dumping encrypted passwords in a database is a bad idea. However, done right you can have two-way encryption and maintain security.