Slashdot Mirror


Lexar JumpDrive Password Scheme Cracked

Saint Aardvark writes "Lexar describes the JumpDrive Secure as "loaded with software that lets you password-protect your data. If lost or stolen, you can rest assured that what you've saved there remains there with 256-bit AES encryption." @stake has a different take: The password can be observed in memory or read directly from the device, without evidence of tampering." And best of all, the punch line: "[The password] is stored in an XOR encrypted form and can be read directly from the device without any authentication." That's why I use ROT-13 for my encryption needs."

45 of 565 comments (clear)

  1. Even worse... by Anonymous Coward · · Score: 5, Insightful

    Why go through all the trouble of attaching a debugger to the process when you can bribe the user to tell you the password with a chocolate bar! Best of all, this trick will still work long after Lexar fixes their security issue.

    1. Re:Even worse... by Minwee · · Score: 4, Funny

      And more importantly, do you even know what "redundant" means?

    2. Re:Even worse... by Marxist+Hacker+42 · · Score: 5, Funny

      I like those people. They're so stupid. I can get chocolate out of them simply by saying "I use the 9 billion names of God for my passwords. I'm up to Shiva".

      --
      SJW: a person who perceives an injustice, and while correcting it, commits a greater injustice.
  2. DMCA by Lead+Butthead · · Score: 4, Interesting

    Doesn't that violate DMCA?

    --
    ELOI, ELOI, LAMA SABACHTHANI!?
    1. Re:DMCA by micromoog · · Score: 4, Insightful

      Yep, the new watchword in American 'security': "Who needs respectable technology when you've got the DMCA?"

  3. And it only took the guys at distributed.net by PrimeWaveZ · · Score: 4, Funny

    Three years to get .01% of the way done cracking this before someone realized it was ROT13. ;)

  4. An embarassment of security. by michael+path · · Score: 5, Insightful

    The password is in XOR'd form? Yeah. That's encryption.

    Couldn't the software or driver have stored the password in a MD5 or SHA1 form, and still present a valid authentication mechanism for end users?

    From the article:


    Vendor Response:

    08-05-2004 Vendor contacted via email to support@lexarmedia.com
    No response.
    08-12-2004 Vendor contacted again via email to support, sales
    Public Relations, Investor Relations, and general
    inquiry email addresses.
    08-12-2004 Automated response from support received
    09-13-2004 No further response from vendor, advisory released

    Vendor has not acknowledged issue or produced a fix.


    This is a pretty embarassing non-response.

    The product is only about 5 or 6 months old, and the password was just sitting there. AES is a perfectly fine standard for encryption, but this is an embarassing implementation. Thankfully, I don't know anyone who owns this.

    1. Re:An embarassment of security. by pete-classic · · Score: 5, Funny

      Horseshit. All my data is XORed against itself before it is written to disk. I assure you that you can't crack it.

      -Peter

    2. Re:An embarassment of security. by Alizarin+Erythrosin · · Score: 5, Insightful

      The password is in XOR'd form? Yeah. That's encryption.

      Couldn't the software or driver have stored the password in a MD5 or SHA1 form, and still present a valid authentication mechanism for end users?


      Aside from storing the password in XOR'd form, the software checking the password is flawed. It unencrypts the password first, then compared the password entered. Rather then encrypting the password entered and comparing it to the device?

      There may even be better ways than that. I'm not a cryptography person, but that's the first thing that comes to mind.

      --
      There are only 10 kinds of people in this world... those who understand binary and those who don't
    3. Re:An embarassment of security. by steveha · · Score: 5, Funny
      All my data is XORed against itself before it is written to disk.

      What a waste of valuable CPU cycles! Here's a speedup that does the same thing much faster:
      /* implement "XOR data with itself" security algorithm */
      /* but cleverly don't actually use XOR */
      /* don't forget to null-terminate encrypted data! */

      int
      CopyWithL337XORSecurity(char *in, char *out)
      {
      int length;

      length = strlen(in);

      memset(out, 0, length + 1); /* length + 1 for null termination */

      return length;
      }
      That should run much faster -- standard library functions are always well-optimized.

      Just doing my part for data security.

      steveha
      --
      lf(1): it's like ls(1) but sorts filenames by extension, tersely
    4. Re:An embarassment of security. by Chris+Mattern · · Score: 4, Interesting

      > Thankfully, I don't know anyone who owns this.

      I do, and I keep fairly sensitive information on it (in fact, I bought it in order to keep that information handy but secure). But I don't use Lexar's software--never even occured to me to try to use it, as I want to access it in Solaris and Linux. I use GPG; downloaded a GPG for Windows and put it right on the key so that I can use it in any Windows machine as well.

      Chris Mattern

    5. Re:An embarassment of security. by SamNmaX · · Score: 4, Funny
      Horseshit. All my data is XORed against itself before it is written to disk. I assure you that you can't crack it.

      That joke sure was cryptic.

    6. Re:An embarassment of security. by alienw · · Score: 4, Insightful

      If the device actually encrypts the files, it is not necessary to store the password in any form, hashed or otherwise. You can just decrypt the data with the given password and check if the CRC matches to find out if the password is correct or not.

  5. Dude, by 2names · · Score: 5, Funny

    EVERYTHING violates the DMCA. Everything. Even talking about violating the DMCA violates the DMCA.

    --
    "I'm just here to regulate funkiness."
    1. Re:Dude, by Ignominious+Cow+Herd · · Score: 5, Funny

      So, all we have to do is prove that the DMCA violates the DMCA and it will disappear in a puff of illogic, right?

      --
      Lump lingered last in line for brains, and the ones she got were sorta rotten and insane.
  6. Cue::Cat by althalus · · Score: 4, Funny

    That's what happens when you get your security developers from the Cue::Cat Development team. Wasnt' their 'encryption' just XOR or something similar?

    1. Re:Cue::Cat by AKAImBatman · · Score: 4, Informative

      It was Base64 "encryption" (*snicker*)

    2. Re:Cue::Cat by artemis67 · · Score: 5, Funny

      that, and their password was "PASSWORD"

  7. It's a "feature" by grunt107 · · Score: 5, Funny

    It allows those who forget their passwords to quickly access the 'lostpaswd?' file, saving on support calls.

  8. Not much detail? by Anonymous Coward · · Score: 4, Interesting

    XOR'ed with what? XOR is just a method of encryption, not a cypher or anything... it's the basis for the one-time-pad, the strongest encryption method next to quantum encryption.

  9. The #1 DMCA Rule by Tackhead · · Score: 5, Funny
    > EVERYTHING violates the DMCA. Everything. Even talking about violating the DMCA violates the DMCA.

    The number one rule of talking about the DMCA and archiving the results, encrypted, on a Lexar JumpDrive.

    You do NOT talk about DMCA and archive the results, encrypted, on a Lexar Jumpdrive!

    1. Re:The #1 DMCA Rule by mothz · · Score: 5, Funny
      But if you did talk about the DMCA and encrypt the results, it would require someone else to violate the DMCA to decrypt the results to prove your guilt. Furthermore, it would take someone to even think about violating the DMCA, thereby being in automatic violation of the DMCA, to even suspect that you violated the DMCA.

      Tin-foil hats work, I tell you!

  10. Drive Crypt by xombo · · Score: 5, Informative

    That's why I use DriveCrypt. I got my version years ago and it's pretty antiquated but it supports up to 1024 bit encryption (granted it makes things relatively slow).

  11. Inevitable? by xanthines-R-yummy · · Score: 4, Insightful
    Isn't this in line with the whole "No machine[usually meaning computer, but in this case a jumpdrive] is secure if the physical box is in the hands of the hacker/criminal."

    I mean, if you have the jumprdrive in your possession it's only a matter of time before you find a weakness to exploit, right?

  12. I'm fuzzy on something... by ALecs · · Score: 5, Insightful

    Why does the password need to be 'stored' anyway? Isn't that kinda the point?

    Is this some sort of 'encrypted session key' thing where one long, secure password decrypts another shorted one that's used to do the dirty work? Is it stored for key recovery by tech support droids?

    Why store the password? Is this just the worst implementation in the whole world or am I missing something?

    1. Re:I'm fuzzy on something... by savagedome · · Score: 4, Insightful

      Why does the password need to be 'stored' anyway?

      One word: support.

      Ideally, they should not be storing the password on the disk itself at all for it to be a secure drive. But I've seen a lot of these decisions that seem boneheaded because a *lot* of people will forget their passwords and come back *demanding* that you decrypt their shit. If this is someone that even remotely knows the CEO of the company or somebody higher up and if you try to explain them one-way math functions, you will be getting the pink slip in no time.

      Although what these guys did is unpardonable. I mean XOR? Jeez.

    2. Re:I'm fuzzy on something... by pclminion · · Score: 4, Informative
      Although what these guys did is unpardonable. I mean XOR? Jeez.

      What's wrong with XOR? Example. I've encrypted a short message of ten bytes, by XORing it with a random sequence of ten bytes. Here's the ciphertext:

      26 6B F1 2C 2E 1E 71 12 A9 68

      Since XOR encryption is so weak, this should be no sweat to crack, right?

      Unfortunately, you'll never be able to crack it, because you don't know what the key was. Even if you found a key that would decrypt this sequence to a meaningful series of bytes, you still don't know if that's the correct answer. More than one valid message can fit into 10 bytes, and you have no way of telling which one of those valid messages was the one I intended. It is literally unbreakable. This is called a one-time pad. Now, if I used the same key repeatedly to encrypt lots and lots of data, you could apply statistical techniques to attack it. But the weakness is not inherent in the XOR operation.

      The weakness is in the key security. If you cannot protect the key properly, not even the most complicated cipher in the world can help you.

      XOR is a perfectly legitimate method for combining the key, or key-generated data, with the plaintext.

    3. Re:I'm fuzzy on something... by Lost+Race · · Score: 4, Informative
      There's only one thing you need to make encryption work, and that's the key (or key pair for asymmetric encryption). Where you store the key is the trick. Ideally you want to keep the key separate from the data at all times -- in a separate medium, in the user's brain, whatever. Unfortunately that would mean either carrying around a separate physical key storage device to unlock your storage device (and of course being able to lose them together since you would naturally keep them both on the same keychain) or memorizing a 50-digit number and typing it correctly every time you want to access the device.

      So what we usually do in these situations is store the main key in the device itself, encrypted with a smaller key which can be generated from a user-selected password. Why not just use the password-generated key as your main key? Because easily-remembered passwords don't have enough entropy to generate a key strong enough to protect megabytes of data, but they are good enough to protect something small like an encryption key.

      Usually such schemes fail when the encryption of the main key is too weak for whatever reason, such that the main key can be recovered without knowing the password. It is indeed bizarre that they would store the password itself on the device in any form, though as we all know the world is full of crappy software "designed" by idiots.

  13. I couldn't remember what by 2names · · Score: 5, Funny
    "redundant" meant...until I got the Jerry Jackson memory system.

    I was always forgetting important things, like the meaning of the word "redundant." But thanks to the Joe Johnson memory system, I can now remember things like the meaning of the word "redundant." Thanks, Jack!

    Copyright 2004, Jake Johannson Memory systems.

    --
    "I'm just here to regulate funkiness."
  14. This shows once again... by piquadratCH · · Score: 5, Insightful

    ...that the best encryption algorithm is worth nothing if you fuck up the implementation...

  15. My password is twice as secure as yours!!! by Anonymous Coward · · Score: 5, Funny

    I use ROT-26.

    -

  16. Re:For my encryption needs by Aardpig · · Score: 4, Informative

    I use MD5. Not one collision ever found in the wild.

    On the off chance that this isn't a joke, and you're one of the genii on /. who thinks that MD5 has anything to do with cryptography, let's reiterate:

    MD5 is a hashing algorithm. All hashing algorithms are guaranteed to collide, since hashing is the process of reducing an N-fold dataset to an M-fold one, where M<N.

    Because of this, hashing is irreversable, and therefor only an idiot would use it for encryption. It's proper purpose is for checksuming.

    --
    Tubal-Cain smokes the white owl.
  17. Tried contacting them... by Vexler · · Score: 4, Interesting

    I tried both calling them and trying their live chat feature from their website, but so far no response. The company is in California, and I am calling them about 3:30 PM EDT. So far, no responses from either the phone call (I am still on hold) or the live webchat.

    Sounds awfully like a head-in-the-sand approach to security to me.

  18. Re:Almost... by Anonymous Coward · · Score: 5, Informative

    XOR means "exclusive or". A regular "or": if one of the inputs is 1, return 1. An "exclusive or": if one of the inputs is 1, but not both, return 1.

    OR:
    0101
    0011
    ----
    0111

    XOR:
    0101
    0011
    ----
    0110

    AND:
    0101
    0011
    ----
    0001

  19. Not so fast! by PaulBu · · Score: 5, Informative

    Because of this, hashing is irreversable, and therefor only an idiot would use it for encryption. It's proper purpose is for checksuming.

    MD5 *does* have something to do with cryptography (why else would Schneier devote the whole 14th chapter of Applied Cryptography to "One-way hash functions"), and the reason is simple: it is used to encrypt your *password*, not your data (Lexar was claiming that they use 256-bit AES encryption for the data itself).

    For authentication you do not store the password in plaintext, only its MD5 hash, when user enters the password, MD5 of that is computed and compared to the stored MD5 string, if they match -- your user is authenticated. Of course XOR with a "magic number" could be used for the same purposes, but it would be much weaker. Thus, I think that the GP was not a troll and made a valid point: use MD5 to hash your passwords, and preferrable add some salt value to prevent against dictionary attack.

    The other questiuon is why did Lexar had to store passwords on the drive at all, one does not need to authenticate users in their scenario (the drive itself is not a self-cointained computer to which a user needs to gain access) -- they could've just asked for the password, convert it to the key used in AES algorithm, decode the data and give the result: if password is incorrect, the decoded data is garbage.

    Paul B.

  20. Snuffle by tepples · · Score: 5, Interesting

    Because of this, hashing is irreversable, and therefor only an idiot would use it for encryption. It's proper purpose is for checksuming.

    Try telling that to Daniel Bernstein. His "Snuffle" code converts any hash into a cipher. To put it shorter: sampling the output of a well-designed hashing algorithm after every n bytes produces a suitably random bitstream; XORing that against the message produces a stream cipher.

  21. UPDATE from conversation with Lexar... by Vexler · · Score: 5, Informative

    After being put on hold for over twenty minutes, I finally spoke with a man named Henry who said that he has never heard that JumpDrive had a security problem (even after I confronted him with the advisory from @Stake), and did not know that @Stake was trying to contact them for over a month. He was quite shocked but promised to check out /. and @Stake to verify the claim.

    The ostrich finally wakes up.

  22. A better way to make "secure zones" by g_adams27 · · Score: 4, Informative


    I needed a way to make a "secure zone" similar to what Lexar was advertising - a place where I could drop files and have them automatically protected. After doing a fair amount of research, I decided to use PGPDisk. It allows you to create a PGP-encrypted file on any device (hard drive, CD, USB key, etc) which "expands" into a virtual drive (e.g. "C:\Private\SecretStuff.dsk" becomes a new "Removable drive G:" in Windows once you enter the password). Anything you drop into the virtual drive becomes encrypted. It uses 128-bit symmetric CAST algorithm, which is plenty strong enough for anything I'd need. (I believe the newest versions may also have a Twofish algorithm option). PGPdisk virtual drives can be up to 4Gig on a FAT32 machine, or unlimited size under NTFS.

    You can check out the commercial version at http://www.pgp.com/, but I would also seriously consider PGPckt 6.58, a forked and free version that works just fine under WinXP (and previous versions of Windows). That's the version I've been using.

  23. Grrrr by c++ · · Score: 4, Informative

    This kind of thing just burns me up. Clueless companies hire clueless developers who think they can make software or hardware relatively secure by mearly applying encryption in whatever way they think is convenient. Never mind the plain-text password behind the curtain. Never mind that xor is equivalent to plain text (Lexor). Never mind that supporting multiple decription keys reduces the effective key length (DVD). Never mind that if you somehow store the decryption keys in a way that the software retreive (DVD again) that anyone can extract them. Never mind that storing a strongly-encoded password along with a weakly-encoded one buys you nothing (Microsoft). Never mind that encryption can't prevent copying (DRM). Never mind that this list can go on forever...

    I own a JumpDrive Secure. Don't laugh; I only got it because Wally World didn't have the regular 256MB one. I plugged it in and the first thing it did was install their security software *without asking me*. Yes, Windows XP. Yes, I had turned AutoRun off on my CD. No, I have no idea how to disable AutoRun on a device that has never been plugged in before. Grrrr.

    What did I do? I used Linux to reformat the JumpDrive then uninstalled the software it added without my permission. Now I have a perfectly usable device. (This was 4 months ago)

  24. Re:the punchline by hymie! · · Score: 5, Informative

    Um...

    If A XOR B = C , then A XOR C = B and B XOR C = A.

    So if MYPASSWD XOR SECRET = ENCRYPTEDCODE, and I know both MYPASSWD and ENCRYPTEDCODE, then I can find SECRET.

    I don't know if all of the drives have the same SECRET or not, but, having determined what SECRET is on my drive, I can give the drive to you, or I can try my SECRET on another drive and see if it works.

    --hymie!

  25. This reminds me of an "un-pickable" lock my .... by StressGuy · · Score: 4, Interesting

    dad once bought.

    It had no keyhole, just a bunch of magnectic "reeds" that would line up when a special magnetic key was put along side of it. My dad had just purchased it that day and was explaining to me how it worked. I asked, "couldn't you just shake it until the reeds lined up?". He tosses the lock to me and says, "here...try it then". I shook the lock for a couple of seconds and, sure enough, it popped right open.

    my dad was pretty grumpy for the rest of the day...

    --
    A goal is a dream with a deadline
  26. Re:For my encryption needs by Sheepdot · · Score: 4, Informative

    Oh really?
    ------------------
    #!/usr/bin/perl -w

    use strict;
    use Digest::MD5 qw(md5_hex);

    # Create a stream of bytes from hex.
    my $bytes1 = map {chr(hex($_))} qw(
    d1 31 dd 02 c5 e6 ee c4 69 3d 9a 06 98 af f9 5c
    2f ca b5 87 12 46 7e ab 40 04 58 3e b8 fb 7f 89
    55 ad 34 06 09 f4 b3 02 83 e4 88 83 25 71 41 5a
    08 51 25 e8 f7 cd c9 9f d9 1d bd f2 80 37 3c 5b
    d8 82 3e 31 56 34 8f 5b ae 6d ac d4 36 c9 19 c6
    dd 53 e2 b4 87 da 03 fd 02 39 63 06 d2 48 cd a0
    e9 9f 33 42 0f 57 7e e8 ce 54 b6 70 80 a8 0d 1e
    c6 98 21 bc b6 a8 83 93 96 f9 65 2b 6f f7 2a 70
    );

    # Create a second stream of bytes from hex.
    my $bytes2 = map {chr(hex($_))} qw(
    d1 31 dd 02 c5 e6 ee c4 69 3d 9a 06 98 af f9 5c
    2f ca b5 07 12 46 7e ab 40 04 58 3e b8 fb 7f 89
    55 ad 34 06 09 f4 b3 02 83 e4 88 83 25 f1 41 5a
    08 51 25 e8 f7 cd c9 9f d9 1d bd 72 80 37 3c 5b
    d8 82 3e 31 56 34 8f 5b ae 6d ac d4 36 c9 19 c6
    dd 53 e2 34 87 da 03 fd 02 39 63 06 d2 48 cd a0
    e9 9f 33 42 0f 57 7e e8 ce 54 b6 70 80 28 0d 1e
    c6 98 21 bc b6 a8 83 93 96 f9 65 ab 6f f7 2a 70
    );

    # Print MD5 hashes
    print md5_hex($bytes1), "\n";
    print md5_hex($bytes2), "\n";
    ------------------

    What do I win?

  27. Re:This reminds me of an "un-pickable" lock my ... by bhny · · Score: 4, Informative
  28. FLASH: One Time Pad CRACKED by hugesmile · · Score: 4, Funny
    Somebody told them that a One Time Pad encryption scheme is uncrackable. So they used the pad "11111111111..." and did an XOR.

    Since no one else is stupid enough to use that pad, it's a one time pad.

    Another milestone in encryption technology - One time Pad CRACKED!

    Emergency patch: Now they use the Pad "000000000...."

  29. Somebody call the police by Ayaress · · Score: 4, Funny

    I think you just killed Schrodinger's Cat.