iDefense Security Advisory 11.03.08 - Remote exploitation of an integer overflow vulnerability in CUPS, as included in various vendors operating system distributions, could allow an attacker to execute arbitrary code with the privileges of the affected service. The vulnerability exists within the WriteProlog() function in the "texttops" application. When calculating the page size used for storing PostScript data, multiple values that are derived from attacker-controlled content are used in a multiplication operation. This calculation can overflow, resulting in an incorrect result for the total page size. This value is then used to allocate a heap buffer that is later filled with attacker controlled content, resulting in a heap buffer overflow. iDefense has confirmed the existence of this vulnerability in CUPS version 1.3.7. Previous versions may also be affected.
4b48360e997204c4042d31ac8dfb6672aba83c8ea1c7480c62bc5c82e1b3afce
iDefense Security Advisory 10.09.08
http://labs.idefense.com/intelligence/vulnerabilities/
Oct 09, 2008
I. BACKGROUND
The Common UNIX Printing System, more commonly referred to as CUPS,
provides a standard printer interface for various Unix based operating
systems. "texttops" is a part of CUPS responsible for creating
PostScript representations of text files. For more information, visit
the vendor's website at the following URL.
http://www.cups.org/
II. DESCRIPTION
Remote exploitation of an integer overflow vulnerability in CUPS, as
included in various vendors' operating system distributions, could
allow an attacker to execute arbitrary code with the privileges of the
affected service.
The vulnerability exists within the WriteProlog() function in the
"texttops" application. When calculating the page size used for storing
PostScript data, multiple values that are derived from
attacker-controlled content are used in a multiplication operation.
This calculation can overflow, resulting in an incorrect result for the
total page size. This value is then used to allocate a heap buffer that
is later filled with attacker controlled content, resulting in a heap
buffer overflow.
III. ANALYSIS
Exploitation of this vulnerability results in the execution of arbitrary
code with the privileges of the affected service. Depending on the
underlying operating system and distribution, CUPS may run as the lp,
daemon or a different user.
Exploiting heap overflow vulnerabilities on modern Unix systems can be
difficult due to various heap protection schemes; however, iDefense has
proof-of-concept exploit code that demonstrates code execution is
possible.
To exploit this vulnerability remotely, the targeted host must be
sharing a printer(s) on the network. If a printer is not being shared,
CUPS only listens on the localhost interface, and the scope of this
vulnerability would be limited to local privilege escalation.
IV. DETECTION
iDefense has confirmed the existence of this vulnerability in CUPS
version 1.3.7. Previous versions may also be affected.
V. WORKAROUND
Disabling printer sharing will prevent this vulnerability from being
exploited remotely. However, local exploitation is still possible.
VI. VENDOR RESPONSE
CUPS.org has released a patch which addresses this issue. For more
information, consult their advisory at the following URL.
http://www.cups.org/str.php?L2919
VII. CVE INFORMATION
A Mitre Corp. Common Vulnerabilities and Exposures (CVE) number has not
been assigned yet.
VIII. DISCLOSURE TIMELINE
09/02/2008 Initial Vendor Notification
10/09/2008 Public Disclosure
IX. CREDIT
This vulnerability was reported to iDefense by regenrecht.
Get paid for vulnerability research
http://labs.idefense.com/methodology/vulnerability/vcp.php
Free tools, research and upcoming events
http://labs.idefense.com/
X. LEGAL NOTICES
Copyright © 2008 iDefense, Inc.
Permission is granted for the redistribution of this alert
electronically. It may not be edited in any way without the express
written consent of iDefense. If you wish to reprint the whole or any
part of this alert in any other medium other than electronically,
please e-mail customerservice@idefense.com for permission.
Disclaimer: The information in the advisory is believed to be accurate
at the time of publishing based on currently available information. Use
of the information constitutes acceptance for use in an AS IS condition.
There are no warranties with regard to this information. Neither the
author nor the publisher accepts any liability for any direct,
indirect, or consequential loss or damage arising from use of, or
reliance on, this information.