J-Security Center

Title: cfingerd Utilities Buffer Overflow Vulnerability

Severity: HIGH

Description:

cfingerd is a secure implementation of the finger daemon. cfingerd has been contributed to by many authors, and is maintained by the cfingerd development team.

A problem with the daemon makes it possible for a local user to gain elevated privileges. A buffer overflow in the handling of input by the daemon makes it possible for a local user to execute arbitrary code, and gain elevated privileges. Successful exploitation of this vulnerability results in root access on the local system. The problem is in the handling of input from .nofinger files.

During normal operation, the cfingerd is controlled by inetd. inetd waits for incoming finger requests, then calls the daemon to carry out the request.

The problem involves the validation of input from .nofinger files. Due to insufficient input checking by the cfingerd program, it is possible for a local user to place a string of greater than 80 characters in a .nofinger file, creating a buffer overflow. This overflow overwrites stack variables, including the return address, and can be used to execute code as root. Additionally, since the daemon is controlled by inetd, it's possible to continually retry exploitation of this problem, as if the daemon dies, it's simply restarted by inetd upon the next finger request.

Affected Products:

  • Debian Linux 2.2.0
  • Martin Schulze Cfingerd 1.4.1
  • Martin Schulze Cfingerd 1.4.2
  • Martin Schulze Cfingerd 1.4.3

Juniper Networks provides this content via a wide variety of sources and production methods. If notified of errors or omissions in the content of this page, Juniper Networks, at its discretion, will modify or remove the page or leave the content as is, depending on various factors including but not limited to the reputation and authority of the party providing the notification. Please use the contact information displayed elsewhere on this page to report any errors or omissions regarding the content on this page.