NTP: Remote execution of arbitrary code — GLSA 200905-08

Multiple errors in the NTP client and server programs might allow for the remote execution of arbitrary code.

Affected Packages

net-misc/ntp on all architectures
Affected versions < 4.2.4_p7
Unaffected versions >= 4.2.4_p7

Background

NTP contains the client and daemon implementations for the Network Time Protocol.

Description

Multiple vulnerabilities have been found in the programs included in the NTP package:

  • Apple Product Security reported a boundary error in the cookedprint() function in ntpq/ntpq.c, possibly leading to a stack-based buffer overflow (CVE-2009-0159).
  • Chris Ries of CMU reported a boundary error within the crypto_recv() function in ntpd/ntp_crypto.c, possibly leading to a stack-based buffer overflow (CVE-2009-1252).

Impact

A remote attacker might send a specially crafted package to a machine running ntpd, possibly resulting in the remote execution of arbitrary code with the privileges of the user running the daemon, or a Denial of Service. NOTE: Successful exploitation requires the "autokey" feature to be enabled. This feature is only available if NTP was built with the 'ssl' USE flag.

Furthermore, a remote attacker could entice a user into connecting to a malicious server using ntpq, possibly resulting in the remote execution of arbitrary code with the privileges of the user running the application, or a Denial of Service.

Workaround

You can protect against CVE-2009-1252 by disabling the 'ssl' USE flag and recompiling NTP.

Resolution

All NTP users should upgrade to the latest version:

 # emerge --sync
 # emerge --ask --oneshot --verbose ">=net-misc/ntp-4.2.4_p7"

References

Release Date
May 26, 2009

Latest Revision
May 26, 2009: 01

Severity
high

Exploitable
remote

Bugzilla entries