A local overflow exists in BSD-derived libc libraries. The realpath() function fails to validate user input resulting in a buffer overflow. With a specially crafted request, an attacker can cause arbitrary code execution resulting in a loss of integrity.
Classification
Location:
Local Access Required
Attack Type:
Input Manipulation
Impact:
Loss of Integrity
Exploit:
Exploit Rumored / Private
Disclosure:
OSVDB Verified
Technical
wu-ftpd implements a function derived from the libc realpath(), called fb_realpath(). A vulnerability was discovered in this function, and an advisory for wu-ftpd was released on July 31, 2003. The discovery of the wu-ftpd bug in fb_realpath() caused the BSD's to take a look at their libc implementations of realpath(), and they found that the error still exists in their implementations, and affected any program which called realpath(). While this vulnerability exists in separate implementations for wu-ftpd and the BSD libc, both inherit the vulnerability from the 4.4BSD codebase.
Solution
Each vendor maintains its own implementation of realpath(), and each has released a patch or upgrade to address the issue. Please refer to the specific vendor advisory for more information.