Last Updated: January 21, 2000
| Choosing your Virtual Server Password |
Of the many
possible avenues of attack that a malicious individual may resort to when
attacking a Virtual Server, password cracking is among the most effective and
useful. The UNIX operating system, upon which the Virtual Server system is
based, maintains a list of recognized users and information about their
passwords in a special file (or files) used as needed for authentication
purposes. The Virtual Server system stores this information in a file named
"passwd" located in the etc on each virtual server.
Many cracking techniques in popular usage today by malicious individuals to
penetrate server security involve "dictionary guessing" where
computers are used to automate a trial-and-error guessing process to discover
the correct password to an account. As a prelude to cracking activity, these
individuals will often attempt to view the
etc/passwd file
of a server to use it as input to their automated guessing programs. Due to the
design of the UNIX password scheme, the
etc/passwd file
does not contain the actual account passwords. It instead contains a special
sequence of characters generated by a specific cryptographic algorithm, using
the actual password as a encryption key to encrypt a block of known plaintext.
As such, knowing the contents of the
etc/passwd file
does not provide a direct knowledge of any account passwords. However, it does
offer a list of all valid accounts and provides the means to quickly check the
validity of a guessed password, greatly assisting any cracking efforts should
an individual gain access to this file. Using a large word list or dictionary
the attackers try every word or permutation of words in an attempt to guess the
password, checking their results against the contents of the
etc/passwd file
until they have a match.
This process can be surprisingly successful. As a result you should not use weak passwords that could be feasibly listed in any dictionary, including any foreign language dictionary. Trivial permutations such as spelling a dictionary word or account name backwards, concatenating one or more dictionary words, and prefixing or suffixing dictionary words with letters or digits should also be avoided because they are among the first permutations a dedicated attacker will check. Characteristics of good passwords include sufficient length (traditional UNIX systems recognize and use the first eight characters of the password so plan on choosing passwords seven to eight characters in length), sufficient complexity (UNIX passwords are case sensitive, meaning that uppercase and lowercase letters are not the same, and they may also contain unusual characters such as punctuation characters, so plan on using strange or unusual capitalization and characters), and sufficient obscurity (never use a password that incorporates personal information about yourself that could be easily obtained).
In the book Practical Unix Security, Simson Garfinkel and Gene Spafford offer the following checklist of things to consider when choosing password. To be secure, a password should NOT be any of the following:
|
The authors continue and state that good passwords are passwords that are difficult to guess. In general, good passwords:
|
Remember: Following a sensible password policy will help ensure that your Virtual Server remains the robust and secure system it should always be.
Copyright © 1996-2000, Last Modified: 21 January 2000A Little Technology Shoppe, LLC (ALTS.NET)®. All rights reserved. All brand names and product names used on these web pages are trademarks, or trade names of their respective holders.