iDefense Security Advisory 05.10.07 - Remote exploitation of multiple buffer overflow vulnerabilities in Apple Inc.'s Darwin Streaming Proxy allows attackers to execute arbitrary code with the privileges of running service, usually root. Due to insufficient sanity checking, a stack-based buffer overflow could occur while trying to extract commands from the request buffer. The "is_command" function, located in proxy.c, lacks bounds checking when filling the 'cmd' and 'server' buffers. Additionally, a heap-based buffer overflow could occur while processing the "trackID" values contained within a "SETUP" request. If a request with more than 32 values is encountered, memory corruption will occur. iDefense has confirmed the existence of these vulnerabilities in Darwin Streaming Server 5.5.4 and Darwin Streaming Proxy 4.1. It is suspected that earlier versions are also vulnerable.
f78fee0d8b63de9cc27fccb559c04b01ce3724d7bc2dcedabc6b197b5c472d26
Apple Darwin Streaming Proxy Multiple Vulnerabilities
iDefense Security Advisory 05.10.07
http://labs.idefense.com/intelligence/vulnerabilities/
May 10, 2007
I. BACKGROUND
Darwin Streaming Server is a server technology that facilitates
streaming of QuickTime data to clients across the Internet using the
industry standard RTP and RTSP protocols.
The Darwin Streaming Proxy is an application-specific proxy which would
normally be run in a border zone or perimeter network. It is used to
give client machines, within a protected network, access to streaming
servers where the firewall blocks RTSP connections or RTP/UDP data
flow. For more information, please visit the product website at via
following URL.
http://developer.apple.com/opensource/server/streaming/index.html
II. DESCRIPTION
Remote exploitation of multiple buffer overflow vulnerabilities in Apple
Inc.'s Darwin Streaming Proxy allows attackers to execute arbitrary code
with the privileges of running service, usually root.
Due to insufficient sanity checking, a stack-based buffer overflow could
occur while trying to extract commands from the request buffer. The
"is_command" function, located in proxy.c, lacks bounds checking when
filling the 'cmd' and 'server' buffers.
Additionally, a heap-based buffer overflow could occur while processing
the "trackID" values contained within a "SETUP" request. If a request
with more than 32 values is encountered, memory corruption will occur.
III. ANALYSIS
Successful exploitation allows remote attackers to execute arbitrary
code with the privileges of the running service, usually root.
No credentials are required for accessing the vulnerable code.
The stack-based buffer overflow vulnerability relies on compiler
optimizations. iDefense has verified the Darwin Streaming Proxy 4.1
binary release for Fedora Core is not vulnerable. The binary produced
from a out-of-the-box compile on Fedora was confirmed vulnerable.
IV. DETECTION
iDefense has confirmed the existence of these vulnerabilities in Darwin
Streaming Server 5.5.4 and Darwin Streaming Proxy 4.1. It is suspected
that earlier versions are also vulnerable.
V. WORKAROUND
Employ firewalls, access control lists or other TCP/UDP restriction
mechanisms to limit access to vulnerable systems and services.
VI. VENDOR RESPONSE
Apple has addressed this vulnerability by releasing version
5.5.5 of Darwin Streaming Server. More information can be found from
Apple's Security Update page or the Darwin Streaming Server advisory
page at the respective URLs below.
http://docs.info.apple.com/article.html?artnum=61798
http://docs.info.apple.com/article.html?artnum=305495
VII. CVE INFORMATION
The Common Vulnerabilities and Exposures (CVE) project has assigned the
name
CVE-2007-0748 to the heap-based buffer overflow and CVE-2007-0749 to
stack-based
buffer overflow. These names are a candidate for inclusion in the CVE list
(http://cve.mitre.org/), which standardizes names for security problems.
VIII. DISCLOSURE TIMELINE
04/09/2007 Initial vendor notification
04/09/2007 Initial vendor response
05/10/2007 Coordinated public disclosure
IX. CREDIT
The discoverer of this vulnerability wishes to remain anonymous.
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 © 2007 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.