2

I sometimes use a VeraCrypt volume to store personal data (mostly backups from another computer) on a Windows computer I don't own.

But I learned over the years that modern OSes store users' data in a lot of unencrypted locations :

  • image thumbnails are created and stored somewhere in AppData,
  • data that's in the RAM can end up in a swap file on the disk,
  • a lot of softwares save backups of the files they manipulate, often to be able to recover them if a crash occurs.

The only secure setups seem to be : an encrypted external hard drive, which doesn't contain cache folders, or a fully encrypted system, which has become pretty difficult to achieve with UEFI on Windows.

What is the point, then, of softwares like AxCrypt, VeraCrypt or TrueCrypt, which encrypt single files without encrypting the whole system, if the OS leaks enough information to enable anyone to know what's in the encrypted volume ?

closed as unclear what you're asking by Neil Smithline, Stephane, Matthew, Purefan, LvB Jun 6 '16 at 10:59

Please clarify your specific problem or add additional details to highlight exactly what you need. As it's currently written, it’s hard to tell exactly what you're asking. See the How to Ask page for help clarifying this question. If this question can be reworded to fit the rules in the help center, please edit the question.

  • 3
    I don't understand. I had not heard of AxCrypt, but VeraCrypt and TrueCrypt are both full-volume encryption. Normally you encrypt your entire HD so that you must enter a password before booting the computer. Then swap space, temp files, and the like are encrypted along with anything else. For programs that actually do encrypt single files, those often either have (or ARE) viewers that prevent leaks, or they are intended for secure transfer rather than secure storage on the end-point. – Ben Jun 3 '16 at 20:48
  • 3
    VeraCrypt can encrypt a whole system, but it's become impossible with UEFI (which isn't supported yet) and Secure Boot (which prevents it from being supported). I was talking about the other main feature of these programs, which creates a file that can be mounted as an encrypted volume like an external drive, and is often recommended when you only need to protect a handful of files like passwords and banking data. My understanding is that the OS leaks so much when you mount it that they are in fact totally insecure. – Elzo Jun 3 '16 at 21:15
  • 2
    Thanks for clarifying! I didn't realize UEFI messed that up...now I'm curious for the answer, myself. I think dedicated viewers like a password manager or encryption-enabled text editor can still give you benefit, but my gut says you're probably right about mounted volumes in an otherwise unencrypted system. – Ben Jun 3 '16 at 21:19
  • 1
    There are probably hardened Linux distributions or similar setups that allow this sort of thing without leaking data. – Ben Jun 3 '16 at 21:20
  • 1
    @YdobEmos you have no guarantee of confidentiality using a computer owned by someone else. You just don't know what they're potentially doing – Neil Smithline Jun 4 '16 at 3:32
4

When & How to Properly Encrypt

When deciding where and how you want to apply encryption, it is important to consider what sorts of attacks you're actually expecting to prevent and whether or not the data you're encrypting actually needs strong protection in the first place.

This breaks down into three main factors:

  • Sensitivity of the data. A database of all your account passwords, specifics about your financial or medical histories, and pictures of your genitalia are all certainly in need of some amount of protection. That funny cat meme that you're going to post to Twitter, not so much.
  • Likely attack vectors. If you want to use encryption to protect your data, it needs to stay protected no matter where it is. This means keeping it encrypted whether it's on your computer, flying across the Internet, or sitting in some sort of cloud backup. This protects against burglars, state/corporate proxies, and cybercriminals, respectively.
  • Capabilities of likely attackers. Odds are, most of the burglars and cybercriminals who are going to want a look at your data will be opportunists. They won't likely be well-equipped or motivated enough to mess with trying to break or work around at-rest data encryption at all - they'll just move on to the next target. State-level actors or other APTs might not be so stymied, but they may also have other ways to make your life miserable even if they never get your data.

So, take that all together and here's what you do:

All Data At Rest on Your PC & Removable Media Encrypt your entire hard drive(s). Don't leave anything in the clear. This protects the sensitive data in its primary storage location, as well as any local system caches or page files that it might get leaked to. As a side-effect, all non-sensitive data on the same drives is protected as well. (At least, until you send it somewhere else.)

All Non-Sensitive Data Leaving Your Control If you're posting it on a public forum or social media, consider it already compromised and move on. If that thought makes you queasy, don't post it.

Sensitive Data That's Traversing the Internet Make sure proper transport-layer security (not necessarily TLS, but it generally is) is in place to encrypt the connection between your PC and the remote endpoint. Also be sure that you trust the remote endpoint to properly handle and protect whatever data you're sending to it. If you don't, see the next section.

Sensitive Data Going to Someone Else's PC There's a lot of ways that you might want to pass data to someone else's computer directly. It is also important to recognize that e-mail and cloud storage reside on "someone else's computer". If it's sensitive, and it's leaving your control, this is where tools like encrypted containers and files (herein referred to collectively as "file-level encryption") come in.


Why File-Level Encryption is Important

