BookRags.com Literature Guides Literature
Guides
Criticism & Essays Criticism &
Essays
Questions & Answers Questions &
Answers
Lesson Plans Lesson
Plans
My Bibliography Periodic Table U.S. Presidents Shakespeare Sonnet Shake-Up
Research Anything:        
History | Encyclopedias | Films | News | Create a Bibliography | More... Login | Register | Help
Not What You Meant?  There are 58 definitions for Shadow.

Shadow password

Print-Friendly
About 3 pages (849 words)

Bookmark and Share Know this topic well? Help others and get FREE products!

The shadow password file mechanism is used to increase the security level of passwords on Unix-like systems by preventing ordinary users from being able to access encrypted password data.

Contents

Unshadowed passwords

On a system without shadowed passwords, /etc/passwd holds the following user information:

The file is world-readable (meaning that all users can read it), but only writable by root. This means that an attacker with normal privileges can obtain the hashed form of every user's password. Once a hashed password is obtained, an attacker can mount a brute force attack offline, without alerting system security modules designed to detect some number of failed login attempts. Most users select passwords that are vulnerable to such password cracking techniques.

Shadowed passwords

One way to reduce brute force attacks is to make the hashed password unreadable by unprivileged users, and the obvious way to do this is to make the passwd file it self readable only by the root user. However, this would also restrict access to other data such as username-to-userid mappings, which would break many functions on the system. Thus the idea of a "shadow" password file was conceived, where the passwd file remains world-readable but users' hashed passwords are now stored in a separate file—usually /etc/shadow on Linux and Unix systems (/etc/master.passwd on BSD systems)—which can be read only by root. Virtually all modern Unix-like operating systems use shadowed passwords. This makes stealing passwords more difficult, as root access is required to obtain the hashed password. This was considered sufficient protection because a user with root permissions can find this or any data by other means, as he or she can examine the entire system, and could even subvert the passwd program to capture plaintext passwords. When passwords are shadowed, the /etc/passwd file shows a character such as '*', or x' instead of the hashed password, and /etc/shadow holds the following user information:

  • User login name
  • salt and hashed password
  • Days since epoch of last password change
  • Days until change allowed
  • Days before change required
  • Days warning for expiration
  • Days before account inactive
  • Days since Epoch when account expires
  • Reserved

While the hashed password is the most important information in the shadow file, the file usually contains other fields as well, such as the last time the password was changed, when the password will expire, whether the account is disabled, etc. The format of the shadow file is simple and is basically identical to that of the password file: one line per user, ordered fields on each line, and fields separated by colons. Many systems specify that the order of user lines in the shadow file should be identical to the order of the corresponding users in the password file. The contents of the file is usually modified by the passwd program, which in turn is largely dependent on PAM. For example, the type of hash used is dictated by the configuration of the pam_unix.so module. By default the MD5 hash is used, while the newer pam_unix2.so module is also capable of stronger hashes such as blowfish. It is worth noting that the shadow password file does not entirely solve the problem of access to hashed passwords, as some network authentication schemes operate by transmitting the encrypted password over the network, making it vulnerable to interception. Alternate copies of system data, such as system backups written to tape or optical media, can also become a means for illicitly obtaining hashed passwords. In addition, the functions used by legitimate password-checking programs need to be written in such a way that malicious programs cannot make large numbers of authentication checks at high rates of speed.

History

Password shadowing was introduced in UNIX systems with the release of System V Release 3.2 and BSD4.3 Reno. Vendors which had performed ports from earlier UNIX releases did not include the new password shadowing features, leaving users of those systems exposed to password file attacks. In 1987 the author of the original Shadow Password Suite, Julie Haugh, experienced a computer breakin and wrote the initial release of the Shadow Suite containing just the login, passwd and su commands. The original release was written for the SCO Xenix operating system, but was quickly ported to other platforms. The Shadow Suite was ported to Linux in 1992 and became a part of many early distributions. Passwords may also be stored in distributed databases such as NIS and LDAP, rather than in plaintext files on each system. In the case of NIS, the shadow password mechanism is often still used on the NIS servers; in other distributed mechanisms the problem of access to the various user authentication components is handled by the security mechanisms of the underlying data repository.

See also

View More Summaries on Shadow password
 
Ask any question on Shadow password and get it answered FAST!
Answer questions in BookRags Q&A and earn points toward
discounted or even FREE Study Guides and other BookRags products!
Learn more about BookRags Q&A
Copyrights
Shadow password from Wíkipedia. ©2006 by Wíkipedia. Licensed under the GNU Free Documentation License. View a list of authors or edit this article.

Article Navigation
Join BookRagslearn moreJoin BookRags




About BookRags | Customer Service | Report an Error | Terms of Use | Privacy Policy