8

After reading some research papers about cold boot attack, I got a big shock and start searching for ways to protect against that kind of vulnerability. I got one solution that is using BitLocker pin access to RAM. But I have still a concern.

  1. Windows 10 Latest patch can protect cold boot attack?
  2. DDR3 or DDR4 RAM still have vulnerability?
  3. Is there another way to protect rather than BitLocker pin?
8
  • I don't see how BitLocker, or pin access, has anything to do with cold boot attacks. Can you explain what you mean, by editing your question, please? Mar 4, 2020 at 16:15
  • 2
    Solutions are all going to be hardware based, like putting it in a box to slow down attackers or adding explosives to it to destroy the RAM on chassis intrusion.
    – user
    Mar 4, 2020 at 16:17
  • @user Using explosives is a terrible (and likely highly illegal) idea.
    – forest
    Jan 2, 2021 at 5:09
  • @forest Depending on what secrets you're trying to protect that might still be an acceptable option.
    – user
    Jan 4, 2021 at 13:39
  • 1
    @user10216038 AFAIK, a cold boot attack requires just a bottle of so called “canned air”, not liquid nitrogen. So it's much cheaper than you assume. See, for example, “Cold Boot Attack on DDR2 and DDR3” RAM by Marko Schuba youtube.com/watch?v=ZHq2xG4XJXM .
    – beroal
    Oct 19, 2021 at 3:04

5 Answers 5

5

Windows 10 Latest patch can protect cold boot attack?

No.

DDR3 or DDR4 RAM still have vulnerability?

DDR3 and DDR4 retain memory for a shorter period of time than DDR2, but cold boots are still possible. DDR4 additionally uses memory scrambling (for purposes of electrical reliability), but the scrambling algorithm, which is an LFSR, is not designed for security and can be broken.

Is there another way to protect rather than BitLocker pin?

A BitLocker pin does not protect from cold boot attacks.

Some modern AMD CPUs support full and transparent memory encryption called SME and branded as "Memory Guard". I don't know if you can enable the full memory encryption from Windows. Other than that, all you can really do is use physical security. Use strong encryption, and always turn off your computer before you leave it unattended. As long as you are with your computer for a few seconds after it has powered down, the chances of recovering any memory quickly becomes nil.

2

The idea of a coldboot attack is to freeze the RAM while the operating system is still running (for example whilst you are on lunch break and your box is running but the screenlocker is enabled). This results in the RAM not loosing the data even if it looses power. An attacker can then reboot the device using his own operating system and extract any data from the RAM he desires. Most interesting is usually the cryptographic key used to decrypt the harddrive. This can then be used by the attacker to decrypt your harddrive and access any data he likes.

For a successful attack, the attacker needs all of these to apply:

  1. The data he is after needs to be in your RAM
  2. He needs to be able to freeze your RAM
  3. He needs to be able to boot your computer into specially prepared system OR take out your RAM to access it in another system.

1.) Your operating system cannot access the data stored on your harddrive without the cryptographic key to decrypt it. This key needs to be stored in the RAM, you cannot avoid it. The only way to work around this is to shut down your computer whenever you leave.

2.) You can work around this by applying physical security measures such as tamper switches that wipe your RAM if the case is open. This might help against some attackers but a well prepared attacker that knows about the measures you applied will find a way to circumvent them.

3.) You could use a BIOS /UEFI that wipes your RAM as soon as your computer is turned on. An attacker would need to take out your RAM in order to read it out externally. Maybe you are able to apply physical protection against this, but a well prepared attacker will find a way to circumvent this, too.

In the end I think you should think about your threat model. Which attackers are actually relevant to you and your scenario? Is this actually the easiest way to get access to your data? Also remember the xkcd ;-)

0
0

I believe that implementing something like TRESOR, which involves storing an AES decryption key in CPU registers, would be the only possible way of mitigating a cold boot attack in software, but I'm not sure what the implications (performance or compatibility with existing programs) are for typical Linux systems. In the paper, TRESOR appears to dedicate debug registers to the encryption key, so it's possible that various debugging tools would fail to run correctly.

The original paper notes some potential attack vectors, but most of them are either not "cold boot" attacks or would be significantly harder to execute than a regular cold boot attack on RAM.

For hardware mitigations, because cold boot attacks require reading from the computer memory after a reset or hardware swap, it may be sufficient to implement a RAM-scrub and shutdown on chassis intrusion paired with physical barriers to make it harder to freeze and remove memory. Blocking access to ports to prevent changing the boot device without chassis intrusion would also be a requirement in this case.

1
  • Debugging tools would work fine. TRESOR uses the x86 hardware debugging registers, and modern debugging software uses software, not hardware, breakpoints. As for the performance implications, there really aren't that many if the system supports AES-NI. The only real perf hit is caused by the fact that the key schedule needs to be recomputed on the fly. CPUs with fast implementations of AESKEYGENASSIST show the least performance hit. Also you'd want to patch TRESOR so NMIs and SMIs are disabled, otherwise you may find the keys being pushed to RAM from time to time.
    – forest
    Jan 2, 2021 at 2:53
0

Considering specifically the variant of a cold boot attack where an attacker disconnects memory modules from a victim's computer and connects them to the attacker's computer, one way to protect from this attack is to use memory chips that clear their contents when powered up.

Considering a wider range of attacks when an attacker supplies power to memory modules while transferring them or reads electrical signals from memory module contacts, one way to protect from these attacks is an intrusion detection system which clears memory contents when the case of the computer is opened.

Unfortunately, all these protection methods requires non-standard hardware.

-5

How about TPM + Veracrypt (or any other)? That should do the trick. Rowhammer effect can't be fully mitigated for now.

11
  • 2
    I'm not sure what Rowhammer has to do with a cold boot attack.
    – user
    Mar 4, 2020 at 19:44
  • 1
    But it's a cold boot attack? I'm not sure why software exploits are any concern here. Is the attacker trying to exploit his own system after he restarts the machine and boots it into his own operating system?
    – user
    Mar 4, 2020 at 20:55
  • 2
    @RashadNovruzov that still doesn't have anything to do with cold boot attacks. Mar 7, 2020 at 11:21
  • 1
    @RashadNovruzov Have you bothered to read the article that you linked you may have noticed that they used cold boot attacks to reverse engineer the ECC implementation. There is literally nothing in that article about using rowhammer in conjunction with a cold boot attack to read the memory.
    – user
    Mar 9, 2020 at 12:51
  • 1
    @RashadNovruzov That has nothing to do with a cold boot attack.
    – user
    Mar 9, 2020 at 14:49

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .