[Forgot Password]
Login  Register Subscribe

23631

 
 

115083

 
 

97147

 
 

909

 
 

78730

 
 

109

Paid content will be excluded from the download.


Download | Alert*
CWE
view XML

UNIX Hard Link

ID: 62Date: (C)2012-05-14   (M)2012-11-08
Type: weaknessStatus: 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 Description

Failure 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 Platforms
Language Class: All
Operating System Class: UNIX

Time Of Introduction

  • Implementation

Common Consequences

ScopeTechnical ImpactNotes
Confidentiality
Integrity
 
Read files or directories
Modify files or directories
 
 

Detection Methods
None

Potential Mitigations

PhaseStrategyDescriptionEffectivenessNotes
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 CWETypeViewChain
CWE-62 ChildOf CWE-893 Category CWE-888  

Demonstrative Examples
None

Observed Examples

  1. CVE-2001-1494 : Hard link attack, file overwrite; interesting because program checks against soft links
  2. CVE-2002-0793 : Hard link and possibly symbolic link following vulnerabilities in embedded operating system allow local users to overwrite arbitrary files.
  3. 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.
  4. 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.
  5. CVE-2004-1603 : Web hosting manager follows hard links, which allows local users to read or modify arbitrary files.
  6. CVE-2004-1901 : Package listing system allows local users to overwrite arbitrary files via a hard link attack on the lockfiles.
  7. CVE-2005-1111 : Hard link race condition
  8. BUGTRAQ:20030203
  9. 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

TaxynomyIdNameFit
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:

  1. 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.

© 2013 SecPod Technologies