|
CERBERUS
|
The Windows® family of personal computer operating systems are the most widely employed operating systems in the world. However, Windows® was not designed for security, nor were the IBM®-compatible personal computers on which it runs. Forensic software exploits Windows® security leaks for computer evidence recovery and for electronic discovery in litigation. This is usually the real method by which "the suspect's encryption was cracked." It is also used by criminals and industrial spies. - The basic Windows® multi-tasking capability, that allows you to run several programs at once, will leak your documents; your passwords; and even your encryption keys. Unless these data leaks are plugged, any encryption can be bypassed. DELETE DOESN'T The DOS/Windows® delete command does not delete your file's data bytes from your disk. It merely deletes its own record of the fact that the area of the disk they occupy is unavailable for other uses. It merely unlinks the file by changing the first character of its name to a special byte. Consequently, the DOS/Windows® undelete command merely has to change that mark back (with a character it prompts you to provide) in order to recover any deleted file that hasn't been overwritten by subsequent save commands. (The Win95 Explorer even leaves deleted files overtly available in a Recycle Bin.) As a consequence of this "recovery feature," your deleted data's confidentiality depends on subsequent save commands that may (or may not) overwrite other data on top of (some of) those data bytes. The format command doesn't format your disk; it merely formats a brand-new
DOS/ Unless and until they are overwritten, all data bytes from a sensitive file that has been deleted are available to be read by any software that can talk to your disk drive.
Such forensic software is widely used by governmental authorities; by "data recovery specialists" performing electronic discovery for lawsuits; and by other disk surfers.
Whether disk surfers run such forensic software on your DOS/Windows® computer, or run it on one of their own to which they connected your disk drive's controller cable plug, is as irrelevant as Windows® "access control software."
Being denied "access" to your particular one of the millions of copies of Windows® is hardly an insurmountable obstacle to reading your disk.
Windows®-compatible encryption must Sanitize, not delete sensitive plaintext.
DEFRAGMENTING
When files are created (or expanded) on a well-used disk, their contents may be scattered into disparate chunks in whatever areas of disk are labelled as unoccupied. If these areas are widely separated, such fragmented files will be slow to read or write, due to disk drive seek times between the separated areas.
Consequently, there are "defragmenting" utilities that rearrange your entire disk into contiguous files, to maximize system performance. This obviously involves some (undetermined amount of) overwriting.
Windows 95 includes one in the system tools section of its accessories folder, accessable from the Programs start button. Windows 3.1, Windows 3.11 and Windows for Workgroups 3.11 require you to exit to DOS (not use a DOS window) in order to run a program called defrag.exe. (You should never run this older defragmenter under Win95, where it can corrupt your filename structure.)
You should defragment your disk(s) often, as a matter of "good housekeeping" for system performance. As an added benefit, it may overwrite some sensitive data left-overs, but defragmenting isn't sanitizing.
DIGITAL SCRAPS
Hard disk controllers are block-transfer devices, reading or writing blocks of data bytes from or to multi-byte sectors on the magnetic disk's individual tracks. If a 512-byte sector is overwritten with new data of less than that number of bytes, the small sector tail of leftover bytes will still retain the original data.
However, Windows® reads disk files conforming to the 16-bit DOS file-system, for purposes of backward compatibility. The DOS File Allocation Table (FAT - in the disk's first sector) uses 16-bit numbers as pointers to record the locations of clusters of 512-byte disk data sectors. Thus, the FAT can only distinguish between 65,536 (2-to-the-16th-power) separate data clusters on each drive.
Consequently, each cluster is an all-or-nothing allocation of however many bytes into which the disk's total capacity can be so divided. For instance, a disk larger than 256MB, but less than 512MB, is accessed in 16-sector clusters of 8KB, each. On a 1GB to 2GB disk, the 16-bit FAT must allocate at least 32KB of disk space to even the smallest file, because it can't deal in smaller quantities.
Since all block transfers must start at the beginning of a cluster, a cluster tail can easily hold several 2500-byte pages of plaintext from the last file that "owned" it.
In addition to this slack space at the end of all files, the interior slack spaces of the compound files created by applications such as Word® and Excel® can also hold sensitive data scavanged by the reallocation of "deleted" clusters to those files.
Sensitive data scavanged into file slack spaces are analogous to the unburned scraps of incriminating paper recovered from fireplaces by fictional detective heroes. They can be "recovered" with the kinds of forensic software employed by real law enforcement agencies, or by data recovery consultants employed by attorneys in discovery for law suits. Such software is commercially available to other potential disk surfers, as well.
Windows®-compatible encryption must overwrite ALL plaintext - including that left in free clusters and that scavanged into all file slack spaces, not just the tails.
WRITE-BEHIND CACHE LEAKS
Some encryption programs that supposedly provide Sanitizing functions (sometimes called "secure delete," a marketing term almost as meaningless as "military grade encryption") can be defeated by Windows® mechanisms for caching file data.
Their generically implemented "file wiping" routines don't take this caching behavior into account. This can result in Windows® ignoring their instructions to overwrite data and merely deleting (unlinking) the file clusters, which remain available to disk surfers.
Windows 3.1 and 3.11 deal directly with the File Allocation Table in 16-bit emulated- Windows® caches recently-used data in memory, to minimize the need to reload it from disk. There is also read-ahead caching of the next likely block of data from disk. Win3.1 and Win3.11 use a 16-bit DOS terminate- Both VCACHE and SMARTDRV are also capable of write-behind caching. This allows Windows® to gain some performance, by waiting until the last operation on cached data is completed before writing it to disk, and allowing programs to exit before all disk writing has finished. Under Windows 3.x, this can defeat all but the last of any multiple overwritings of each buffer-full of data, unless the cache is explicitly flushed.
The Windows 95 version of VCACHE is actually "smart" enough to not bother with any of the overwrites of the last buffer-full from a file that is subsequently deleted, unless the cache is flushed. Except for large files, this can be the entire file, as users of the Windows® version of the e-mail encryption program PGP® have discovered.
Even more insidious is the fact that Win95's VCACHE ignores cache flush calls from 16-bit Windows® or DOS programs. Consequently, even the well-written DOS version of PGP® (which does include explicit cache-flushing instructions in its file-wiping subroutine) can't reliably overwrite files when run in a DOS window under Win95.
Any "encryption software" that doesn't cache-flush can't prevent Windows® from leaking your data. Under Windows 95, 16-bit software cannot Sanitize.
FILENAME LEAKS
The long filename features in Win95 are implemented in such a fashion that even though the file may be overwritten, its name may still be recoverable by disk surfers.
VFAT in Win95 (but not VFAT in WFW) will only be purged of all traces of the name when the spaces it occupies in both DOS (8+3 byte) format and in long filename format are overwritten when VFAT needs to accomodate enough additional names.
This is a potential leak for people who use sensitive filenames under Windows 95. If you are concerned about such name fragments, running the Windows 95 Disk Defragmenter will result in most such fragments being overwritten.
However, it's bad INFOSEC practice to expend the effort to encrypt most of a file's sensitive contents, and to then leak some of them yourself by including them in plaintext form in the filename. Disk surfers thrive upon this kind of stupidity.
INFOSEC includes your operational security. Don't leave clues in filenames.
THE SWAPFILE
Windows®is a multi-tasking operating system. This means that when switching the context in which it services application programs from one to another, un-encrypted data that the first program was working with in memory may be swapped-out to a disk swapfile. Once Windows® is finished with them and swaps their contents back to RAM, these disk clusters will be declared available for re-writing with other swap data.
Unfortunately, unless they actually are overwritten, their sensitive contents will remain available for possible later scavenging by disk-surfers.
An extremely important, but sometimes-overlooked source of sensitive data leaks to the swapfile is the Clipboard, the basis for all cutting and pasting of data between (or within) Windows® programs. If you have any other programs running while you use a Windows® application to work on a sensitive file in plaintext (un-encrypted) form, it is quite likely that portions of it will be found in the swapfile.
This kind of leak can allow the file to be compromised, even though you have carefully re-encrypted it with a program that Sanitized your copy of the plaintext with multiple overwrites. Otherwise-strong cryptosystems can still be bypassed by the swap file.
When your computer is inside a physical security perimeter, you don't have to worry about disk surfers. You don't need encryption, or any other feature of our software (assuming your complete trust in every person who might get inside that perimeter).
However, if you ever take your computer outside such a perfect perimeter (or it becomes imperfect), you might not remember not having allowed our software to automatically Clear the Windows® swapfile when it offered you the option on exit.
Windows®-compatible encryption must Clear the swapfile. Don't circumvent it.
UNAUTHORIZED COPIES
Another class of potential security leaks are associated with the convenience features of many application programs. Like an over-eager-but-security-unaware typist trying to anticipate your needs, they make extra copies of your sensitive data, in order to be more "efficient."
One example are the history files maintained by some application programs for your convenience in undoing changes or deletions. If you use such a program to edit an un-encrypted document, any sensitive data you cut or delete in editing will be stored in the history file, in plaintext form for possible recovery by an adversary. If you fail to re-secure the document, because you believe that it no longer contains sensitive information, you could be made rudely aware of this vulnerability.
Many application programs (especially those doing disk-to-disk compression or similar operations) may also create workspace files in your TEMP directory. These "temporary" files are merely deleted. Their remains must be overwritten to avoid leaks.
In addition, Windows® application programs don't really talk to your printer. They merely write their formated print-out data to temporary files to be read by the print-spooler utility provided by the operating system. This enables the application program to serve you, while the print spooler feeds the printer in the background.
Unfortunately, this means that "temporary" copies of anything you print-out are made in TEMP space files, which the print-spooler then deletes. Consequently, every time you print a decrypted document with your computer, leaked copies will appear on the drive containing your TEMP directory.
Our software clears all free sectors on the drive containing your TEMP directory with the Clear TEMP space command on the Disk-wiping utilities sub-menu of your System Menu. This overwrites all free clusters on that drive with all-zeros, per DOD 5220.22-M. Unless you have our software configure your system's TEMP directory on a drive with little free space, this process can take 5 minutes per gigabyte on Ultra DMA disk drives, and longer on older ones. For this reason, although Clear TEMP space is performed automatically on exit, it can be canceled or interrupted.
You can eliminate the TEMP file problem entirely, by having our software configure your TEMP space as a RAM disk that automatically Clears with power off. However, some programs may make temporary files in their own folders, rather than in the TEMP directory. For these, you must use the Clear disk free space command.
If you haven't configured your system to use a RAM-disk for TEMP space, it's very important that you let our software Clear TEMP space after sensitive print-outs.
SYSTEM CRASHES
Our software encrypts a plaintext file into a temporary file. It then Sanitizes the plaintext original by multiple overwriting, per DOD 5220.22-M, and replaces it with the temporary file. This is an availability measure.
Our design intentionally avoids the faster method of encrypting directly into the source file. Thus, if a power transient crashes your system during encryption, your document will be undamaged.
Similarly, it decrypts a secured document to a working file, copies it over the encrypted file, and then Sanitizes the working file. This method ensures that your document's confidentiality is not purchased at the expense of its availability.
However, if your system crashes during a decryption operation, partially-decrypted plaintext may be left in a temporary file in your TEMP Space.
Upon start-up, our software automatically looks for and Sanitizes any such file. It is essential after such a crash that you let it do so as quickly as possible, unless you have allowed it to configure your system to use a RAM-disk for your TEMP Space, which would result in automatic Clearing of TEMP space by power interruption.
Windows®-compatible encryption must withstand system crashes.
The speed of (and need for) TEMP Space Clearing, and the effectiveness of Swap File Clearing can be affected by how you configure your system.
The Cerberus logo and the ...Security Manager product names are trademarks of Cerberus Systems, Inc. © Copyright 1997-99, all rights reserved. |