UNIX Hard LinkID: 62 | Date: (C)2012-05-14 (M)2022-10-10 |
Type: weakness | Status: INCOMPLETE |
Abstraction Type: Variant |
Description
The software, when opening a file or directory, does not
sufficiently account for when the name is associated with a hard link to a
target that is outside of the intended control sphere. This could allow an
attacker to cause the software to operate on unauthorized
files.
Extended DescriptionFailure for a system to check for hard links can result in vulnerability
to different types of attacks. For example, an attacker can escalate their
privileges if a file used by a privileged program is replaced with a hard
link to a sensitive file (e.g. /etc/passwd). When the process opens the
file, the attacker can assume the privileges of that process.
Applicable PlatformsLanguage Class: AllOperating System Class: UNIX
Time Of Introduction
Common Consequences
Scope | Technical Impact | Notes |
---|
ConfidentialityIntegrity | Read files or
directoriesModify files or
directories | |
Detection MethodsNone
Potential Mitigations
Phase | Strategy | Description | Effectiveness | Notes |
---|
Architecture and Design | Separation of Privilege | Follow the principle of least privilege when assigning access rights
to entities in a software system.Denying access to a file can prevent an attacker from replacing that
file with a link to a sensitive file. Ensure good compartmentalization
in the system to provide protected areas that can be trusted. | | |
Relationships
Related CWE | Type | View | Chain |
---|
CWE-62 ChildOf CWE-893 | Category | CWE-888 | |
Demonstrative ExamplesNone
Observed Examples
- CVE-2001-1494 : Hard link attack, file overwrite; interesting because program checks against soft links
- CVE-2002-0793 : Hard link and possibly symbolic link following vulnerabilities in embedded operating system allow local users to overwrite arbitrary files.
- CVE-2003-0578 : Server creates hard links and unlinks files as root, which allows local users to gain privileges by deleting and overwriting arbitrary files.
- CVE-1999-0783 : Operating system allows local users to conduct a denial of service by creating a hard link from a device special file to a file on an NFS file system.
- CVE-2004-1603 : Web hosting manager follows hard links, which allows local users to read or modify arbitrary files.
- CVE-2004-1901 : Package listing system allows local users to overwrite arbitrary files via a hard link attack on the lockfiles.
- CVE-2005-1111 : Hard link race condition
- BUGTRAQ:20030203
- ASA-0001 : OpenBSD chpass/chfn/chsh file content leak
For more examples, refer to CVE relations in the bottom box.
White Box Definitions None
Black Box Definitions None
Taxynomy Mappings
Taxynomy | Id | Name | Fit |
---|
PLOVER | | UNIX hard link | |
CERT C Secure Coding | FIO05-C | Identify files using multiple file
attributes | |
CERT C++ Secure Coding | FIO05-CPP | Identify files using multiple file
attributes | |
References:
- Mark Dowd John McDonald Justin Schuh .The Art of Software Security Assessment 1st Edition. Addison Wesley. Section:'Chapter 9, "Hard Links", Page 518.'. Published on 2006.