Slashdot Mirror


Cold Reboot Attacks on Disk Encryption

jcrouthamel writes "Contrary to popular assumption, DRAMs used in most modern computers retain their contents for seconds to minutes after power is lost, even at operating temperatures and even if removed from a motherboard. Although DRAMs become less reliable when they are not refreshed, they are not immediately erased, and their contents persist sufficiently for malicious (or forensic) acquisition of usable full-system memory images. We show that this phenomenon limits the ability of an operating system to protect cryptographic key material from an attacker with physical access. We use cold reboots to mount attacks on popular disk encryption systems — BitLocker, FileVault, dm-crypt, and TrueCrypt — using no special devices or materials. We experimentally characterize the extent and predictability of memory remanence and report that remanence times can be increased dramatically with simple techniques. We offer new algorithms for finding cryptographic keys in memory images and for correcting errors caused by bit decay. Though we discuss several strategies for partially mitigating these risks, we know of no simple remedy that would eliminate them."

86 of 398 comments (clear)

  1. Clear the DRAM? by the4thdimension · · Score: 5, Interesting

    Could probably implement an algorithm at the operating system level that attempts to clear out DRAM except for what is actually needed for the operating system to power down/boot up. I am not sure of the exact logistics but it seems silly to just power down and leave the DRAM however it was, no matter if its instant cleared or take a few minutes.

    1. Re:Clear the DRAM? by KublaiKhan · · Score: 5, Interesting

      It is possible; I remember reading about a class of programs in the Jargon File that exploited certain machine code instructions to clear out the whole of the machine's memory, including itself.

      Can't remember the name of 'em, though.

      --
      In Xanadu did Kubla Khan
      A stately pleasure dome decree
    2. Re:Clear the DRAM? by spun · · Score: 4, Insightful

      So, that would stop me from physically turning off the computer and popping out the RAM, how exactly? What we need is a battery backed up hardware module that scrambles the RAM when the system loses power.

      --
      - None can love freedom heartily, but good men; the rest love not freedom, but license. -- John Milton
    3. Re:Clear the DRAM? by spun · · Score: 2, Insightful

      I was envisioning a hardware module that detected a power failure and wiped the RAM. The only way around that would be to pop the RAM out of a running system, which might work, or it might fry the RAM. But if the hardware module were incorporated into the DIMM, that would work.

      Really, though, who would this affect? Top secret government stuff. I bet they've just got vials of acid or explosives or something. Tamper with the case and the contents (and maybe you) go bye-bye.

      --
      - None can love freedom heartily, but good men; the rest love not freedom, but license. -- John Milton
    4. Re:Clear the DRAM? by tmalone · · Score: 5, Funny

      Or we could get rid of this easy to work with RAM that computers have now and go back to the olden days when you had to curse and scream and rip your hands to shreds on sharp metal corners to get at the RAM, which, once you got at was a pain in the ass to remove. Ah, the good old days.

    5. Re:Clear the DRAM? by orclevegam · · Score: 5, Insightful

      As the4thdimension already pointed out, it's a common tenant in systems security that anyone with physical access and sufficient time can disable or otherwise bypass any security system. The fact is, if they're in a position to swipe the RAM out of your computer, they can just as easily take the HD to a secure location to try to brute force it, and/or attach some probes to the RAM and just read the bits straight off it, wouldn't even need to power the system down. Hardware security is just that, hardware, so there will never be an adequate software solution to a hardware security problem. Likewise, software security means nothing if the hardware is vulnerable. It's like building a safe with the most complex and impenetrable locking mechanism ever designed, and then using 1/4" aluminum for the body of the safe, sure no one's going to crack the locking mechanism, but all it takes is 5 minutes with a power drill to bypass it.

      That being said, some sort of physical security mechanism probably wouldn't be out of the question for scenarios that actually called for it. For instance, on systems that contain highly sensitive data such as nuclear launch codes or some such, I could envision a tripwire type system on the computer case that detonates shaped charges on the HD and RAM when the case is cracked. This does open up a possible DOS attack vector, but the alternative seems to justify it.

      --
      Curiosity was framed, Ignorance killed the cat.
    6. Re:Clear the DRAM? by compro01 · · Score: 5, Informative
      --
      upon the advice of my lawyer, i have no sig at this time
    7. Re:Clear the DRAM? by fastest+fascist · · Score: 2, Interesting

      Excuse me? If you had access to the system, running and encrypted bits unlocked, why on earth would you turn it off? As I see it, this might be a problem if you get stormed by an adversary and pull the plug in an effort to secure your data.

    8. Re:Clear the DRAM? by sempernoctis · · Score: 3, Interesting

      ATX power supplies are required to provide power for a certain amount of time after it signals the motherboard that it is shutting down. I forget how long that is, but it is probably long enough to wipe a few encryption keys if you know what part of memory to wipe. The attacker would then have to physically separate the power supply form the motherboard or remove the RAM while the system is running. To do that they would have to have the case open, so you could have sensors for tampering with the case that cause all encrypted data to be dismounted.

    9. Re:Clear the DRAM? by Anonymous Coward · · Score: 5, Interesting

      Thermite grenades, actually, taped to the case. Classified computers in sensitive areas get turned into slag if the position is overrun. (From my days working for one of the giant US 'aerospace' companies.)

    10. Re:Clear the DRAM? by sempernoctis · · Score: 3, Informative

      If you had access to the system, running and encrypted bits unlocked, why on earth would you turn it off?
      Because the OS has control of the system at that point. If the terminal is locked, even though the system is on, you won't be able to access anything until you get control of the hardware away from the OS. Also, when you start poking around on a system, you always have the potential of accidentally destroying evidence, and evidence is much weaker in court if there isn't an untampered version of the disk to allow the prosecution's claims to be verified.
    11. Re:Clear the DRAM? by SharpFang · · Score: 2, Informative

      Still, power down without shutdown, then boot up operating system without such feature and you're gone.
      The only way I see it to be sure, DRAM upon losing power uses on-board capacitor to erase its own contents, the feature built into the RAM die. Even BIOS is not sufficient if you just pull the plug and move the RAM to a different PC.

      --
      45 5F E1 04 22 CA 29 C4 93 3F 95 05 2B 79 2A B2
    12. Re:Clear the DRAM? by KublaiKhan · · Score: 2, Interesting

      Yes, that's it. Thanks.

      Kinda funny that that entry says "Death code isn't very useful, but writing it is an interesting hacking challenge on architectures where the instruction set makes it possible"...I guess we have a practical use for it now, huh?

      --
      In Xanadu did Kubla Khan
      A stately pleasure dome decree
    13. Re:Clear the DRAM? by Peter+La+Casse · · Score: 2

      Hardware security is just that, hardware, so there will never be an adequate software solution to a hardware security problem. Likewise, software security means nothing if the hardware is vulnerable.

      I hear things like this a lot, and I disagree. The key words in the quote above are "adequate" and "nothing", which depend on a cost-benefit analysis. Just reducing risk can be more cost-effective than eliminating risk. Encryption is often an adequate software solution to a hardware security problem because most laptop thieves either don't care about the software or aren't equipped to carry out the kind of cold reboot attack described in the article, or because the data isn't important enough to warrant more expensive physical security (such as armed guards).

    14. Re:Clear the DRAM? by CountBrass · · Score: 5, Insightful

      I think you've missed the point. Hard drive encryption *is* supposed to protect against someone having physical access to your machine.

      --
      Bad analogies are like waxing a monkey with a rainbow.
    15. Re:Clear the DRAM? by RAMMS+EIN · · Score: 5, Informative

      Exactly! That is why this news item is actually big news. The idea of encrypting your disk is _exactly_ that someone without the key will not be able to access the data (within a reasonable amount of time - any encryption can be broken), even if they have physical access. And encrypting your disk does indeed prevent someone without the key from reading the data. What TFA tells us is that there is a way to get the key that we may not have considered, and I'm willing to bet many of us indeed hadn't. But now that we know of this attack vector, we can work against it.

      As long as we can keep the key hidden, the encryption will protect our data.

      --
      Please correct me if I got my facts wrong.
    16. Re:Clear the DRAM? by orclevegam · · Score: 5, Interesting

      Yes, but the point is, if the system is powered down when it's stolen, or the hard drive is removed from the system, the full disk encryption will still protect the data. This is only a valid attack vector in the highly unlikely occasion that you have access to the powered on system, and even then it's somewhat dubious as to whether you'll get the data you need off of it. As I said though, this is very interesting from an academic standpoint for the simple fact that it is something that hasn't really been thought of. That being the case though, I can already think of one way to prevent this. Simply store your decryption keys at memory offset 0000:7C00, which will ensure that the BIOS copies the boot loader over your keys the next time the system boots (on x86 systems at any rate).

      --
      Curiosity was framed, Ignorance killed the cat.
    17. Re:Clear the DRAM? by Ollabelle · · Score: 5, Interesting

      Had something similar when I was working for a heavy construction company. Used to take out the old hard drives and take them down to the welding shop. They always enjoyed torching a hole through the spindle and liquefying everything inside the case...

      --
      Ibid.
    18. Re:Clear the DRAM? by HTH+NE1 · · Score: 5, Interesting

      Just put in firmware a key generator and encrypt everything going on the memory bus with a new key on every start-up. Bonus: also remap the memory address space randomly so that instructions and data are not stored sequentially on the same chip. For pipeline filling to work though you'll want it integrated into the CPU.

      --
      Oh, say does that Star-Spangled Banner entwine / The myrtle of Venus with Bacchus's vine?
    19. Re:Clear the DRAM? by Detritus · · Score: 2, Informative

      Some crypto hardware is designed with anti-tamper switches that will erase all keying data if the case is opened. There is often a front-panel switch (zeroize switch) to do the same thing upon operator command.

      --
      Mea navis aericumbens anguillis abundat
    20. Re:Clear the DRAM? by KublaiKhan · · Score: 5, Informative

      -You- may practice proper procedure, but some contractor/low level drone/mindless bureaucrat might leave his system on screensaver (or just lock the console) when turning his back for a moment, which would allow for someone to snatch the laptop and run.

      And while your program may indeed wipe the drive after 10 incorrect guesses, there's one very significant weakness to that proposition: the program must be -running- in order to do so.

      So, in this case, the method of attack would be as follows: find someone with a laptop full of information who has it activated in an accessible location. Grab said laptop and remove it to a location where the RAM can be accessed per this hack. Then, after grabbing the key, remove the hard drive, hook it to a system you have control over, and either use the key to open the drive or, if the key is corrupted or incomplete, use the key as input to crack the drive conventionally--bearing in mind that if it is mounted in such a way that your fancy program does not activate, the program cannot erase the drive.

      --
      In Xanadu did Kubla Khan
      A stately pleasure dome decree
    21. Re:Clear the DRAM? by HTH+NE1 · · Score: 3, Funny

      I say leave lots of decoys around for them to try and guess at. Hiding in plain sight is incredibly effective if done correctly. "Three books? Wait a minute. Hold it. Nobody said anything about three books.... Like-- like what am I supposed to do? Take-take one book, or all books, or... or what?"
      --
      Oh, say does that Star-Spangled Banner entwine / The myrtle of Venus with Bacchus's vine?
    22. Re:Clear the DRAM? by FuzzyDaddy · · Score: 5, Funny
      They always enjoyed torching a hole through the spindle and liquefying everything inside the case..

      Well, who wouldn't?

      --
      It's not wasting time, I'm educating myself.
    23. Re:Clear the DRAM? by SL+Baur · · Score: 3, Insightful

      For this to work, somebody has to be able to steal my laptop You didn't even bother to read the summary, let alone the article. The main point is that nothing is secure with physical access to the machine. That's kind of always been the point. Restated, if an attacker is sufficiently interested in the data on your machine, he will be able to take it from your cold dead hands and get it.

      I feel secure. So no, you shouldn't feel secure if you have important data on that machine.

      BTW, since you claim to be using (presumably US) government security software, you know that disk formatting or dd if=/dev/zero of=/dev/whatever is not sufficient to unclassify a disk that formerly contained classified material.
    24. Re:Clear the DRAM? by ScrewMaster · · Score: 2, Insightful

      So no, you shouldn't feel secure if you have important data on that machine.

      And any way you slice it, feeling secure has little to do with being secure (TSA, are you listening?) although I have noticed that people who feel secure are generally at the most risk. Mainly, I suppose, because they don't have the knowledge to properly assess the risks they are accepting. Because if they did ... they wouldn't feel so secure.

      If you want to be as secure as you possibly can, start with the assumption that you're not.

      --
      The higher the technology, the sharper that two-edged sword.
  2. Physical Access by MosesJones · · Score: 3, Insightful

    So lets thing what physical access means in these cases.

    1) They have your desktop computer
    2) It is on
    3) You've entered your crypto keys

    Is it me or is this just a little tenuous? In a data centre they'd have to drag the thing off the rack and on your personal machine they'd have to physically take it off you, because waiting for you to shutdown and then walk-away would be too long. So the solution is to shutdown the machine and THEN put your coat on and pack your bag.

    I can also get people's Crypto keys by threatening them with a knife or putting a CCTV camera over their workstation. There are "easier" ways to get the keys if you have physical access to the environment that are much simpler and reliable.

    --
    An Eye for an Eye will make the whole world blind - Gandhi
    1. Re:Physical Access by nachoboy · · Score: 4, Informative

      Don't expect to have time to do anything if the feds bust down your door and want your boxes. Plus, now your machine doesn't even have to be turned off for someone to remove it to a forensic lab: introducing HotPlug.

    2. Re:Physical Access by mypalmike · · Score: 4, Insightful

      on your personal machine they'd have to physically take it off you

      Like when your laptop is stolen while it's in sleep mode. This is rather a common situation.

      --
      There are 0x40000000 types of people: those who understand 32-bit IEEE 754 floating point, and those who don't.
    3. Re:Physical Access by Qzukk · · Score: 2, Interesting

      2) It is on
      3) You've entered your crypto keys


      These two are likely true for every kind of whole-drive encryption, unless the encrypted drive is unmounted every time you walk away. As for 1), it's true if you lock the console and walk away from the computer, which quite a lot of people do.

      Best workaround would be for A) operating systems to support fixing keys in a single spot in memory and B) drive encryption systems to automatically unmount and scramble the key (in the same place its always been, rather than wherever the OS felt it should be copied to on write) after X minutes of inactivity (prompting the user for the key again when they want to use it again).

      --
      If I have been able to see further than others, it is because I bought a pair of binoculars.
    4. Re:Physical Access by TheRaven64 · · Score: 5, Informative
      Think laptops. Laptop users with a half-decent OS don't turn their machines off, they just put them to sleep. When you turn the machine on, you enter your passphrase and it mounts the encrypted disk volume. When you close the lid, the OS locks the machine. You can't get in again without entering your pass phrase. If someone steals the machine, they can't log back in without knowing your password. If they shut the machine down and boot from a different disk then they can't access your data because it's encrypted and turning off the machine wiped the decryption key from RAM.

      Except, apparently, it didn't. With the new scenario, the thief takes the cover off the machine and then pulls the battery. They then cool the RAM chips and dump the contents. They can then scan through the dump looking for the decryption key. Once they've found it, they mount the encrypted volume from another OS and get at all of your confidential data.

      --
      I am TheRaven on Soylent News
    5. Re:Physical Access by CastrTroy · · Score: 2, Insightful

      Which is why you should alway unmount your encrypted volumes before you powerdown/hibernate/standby which would ideally clear the contents of memory which contained the key. This would only work in a surprise attack where the user had enough time to poweroff the machine.

      --

      Anthropic principle: We see the universe the way it is because if it were different we would not be here to see it.
    6. Re:Physical Access by fuzznutz · · Score: 2, Interesting

      Don't expect to have time to do anything if the feds bust down your door and want your boxes. Plus, now your machine doesn't even have to be turned off for someone to remove it to a forensic lab: introducing HotPlug.


      How about if I hit the reset button instead of the power button? The POST clears the DRAM during the pre-boot sequence.
  3. Re:only useful if you start off unencrypted by wild_berry · · Score: 2, Interesting

    If you've just turned it off, I can spray your RAM with coolant and have it retain its memory for hours. Then I boot from a USB stick or DVD and use a small program to read the contents of your RAM and harvest your keys.

    The method strikes me as the best way to get past TPM devices, until they include measures to zero all RAM on shutdown.

  4. Re:Fascinating... by planckscale · · Score: 4, Informative
    If you RTFA you would know that the times can be anywhere from seconds to minutes, but that if you rapidly cool them with an inverted air duster, you can keep the info retained in the chips for 10 minutes or so. I you use some liquid nitrogen, even longer. Requires that you "cut" power to the computer. So I guess that means for a laptop, pulling the battery first, then pulling the plug, spraying the chips with liquid cool, then plopping them into another machine and booting to an evil OS that will read the contents of the memory. I wonder if even TrueCrypt's keyfile function is even thwarted. I mean even if they get your encryption passphrase, wouldn't they still need the keyfile to mount the partition? And how would they know the location of a hidden partition? Also, if someone has physical access to the computer, then there is no security. I mean why not just plop in a keylogger, or set up a hidden webcam to shoulder-surf?

    --
    Namaste
  5. Re:only useful if you start off unencrypted by haystor · · Score: 2, Informative

    Stolen laptops would be the chief target I'd imagine. They are easiest to get physical access to and most likely to be considered "secure" through encryption software.

    --
    t
  6. Re:only useful if you start off unencrypted by Hatta · · Score: 2, Insightful

    Right, so if you have a desktop computer that's on all the time and a warrant is issued for that computer, that truecrypt partition you set up for just such an event becomes useless. There's ample reason to worry.

    --
    Give me Classic Slashdot or give me death!
  7. Use capacitors by StCredZero · · Score: 4, Insightful

    You could use a capacitor to power this mechanism instead of a battery. It wouldn't need to last very long -- just long enough to scramble the RAM on power-down. It would be more reliable than a battery.

    1. Re:Use capacitors by AchiIIe · · Score: 3, Informative

      I agree that the capacitor is the way to go. As a reminder, all harddrives are fitted with an emergency capacitor. If the hard drive looses power while the head is traveling there's a risk for a head crash. Thus, once power is lost, the capacitor will fire up the motor for one last push toward the parking space. if you have an external hard drive listen for the click that happens right after you pull the power.

      --
      Nature journal lied in Britannica vs Wikipedia Ask to retrac
    2. Re:Use capacitors by tweak13 · · Score: 3, Informative

      I heard that mechanism in hard drives explained to me as using the spindle motor as a generator to get the heads parked. Makes sense, there's a lot of inertia in the spinning platters that you may as well use.

    3. Re:Use capacitors by Anonymous Coward · · Score: 2, Funny

      OK. I "pulled the power" but all I heard was KKKKKKKKKKKKCCCCCCCC--CLUNK. Powered up the drive and heard Click-Click-Click-Click. Must be a bad capacitor.

      Oh, and I cannot get my data anymore.

    4. Re:Use capacitors by greyhueofdoubt · · Score: 4, Informative

      erm... I have taken many hard drives apart, and I've never seen a cap in them (modern ones, at least) that would have enough power to turn the platters or energize the voice coil of the read head armature. It's been a while since I've seen anything other than surface-mount components.

      Usually what I find is a rare-earth magnet at one end of the voice coil's travel that locks the read heads away from the platter in the absence of voltage in the coil; this is aided as well by the torque exerted on the armature by the trace ribbons that feed voltage to the coil and read heads. Note that this magnet is separate and distinct from the two that control the lateral motion of the read/write armature.

      The 'clink' that you hear is the armature knocking up against the magnet. If you take the cover off, you can recreate the sound yourself, even without power.

      protip: HDD voice coils make great crude galvanometers.

      -b

      --
      No offense, but I've stopped responding to AC's.
  8. from an attacker with physical access by wiredog · · Score: 4, Insightful

    If the attacker has physical access to your system, it's not your system.

  9. Re:only useful if you start off unencrypted by KublaiKhan · · Score: 2, Insightful

    Hrm, especially if they were in hibernate mode to start with....

    --
    In Xanadu did Kubla Khan
    A stately pleasure dome decree
  10. Firewire and USB can access memory by Anonymous Coward · · Score: 5, Interesting

    Heck, with physical access to a running machine, jack into the firewire or USB port and you have clear access to reading and writing all the memory you want.
    I wrote a small paper here http://www.friendsglobal.com/papers/FireWire%20Memory%20Dump%20of%20Windows%20XP.pdf for a forensics class on using firewire to access memory, subverting the operating system.

    All bets are off once physical access is gained. Best bet would be to store the keys, somehow, in the CPU's caches and never let it stay in main memory.

    1. Re:Firewire and USB can access memory by Anonymous Coward · · Score: 2, Interesting
      1. USB doesn't provide a DMA mechanism. This is something only FireWire is capable of (and is part of the reason why FireWire is generally faster than USB in practice.)
      2. This is a well-known design issue with FireWire, and only certain types of controllers are vulnerable.
      Kudos for mentioning another interesting attack vector, but this is hardly an unavoidable one; just secure the FireWire controller, which is done in some designs.

      This "cold RAM" idea is also interesting, though; in theory, you could design a floppy you could insert before cold rebooting that would find encryption keys for you, without even having to disassemble the computer. (I doubt it would work very well in practice, though.)
  11. Very real concern by Deagol · · Score: 5, Interesting
    I run my FreeBSD (7.0RC3) system with some geli-encrypted volumes, and one-time encrypted swap and /tmp. Very little data can leak out to non-encrypted space (yeah, /var/tmp is one).

    However, for grins one day, I decided to run "dd if=/dev/mem bs=1m count=[mem size] | strings | grep [whatever]" and found not only various passwords, but URLs for sites visited *weeks* ago, even after reboots. So, I installed the "secure_delete" port and ran "smem". No luck -- some stuff got wiped, but some remained in memory. So I booted to a memtest86 CD-ROM, and ran the full test (this test does all kinds of writes/reads to memory). Then, I booted *back* to the normal system, and I was *still* able to recover juicy bits from /dev/mem. WTF?

    We need a kernel module for the common OSes that can encrypt virtual pages (is that the right term?) so that whether in core or paged, they won't be vulnerable.

    1. Re:Very real concern by Cruicky · · Score: 5, Informative

      If you are running "dd if=/dev/mem bs=1m count=[mem size] | strings | grep [whatever]" on the machine, your search term will be stored in memory, so you are certain to get a result. You would need to take a memory dump, then run strings on that instead, preferably after it's been transferred to another machine.

    2. Re:Very real concern by Deagol · · Score: 2, Interesting
      Indeed -- however, I am not *that* dense. ;)

      It's pretty easy to tell, though, that if you do my procedure and grep for "example" then see "http://www.example.com" in the result, which hasn't been visited in weeks/days (even after reboots and power-downs), then it's clearly appears to be lingering in RAM.

      Someone mentioned browser cache, but that's set to be cleared each time Firefox is loaded. Perhaps file system slack space is the culprit here.

      Someone else mentioned the VFS cache, which I don't know enough about to comment. Would such meta data be preserved on disk and end up in memory after a restart of the OS? Certainly, I know that without wiping inodes, that file names can persist on disk. For the curious, this can be seen by deleting a uniquely-named file from a directory, then doing a "dd if=[dir] | strings" which shows strings of current and deleted filenames. (Oddly enough, this worked for UFS, but not for my ZFS volume -- must handle things much differently.)

      I do agree that your dump-to-file-then-grep method is much more sane than mine and less prone to false alarms.

      In any case, this is a most interesting topic.

  12. I can't believe this hasn't been mentioned... by gillbates · · Score: 3, Insightful

    we know of no simple remedy that would eliminate them...

    As part of a secure programming course I recently took, we were instructed to overwrite keys with zeros when done using them. It's that simple - you don't leave the key in memory for any longer than you need it.

    When the machine is powered down, your application's exit routine zeros all of the memory, and then free()s it. Nothing that good programming practices can't address.

    Generally speaking, it's the keys on the disk(!) that are the problem. Without two factor authentication, you need merely to scan disk sectors...

    --
    The society for a thought-free internet welcomes you.
    1. Re:I can't believe this hasn't been mentioned... by vux984 · · Score: 3, Insightful

      When the machine is powered down, your application's exit routine zeros all of the memory, and then free()s it. Nothing that good programming practices can't address.

      Unless of course the machine is, you know, simply "powered down".

      Pulling the plug isn't going to let your application do squat.

    2. Re:I can't believe this hasn't been mentioned... by swilver · · Score: 2, Insightful

      There are ways to turn off computers that bypass "Start > Shutdown"

    3. Re:I can't believe this hasn't been mentioned... by yeremein · · Score: 2, Interesting

      For hard disk encryption, you need to keep the key in memory. Can't ask the user for a password every time you read a sector.

  13. Countermeasure here: by jetmarc · · Score: 4, Interesting

    This attack is very powerful.

    It's not possible to "clear the DRAM" (as others have suggested), because the attacker will boot his own CD and not give control to your OS after the reset. Thus you won't be able to clear anything.

    Anything? Not so quick, my dear! For the CD to boot, first there is the BIOS. And BIOS needs memory as well (for the menus, the screen, the ElToro floppy image etc).

    Now the countermeasure is obvious: Keep the sensitive key material in memory areas that is erased during the early boot procedure. Then the attack complexity is raised from "no hardware required" to "specicialists hardware necessary, no guarantees given".

    It might seem difficult to find out which memory is of that category. But it isn't, either! Just prepare two boot CDs. One that fills all memory with a known pattern (eg 0x55). Boot it. Then reset and insert the second CD, which identifies all memory areas that have lost the known pattern. These areas have either suffered DRAM fade, or they have been overwritten during the BIOS boot process. Use heuristics to find out which of the two was the cause. Done!

    As simple as that.

    Regards,
    Marc

  14. Re:Secure DRAM by postbigbang · · Score: 4, Informative

    No, this is the problem; even with a ground, there's a charge held. DRAM isn't a charged-coupled device (CCD), instead, the charge drain doesn't work quickly, allowing DRAM to be read for a short while until things go to zero. The only protection you can give (see other posts) is to forcibly write a charge to all locations, or a sufficient number to scramble the eggs. All DRAM will eventually have cell decay to an unreadable point when the vcc is dropped. Several aforementioned schemes tell how to keep vcc on (capacitors, batteries, who knows-- maybe a DRAM fuel cell-- give your DRAM a drink). SRAM, photo-sensitive RAM, flash, and other ROM-ish RAM devices 'hold' a charge somewhat indefinitely depending on the technology in the device. DRAM eventually loses a detectable charge.

    --
    ---- Teach Peace. It's Cheaper Than War.
  15. Dirty fix by Anonymous Coward · · Score: 2, Insightful

    Solder RAM to board.
    Password the BIOS, boot only from local disk.

  16. Already Screwed by immcintosh · · Score: 3, Interesting

    If somebody has the kind of access to cut power to your system and then immediately reboot with a malicious thumb drive, they probably have enough access to install something like an inconspicuous hardware keylogger, which I would be much MUCH more worried about than this if you're doing something sensitive enough to warrant it.

    And aside from that, couldn't you just encrypt the important parts of your memory and swap as well as your hard drive? Seems like that would defeat this quite handily, and again, if I were doing something so sensitive I'd probably be taking such precautions.

    Honestly though, aside from people doing stuff like maybe international or corporate espionage, I can't imagine where any of this would be a problem.

    1. Re:Already Screwed by LiENUS · · Score: 2, Insightful

      Hmm I'm done working with this sensitive data I think I'll put my laptop into suspend mode and leave this coffee shop to go home. But first let me go order one more for the road... Oh no I'm back with my drink and my laptop's gone. Good thing I encrypted my hard drive, my work will just buy me a new one and since all of the sensitive data was encrypted no problem I'll just pull the latest copy from the server and resume my work, none of the customers need to know that that all 1.5 million social security numbers, birth dates and addresses were stolen because it's impossible to decrypt the data on the drive.

  17. New feature for motherboard venders by seth_hartbecke · · Score: 2, Interesting

    Full memory encryption. Set a chip on the memory buss, it encrypts/decrypts all the data as it passes between the CPU and RAM chips. At first this would be something like old MMUs before they were built into the CPU itself. They sit on the address bus and add/subtract offsets. This would sit on the data bus and do some simple crypto. Put a capacitor right next to it, first time the chip powers up it selects a random key, when the motherboard looses power the capacitor keeps the chip running long enough for it to overwrite the key that it was internally storing.

    Then if they manage to break into your super secure datacenter, wheal in their tank of liquid nitrogen and pump your server full of it just so they can steal your RAM chips...it still doesn't get them anything.

    (If you read the paper, they talk about how if you cool the chips with liquid nitrogen they keep their contents with power off and removed for 'several hours'...they argue that simply modifying the bios to zero at startup isn't sufficient as they may physically *remove* the ram chips before you have a chance to zero them)

    --
    END
  18. Re:Fascinating... by Anonymous Coward · · Score: 5, Informative

    It depends on many factors, including the technology, the density of the part, and the ambient temperature. Years ago I ran some experiments on 128MB SDRAM (not DDR) and found that even at elevated temperatures (60C) the minimum retention time with zero ECC errors (it was ECC memory) was around six seconds.

    I ran those tests because we were using a large chunk of SDRAM (16MB) as a RAM disk to capture log data on an embedded platform. On system failures we had the logs that led to the failure plus a small crash dump to support debugging. The hardware restart cycle was always fast enough to preserve the RAM disk image. I became curious as to how close we were to the edge, so tried a series of experiments, including extracting the blade from the chassis, watching the sweep hand on my watch, and reinserting the blade to let it boot. Even in a temperature chamber (60C is really warm...) the RAM FS was sane after a four second pack pull, allowing about two seconds for the power management to reboot the pack, that gave a six second power off window.

    On reboot, the boot monitor checked the reserved area by clearing the ECC status bits, then reading the entire reserved block, which would trigger ECC counters in the memory controller if there were flipped bits. If there were any (even one) ECC counts, it zeroed the block, triggering the kernel to rebuild an empty file system.

    So there is my experience on DRAM data retention in power off situations. YMMV.

    If someone would like to try this with DDR2 or DDR3 with ECC, it would be interesting to see your results. I have DDR2/ECC blades coming on line now, if I get ahead of my work, I may recreate this test and post back the results. Given my current calendar, it will be a while (months).

    PS: Under normal room temp, ~20C, it was very reliable at 16 seconds, and I saw a couple of tests that passed twenty.

  19. Re:CPU cache? by mzs · · Score: 2, Interesting

    VIA had a while back some registers that you cold tweak to lock L1 cache lines. I don't know if modern VIA chips still have this. In the X86 world I do not know of anything similar from Intel or AMD. You might have better luck using unused registers in the CPU (debugging registers) or external chips (chipset UART regs say) but then you really would not be able to use those anymore, but there may be enough legacy registers around not really used anymore to make it work with the penalty of it being very slow.

  20. Fix: install BIOS with a memory test. by Animats · · Score: 3, Interesting

    Easy fix: install a BIOS/boot ROM with a non-bypassable memory test of all memory. This will clear all memory at power-up before reading the boot device.

  21. Re:Fascinating... by dpilot · · Score: 4, Informative

    At the time I quit working with commodity DRAM, the common spec was for 128mS data retention at 85C. For various reasons, such as guardbanding, we tested well beyond that. I'd seen further data that suggested that most of the data in the DRAM was still good for several seconds, with no refresh. I seem to remember once hearing something to the effect that retention typically increased an order of magnitude for every 10C drop in temperature. So that 128mS @ 85C becomes 1.28S @ 75C, 12.5S @ 65C, etc. Yeah, I guess I can believe the "minutes" figure if you can chill the chips. By the way, that 85C is junction temperature, which is typically 10C-20C above ambient temperature, when running at full tilt. That offset can be even higher depending on airflow, etc. That also means that if the system is quiescent, the DRAM temperature is likely to be well below 85C, with correspondingly greater data retention.

    At any rate, even with low temperatures, with such delays I'd never count on being able to get 100% of the contents successfully.

    --
    The living have better things to do than to continue hating the dead.
  22. Macbook Air... by Wooky_linuxer · · Score: 4, Funny

    has the RAM soldered in the motherboard! I knew Apple was thinking of our security all along!!!

    /*ducks*/

    --
    Where is that guy who'd die defending what I had to say when I need him?
  23. Re:Hardly the problem by orclevegam · · Score: 2, Insightful

    You kind of missed the point. The argument is that even with full disk encryption it's possible to reboot the system to a special OS that reads the encryption keys out of the RAM before it decays allowing the contents of the disk to then be decrypted. Of course, this overlooks the obvious problem that first you need to get your hands on the running system that already has the password entered and the disks decrypted, and then further allows you to reboot it using an alternative boot mechanism. Most often you run whole disk encryption on things like laptops so that in the event it gets stolen the data on it can't be recovered. Lets imagine how you would pull this attack off in this scenario. First, you need to find a laptop thats powered on, and decrypted, so most likely someone is using it. Next, that person needs to somehow leave the laptop sitting someplace (with sensitive information) powered on, and to be gone long enough for you to swipe it. Also, when you do swipe it, you must ensure that it stays powered on until you get it to wherever you have your forensics setup at. Next, you need to have a floppy, cdrom, or USB stick with your specially crafted OS on it and somehow get the system to reboot into that special OS (mind you at this point you probably don't know for sure if the laptop is using full disk encryption, or even what brand). lastly, you have to be lucky enough to get the specific data you want off the memory before it degrades and you lose it forever. Now, is this possible? Yes. Is it likely? Not even in the slightest. This is an interesting academic exorcise, but means exactly jack in real world security.

    --
    Curiosity was framed, Ignorance killed the cat.
  24. Put the key in SRAM. by Skapare · · Score: 2, Interesting

    Put the key in a small piece of SRAM. When it gets used to encrypt something, be sure the place of its usage gets wiped back off real fast to minimize the chance of it being exposed to the cold attack. Split data up with different keys for different data, so if a key is exposed, only a minimal amount of data is lost. Another option is to double or triple encrypt the data being sure never to have more than one key at a time in DRAM.

    So where do we get this SRAM? A CPU register that is not used, and not saved, for any current purpose is one possible place. For a large amount of SRAM, check out your video card buffer.

    --
    now we need to go OSS in diesel cars
  25. Simple fix, no? by rickb928 · · Score: 3, Insightful

    Make the BIOS clear RAM on power-up.

    Wait, doesn't it already?

    Wait, did the researchers bypass BIOS?

    Well, if they did, then adding some crap to DRAM to kill it on power loss is the only way. Probably.

    It was once an axiom of system security, that if you gained physical access, all was lost. This evolved from keyboard and console attacks to floppy- and CD-boot attacks, USB keys, stealing the hard drive, you know the drill.

    Ultimately, if you can cart away pieces of the machine, your last line of defense is gone.

    The only other variable to control is time. Make the DRAM die quicker, or is it time for a 'better' memory technology?

    And this is such great stuff, the TEMPEST guys will now have to re-write their procedures, with both a power-off and wait 30 seconds, and a re-power-on and wait for login prompt, then shutdown again.

    Sometimes I hate h@xrs, and sometimes I realize they do me a service, albeit while they intend to just do me.

    How ironic. My captcha is 'honest'. This cannot be coincidence.

    --
    deleting the extra space after periods so i can stay relevant, yeah.
  26. DRM attack vector by crow · · Score: 5, Insightful

    While an issue for whole-disk encryption, this is also an issue for DRM. Just flick the power while the interesting media is being decrypted, and even if the OS had been protecting the key in some "safe" location, you can now find it. It might be little more tricky, but if you can pull the RAM on a video game console, you can do the same thing.

  27. You can probably read the memory via Cardbus! by tamyrlin · · Score: 2, Interesting
    The problem is much worse on laptops actually. Most laptops have some sort of CardBus slot nowadays. This is basically a PCI interface. The idea is to create a CardBus interface which allows you to dump the physical memory of the laptop using DMA. No need to freeze any memory, just insert your custom made card into the computer and wait for it to copy the memory contents to flash memory or something similar. There are a few question marks here though:
    • Is the Cardbus slot always enabled or must the OS enable it? (If the OS has to enable the cardbus slot you can be safe if the OS doesn't probe the slots when the screen is locked.)
    • If the OS enables the Cardbus slot can it stop the device from doing bus mastering before the device has been identified and a driver has been loaded? (If so you only have to mimic a card which the OS has drivers for to work around it though.)
    Creating a cardbus card isn't exactly rocket science. You could probably do it in a weekend with off the shelf components for less than $200 unles Murphy is feeling creative... :)
    1. Re:You can probably read the memory via Cardbus! by TheRaven64 · · Score: 4, Informative

      True, although it is worth noting that this (and the equivalent FireWire attack) can be mitigated on laptops with newer AMD CPUs (and possibly the latest Intel ones if VT-d is now shipping). Newer AMD chips (or, more specifically, their on-board memory controllers) have a Device Exclusion Vector (DEV) which is a simple bitfield with an entry for each page in physical memory indicating whether a each device is able to DMA to or from that page. A well-behaved OS will set this up so that no device can access any memory unless the driver explicitly permits it. As long as the OS keeps the pages containing encryption keys in the 'never let any device access this' part of memory it will be safe.

      --
      I am TheRaven on Soylent News
  28. This is pretty epic... by ComputerPhreak · · Score: 4, Insightful

    To everyone saying 'if someone has physical access you're hosed anyway'... that simply isn't true. If you have a laptop and encrypt your data correctly, it was thought that it was mathematically infeasible to recover the data if your laptop was stolen. But with this (new?) technique, if it works well enough to be reliable, you could still be fucked even if you took the precaution of encrypting everything.

  29. Another attack loop-AES thought about ! by this+great+guy · · Score: 5, Interesting

    This is yet another attack that the developer of loop-AES thought about while typically every other disk encryption tool out there is vulnerable. Loop-AES is the 3rd most popular disk encryption tool in Linux. See the KEYSCRUB=y option in its README file:

    If you want to enable AES encryption key scrubbing, specify KEYSCRUB=y on make command line. Loop encryption key scrubbing moves and inverts key bits in kernel RAM so that the thin oxide which forms the storage capacitor dielectric of DRAM cells is not permitted to develop detectable property. For more info, see Peter Gutmann's paper.

    I have used loop-AES as a full disk encryption tool on my laptop for 2+ years. I am glad I took the time to carefully research which tool would the most secure before deploying it ! For example even TrueCrypt and dm-crypt are vulnerable to other (arguably minor) security issues that loop-AES is impervious to: http://article.gmane.org/gmane.linux.cryptography/2321

    Surprisingly, the research paper TFA talks about doesn't even directly mention loop-AES (its name only happens to be in the title of a webpage in the reference section describing a safe suspend/resume setup when using disk encryption).

    1. Re:Another attack loop-AES thought about ! by DamnStupidElf · · Score: 2, Informative

      Presumably, moving bits around in memory doesn't help in this case because the exact memory image is retained. Additionally, the code that moves the bits around is also present, making it straightforward to locate the bits and reassemble the key.

    2. Re:Another attack loop-AES thought about ! by Mike1024 · · Score: 2, Informative
      This is yet another attack that the developer of loop-AES thought about while typically every other disk encryption tool out there is vulnerable. [...] "Loop encryption key scrubbing moves and inverts key bits in kernel RAM so that the thin oxide which forms the storage capacitor dielectric of DRAM cells is not permitted to develop detectable property. For more info, see Peter Gutmann's paper."

      I'm afraid it doesn't. Here is the code from Gutmann's paper:

      Flipping:

      while( TRUE )
      {
      acquire keyMutex;
      key ^= 1111...1111;
      keyState ^= 1;
      release keyMutex;

      sleep( 60 );
      }


      Using:

      acquire keyMutex;
      if( keyState == 1 )
      key ^= 1111...1111;
      encrypt/decrypt;
      if( keyState == 1 )
      key ^= 1111...1111;
      release keyMutex;


      The code above protects against detectable 'wear' that occurs if RAM holds the same value for a long time. With inversion, the RAM holds normal and inverted values for equal time, and therefore doesn't wear in one direction or the other.

      The attack described in the article relies on removing the RAM from a targeted machine (or rebooting the target machine) and capturing the contents of RAM before it has a chance to clear (which takes a few minutes, they report). In the example of the code above, they would capture both 'key' and 'keyState' and would therefore know the key, and if the key was inverted or not (of course, even if they did not know whether the key was inverted, it would be trivial to try it both inverted and uninverted).

      I suppose in a system with a write-back cache, it might be possible to keep the key permanently in the CPU's cache, where this attack would be substantially less practical. However, caches are not supposed to be used like that, so it may be difficult to implement.
      --
      "Goodness me, how unlike the FBI to abuse the trust of the American public." -- The Onion
  30. Re:Hardly the problem by russ1337 · · Score: 2, Informative

    Next, you need to have a floppy, cdrom, or USB stick with your specially crafted OS on it and somehow get the system to reboot into that special OS (mind you at this point you probably don't know for sure if the laptop is using full disk encryption, or even what brand)
    So simply setting the hard drive as the only boot device in BIOS, and password protecting BIOS could slow down the attacker enough. (they'd have to disasemble the laptop, reset the bios, reboot).

    As someone pointed out to me a few days ago: Firewire (usually?) has DMA access, so it would be possible to interface the laptop via firewire and do a full memory dump. Then go to work on that to get the key. - requires physical access to the powered laptop of course. Of course, if you have no firewire devices you could have a script do a 'shutdown -H now' on detection of a firewire device.
  31. Re:Hardly the problem by orclevegam · · Score: 2, Interesting

    Hmm... it's kind of assumed that there will at least be a screensaver password enabled that would prevent you from accessing the data directly. On the topic of preventing the new OS from reading the data though, why not store the decryption keys at 0000:7C00. Anyone familiar with how boot loaders work knows that that's the address that the boot loader gets copied into by the BIOS, so if you store your sensitive data there simply booting a new OS would wipe it out.

    --
    Curiosity was framed, Ignorance killed the cat.
  32. Epoxy by Bender0x7D1 · · Score: 2, Insightful

    It seems like the best defense would be applying epoxy to the memory so it couldn't be removed from the slot. If you make sure all the connections are covered as well, they wouldn't be able to place a tap, either. (At least without a lot of time being spent slowly drilling through the epoxy.)

    It would make it impossible to replace your memory, but you could always move the HD to another system. If you care that much, then you should be willing to pay for a new system if someone tries to compromise your data.

    --
    Reading code is like reading the dictionary - you have to read half of it before you can go back and understand it.
  33. Sony IBM Cell by epine · · Score: 5, Interesting

    I'm surprised no one has mentioned the Cell processor yet. I guess everyone hates it.

    The first power word that a toddler learns is "mine!" It's the capstone to a complete working vocabulary: mommy, daddy, more, enough, and mine. My laptop, my hardware, my data, my privacy. The word "mine" has a direct bypass to the neurological circuit "you can't make me", which as adults lingers as a deeply-rooted fascination with rubber-hose cryptography, and bravado propositions such as "if the Feds bust through your windows". Wrong answer.

    Let's look at this from Sony's perspective: my media, my hardware, my design, my copyright, my profits. But guess what? They have a small physical access problem. Millions of zit faced kids with access to liquid nitrogen can get their paws inside the PS3.

    This is why an entire SPU is locked down on the PS3 for security / DRM purposes. The SPU contains 256K of SRAM which is carefully guarded. The instruction set is synchronous and deterministic to guard against timing attacks. They were aware of power attacks as well. These can be partially mitigated in software for critical routines by executing non-conditional instruction sequences and then discarding the portions of the computation you didn't want. By design, the SPU doesn't dance on the power line the way most modern speculative out-of-order processors do to begin with. You can't use latency effects, because the local SRAM has constant access time. You can't use contention effects because there aren't any below the level of DMA bursts, which are controlled by a companion processor within the SPU. Plus I think it is possible to schedule SPU-SPU and SPU-memory DMA transfers deterministically, if you really need to. None of this was accidental.

    The hardest part of the problem is bootstrapping the secure SPU with the security kernel. I've forgotten how they went about it. There must be some kind of decrypt key buried in the Cell hardware which functions during initial code upload during processor initialization.

    In the long run it might be an unwinnable battle, but the PS3 certainly has a far better facility to maintain data security in the complete absence of hardware security than your average PC.

    Why can't the average hacker Harry wants to enjoy the same security as Sony/IBM, why can't you achieve this? You've already got the PS3 in your living room. Impediment: the secure system init decrypt key is probably burned into the silicon. It's probably a one-way key, so even if you crack the key, you won't be able to encrypt a replacement block of your own code that matches the decrypt key. But let's suppose you break that too. Problem: Sony knows the decrypt key for the SPU initialization sequence. Game over.

    Let's suppose you figure out how to physically change the silicon with an initialization decrypt code known only to yourself. Congratulations, you now enjoy the same protection for your secrets that Sony enjoys for "Untraceable". In doing so, you have now upgraded yourself to a sufficiently threatening fish to swim in a tank in Syria, where your nervous system will be similarly reconfigured.

    Ew, I feel like I've just written the script for "Adaptation".

  34. I do not thin' it means what you thin' it means. by The+Monster · · Score: 4, Informative

    it's a common tenant in systems security that anyone with physical access and sufficient time can disable or otherwise bypass any security system.
    Does it pay rent?

    I think the word you're looking for is "tenet".

    --

    [100% ISO 646 Compliant]
    SVM, ERGO MONSTRO.

  35. Memory is reliably addressed; just wipe it. by CarpetShark · · Score: 4, Interesting

    Memory is reliably addressed -- writing to the address you wrote to earlier will change the same physical part of the ram. There are already existing tools that erase passphrases after a certain period without use. All you need to do is make those tools also scrub the addresses used to store it. A simple patch would cover that.

    What's more of a problem is: how to make this timeout+prompt for passphrase thing work with disk-level encyption regardless of whether you're a console or in a GUI, on an otherwise decent OS like unix? I wouldn't trust Windows to implement disk-level encyption safely anyway, so all bets are off there. But unix still has serious issues regarding the simple presentation of a dialog box to the user no matter what part of the system they're looking at, in a reliable and secure way.

  36. this seems must useful as a way to crack DRM by mikeabbott420 · · Score: 2, Insightful

    This seems most useful as a way to help crack DRM and bypassing OS level 'trusted computing' type measures. Since it requires a machine operating with the key active it isn't much use for things like decrypting a stolen laptop.

    --
    This program was made possible by a grant from the Ultra-Humanite, and viewers like you.
  37. It rather depends... by jd · · Score: 2, Interesting
    ...on how you define "absolute". A one-time pad cannot be broken, even if you had a theoretically infinitely fast computer. (It would decrypt to every possible string of the same length with equal probability, with no means of telling which one was the one you wanted.) If you want to add extra security, then introduce a negotiated random offset into the pad and a negotiated random step-size.

    Is that absolute security? Well, an outsider couldn't break the encryption. To do so requires the pad. There are no shortcuts. That's pretty absolute. And even with the pad, you need the offset and stepsize. I've been told of systems where these were mechanically random - the one-time pad tapes synchronized themselves remotely at a speed that was effectively non-deterministic, consuming a non-derministic amount of tape to do so, giving you the random offset and step size.

    Ok, well is that perfect? Since not even the people with the machines could tell you in advance at what speed or at what point the synchronization would lock, that's pretty damn secure and could not possibly be known in advance. Thus, an attacker cannot have prior knowledge of the key being used. Nobody can, even if they have all of the physical components.

    Yes yes yes, it's secure, but is it perfect? It all depends on what you mean by perfect:

    1. It is "perfect" in the specific sense that a total outsider (ie: no prior knowledge) CANNOT decrypt the message, even in infinite time.
    2. It is "perfect" in the specific sense that a third party with the tape but not the synchronization mechanism CANNOT decrypt the message, even in infinite time.

    It is not "perfect" in the general sense, because if person A can decrypt the message with some information in their posession (A'), then person B can also decrypt the message with that same information (A').

    If you have N people in a group, how many of that N must be honest in order to guarantee that information from A to C reaches C even if at least one traitor B exists in that group, where C is not a traitor? The answer is (N/2)+1.

    Now, if (N/2)+1 out of N must be honest, can we improve on our encryption system? In order to get the pad to C, we could make a copy and break it down into random-sized fragments (that may or may not have holes), such that you need (N/2)+1 fragments out of the original N in order to rebuild the tape in the correct sequence. Even if everyone else was a traitor and cooperating with each other, they could not reconstruct the key.

    Now, to prevent said traitors tampering with the key, each fragment needs to be securely digitally signed. This means that A must have a key that everyone else can test against (and therefore decrypt) but nobody else can derive. Both the intended target and all traitors will thus know which fragments are real, but a traitor will not be able to make a fictional fragment look real.

    Is this perfect now? It depends so much on what you mean by perfect. It's now impractical to attack in transit, provided the algorithms themselves do not have weaknesses which push below the assumed security threshold. Provided both source and destination are themselves genuine, AND provided both source and destination have internal compartmentalization such that if/when attacked, the attacker will not be exposed to the encrypted message, the decrypted message or the decryption key, you have an admirable level of security.

    But is it perfect? Define perfect. I would consider any system that is so secure that it would never form a part of the attack vector for the forseeable future to be - in any practical sense - perfect. No matter how much you added to it, it would make no difference to what anyone did or how anyone acted. It's perfect in that attackers would spend their resources attacking anything and everything else. Even if it were "perfect" in some abstract, theoretical sense, it would not add ANY additional security to the system. To me, that is perfect in the meaningful sense.

    --
    It's a small world and it smells funny; I'd buy another if it wasn't for the money; Take back what I paid (SoM)
  38. Re:Not only DRAM but SRAM too by HTH+NE1 · · Score: 2, Interesting

    I used that method to defeat the XOR encryption on an Apple II program. One sample of the decrypted data and the ability to read the encrypted data and it was simple to derive the XOR cypher for decrypting the whole disk without disassembling the code in the patched DOS.

    --
    Oh, say does that Star-Spangled Banner entwine / The myrtle of Venus with Bacchus's vine?
  39. Re:Fascinating... by cryptoguy · · Score: 2, Informative

    > I wonder if even TrueCrypt's keyfile function is even thwarted. I mean even if they get your
    > encryption passphrase, wouldn't they still need the keyfile to mount the partition? And how would
    > they know the location of a hidden partition?

    Truecrypt's keyfile is only a precursor to the actual decryption key. It is not accessed after the drive is mounted. Once the drive is mounted, everything that is needed to read the disk is in memory. (namely, the decryption key).

    So, whatever drive or partition you have mounted (whether hidden or otherwise) is accessible to anyone who can read your computer's memory.

  40. Countermeasure: VIA C3 has built-in SRAM by Adam+J.+Richter · · Score: 4, Interesting

    I believe that the C3 processor made by VIA and probably other processors in that family allow some of the cache to be configured as SRAM and mapped into physical memory. So, you could store the key in SRAM, which I believe really will lose its data upon power loss, although you may also want to take countermeasures such as those used in loop-AES to avoid detection by physical changes to the chip if key is store for a long time in the same place.

    Newever VIA processors also have some hardware AES support available under Linux, which they call "Padlock. So, if they still retain the SRAM feature, then, at that would make a pretty good choice for the little fanless mini-ITX Linux box that receives your email.

  41. That's it I am not using DRAM anymore on my comput by Pepebuho · · Score: 2, Funny

    I 'll compute on my head

  42. Re:Easy proof of concept: Three lines of code by Stanza · · Score: 2, Interesting


    I suspect he is.

    I remember on my Apple II, when you first turned it on, the screen was filled with inverse '@' symbols. Then the screen would quickly blank (or be replaced by spaces) and the startup sequence would go.

    But if it hadn't been off for very long, not all the memory would go to zero (chr$('\0') is the inverse '@'). So, if you turned your computer back on with in a certain time, you could either see the screen it had when it shut off, or more likely, rows of the screen would be inverse '@'s, and rows would be the previous screen. Sometimes with garbage characters interspersed, depending on how long the computer was off.

    I never did investigate how long the non-screen portions of the memory lasted, but the screen-portions (starting at $300, I think) would be gone in ten seconds.