With file-level encryption, it doesn't matter whether the data is passing the network over a cleartext protocol or sitting on a computer that doesn't have whole-disk encryption. Regardless of where it goes, an encrypted file will always have a non-trivial layer of protection around it in its primary storage location.

This is not to say that the file's contents cannot be exposed while they sit in a clear cache, page file, hibernation file, or RAM. However, accessing these storage locations is slightly more difficult than simply reading the file from primary storage. It also requires a certain amount of luck, as any data stored in those areas is transient by nature.

Ultimately, how other people manage the computers that contain the data you send to them is beyond your control. This is why you shouldn't release control of sensitive data to people you don't trust to properly protect it. If you must release your sensitive data though, file-level encryption is about the best you can do to make sure it stays safe. At the very least (since the remote party could ultimately just decrypt the data and leave it in the clear) you'll be able to say you've done as much as you can.


A Note on Encrypting External Drives

Keeping all data on an encrypted external drive does nothing to protect it, that couldn't be equally accomplished by file-level encryption on an internal drive. As soon as you go to read that data, it'll get caught up in the same cleartext-by-default locations (caches, pagefiles, RAM, etc) that it would if it were stored on the internal drive. This is why you should apply whole-disk encryption to systems that handle sensitive data wherever possible.

On top of this, whenever the external drive is mounted, the decryption key will also land in those same areas. This is why systems handling data that does warrant encryption should never be put to sleep - only shut down or hibernated - and should have (at least) their system drives fully encrypted.

  • 1
    +2 if I could for a detailed canonical answer to the generalized "how should I protect my data" question. Could you add a section directly addressing this comment from the OP? Maybe as a separate, much shorter answer so as not to pollute the canonical-ness of this answer? – Mike Ounsworth Jun 3 '16 at 21:35
  • Very complete answer, thanks. I will just continue to assume that any encrypted file that was used on a computer without full disk encryption is still hard to find, but likely compromised supposing a determined attacker. – Elzo Jun 3 '16 at 21:39
  • @MikeOunsworth Not sure which rev you were commenting to, but the current answer addresses encrypted volume files. – Iszi Jun 3 '16 at 21:45
  • @Iszi I agree that you address it properly, this is not a criticism. I was just hoping you could also post a much shorter and to-the-point answer for future users who want a directed answer to this specific question without reading a giant text wall. – Mike Ounsworth Jun 3 '16 at 21:49
  • @MikeOunsworth Added section headers. Better? – Iszi Jun 3 '16 at 22:04
2

I'm the author of AxCrypt, a file-encryption software. It does not create encrypted virtual disk containers, nor does it do full-disk or partition level encryption.

Yes, it might give you a false sense of security for locally stored files, and why I recommend that it's used together with full disk encryption for local security. Even without that it still requires a fairly determined attacker with more or less full physical and logical access to your device, so it's still fairly useful under normal use scenarios.

The strong point of file-encryption is not to protect data on your local device though, it's to allow files to travel over insecure channels such as e-mail and to rest in insecure locations such as cloud storage services.

  • I know the difference between AxCrypt and VeraCrypt, I just though it didn't matter in the case I was talking about (some encrypted files on an unencrypted system). As for the "very determined attacker", on Linux, I could just go into the "thumbnails" folder and see all the user has been looking at, which is very easy to do. I Imagine that the same thing exists on Windows, probably in AppData. By the way, thank you for AxCrypt, it's very useful ! – Elzo Jun 5 '16 at 11:09
  • Yes, the thumbnails "feature" is an issue. There is indeed something smiilar on Windows. It's on the todo-list of things to look into if we can do something about. Still it does require someone to have full access to your system, which in my mind requires some determination to get. But yes, once there, looking at thumbnails is not technically difficult. – Svante Seleborg Jun 6 '16 at 11:57
1

Yes file-encrypting software can give you a false sense of security for the use-case you are interested in where the host operating system (windows in you case) is generating certain artifacts from the sensitive files (like swap files, thumbnails etc) and storing those in non-encrypted files.

Thats why I use full disk encryption with Bitlocker. However, the machine needs a secure place to store the key to decrypt the volume. On my laptop, that place is the TPM. On my desktop I don't have a good solution though I have considered purchasing the $15 TPM chip if you have a TPM header on your motherboard.

  • The key to your desktop should still be relatively safe, even though it's in the unencrypted portion of the drive. Most whole-disk encryption products that don't leverage TPM will use a transient key-encryption-key (KEK) to protect the key that's used for drive. This requires the user to enter a password or provide other information before the decryption key is usable. So long as the password or other credentials are reasonably strong, and the protocols and the software aren't vulnerable to cryptanalysis attacks, the key can be well protected in this way even without a TPM. – Iszi Jun 3 '16 at 21:52
  • I would love to use BitLocker, but it's only in Windows Pro and the price is, well... – Elzo Jun 4 '16 at 5:39

Not the answer you're looking for? Browse other questions tagged or ask your own question.