[DR018] Quartz Composer / QuickTime 7 information leakage
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
The canonical URI of this advisory is <http://remahl.se/david/vuln/
018/>.
This advisory concerns an as-yet unpatched problem in QuickTime 7 on
Mac OS X 10.4. The reason for disclosure before a vendor patch is
that another person realized the potential problem independently and
posted a message about it to the public mailing list quartzcomposer-
dev (hosted by Apple).
The suggested workaround is to disable the QuickTime browser plugin
until a fix is available from the vendor.
/ Regards, David Remahl
DR018: Quartz Composer / QuickTime 7 information leakage
=================================
Date of discovery: 2005-04-26
Date of publication: 2005-05-11
Discovered by: David Remahl <david@xxxxxxxxx>
Advisory URL: http://remahl.se/david/vuln/018/
CVEs: n/a [as of this writing, the author is aware of
no CVEs assigned to this vulnerability]
Classification: information exposure; design error
License: Public Domain
AFFECTED PRODUCTS
Verified vulnerable:
* Apple Mac OS X 10.4 (QuickTime 7)
Verified safe:
* Apple Mac OS X 10.3.9 (QuickTime 6.5, 7)
* QuickTime for Windows
INTRODUCTION
Quartz Composer files are created with the Quartz Composer
application included with the developer tools. The compositions (QTZ
files) it creates can be used as screen savers, viewed as they are in
the application or embedded as QT atoms in a .mov container. As such,
they can be viewed in a wide-ranging array of environments, including
a web browser, Keynote 2 and the Finder.
Compositions have access to a number of powerful tools (patches),
each providing or acting-upon information, ultimately resulting in a
graphic composition. The design assumption seems to be that these
details should always be contained within the presentation. However,
by combining patches that provide advanced system information with
patches that load information from the Internet, a malicious .mov
file (viewed for example by the QuickTime web plugin) can leak this
information to an external host.
This issue has not been addressed by Apple yet, and because details
of the potential exploit appeard in a public forum shortly after I
had notified the vendor, a fix may still be some time away. A
temporary work-around is disabling the QuickTime plugin and treating
Quartz Composer files with suspicion.
IMPACT
The information that can be leaked by this method includes (but may
not be limited to):
∙ local user name (long and short)
∙ computer name
∙ local IP
∙ OS / kernel version
∙ CPU / RAM / GPU configuration
∙ names (human-readable) of Bonjour services on the local
network
∙ local or system time
∙ volume of audio input
∙ lists of images (including pdfs) matching arbitrary
spotlight queries
∙ lists of images (including pdfs) in specific directories
(relative to / or ~)
∙ the existence of image and movie files can indicate the
existance of certain software packages
This information can be used for profiling of potential victims, for
further use in attacks against the user's system or phising related
social engineering.
DEMONSTRATION
A proof-of-concept in the form of a Quartz Composer composition
embedded in a .mov file is avaiilable at the following link. Please
see that document for more information.
http://remahl.se/david/vuln/018/demo.html
DETAILS
The basic attack works as follows:
1. A patch providing the information (for example the Host
Info patch) is created (A)
2. The output of (A) is connected to a JavaScript patch
which uses encodeURIComponent() to URI encode the string (B).
3. The output of (B) is connected to a String Printer which
results in a URI, for example (C)
4. The output of (C) is connected to the URL input
connection of either the Image Downloader patch or the RSS Feed
patch. (D)
5. The output of (D) must be used somehow, otherwise this
part of the patch graph will not be used. Rendering the output (via a
String to Image) to a 0-sized billboard is fine.
6. When the (D) patch is activated, it will access the URI
(output of (C)), thus leaking the restricted information to an HTTP
host of the attacker's choice.
VENDOR CONTACT
Apple Computer's security team was contacted with information about
the issue on 2005-05-06. Following a discussion of this problem on
the public quartzcomposer-dev mailinglist (initiated by a third-
party), the full details of the problems were released on May 11.
RESPONSE
Apple Computer
∙ 2005-05-10, 04:50 UTC: Confirmed receipt of problem report
(did not confirm issue).
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.1 (Darwin)
iD8DBQFCgpysFlFiDoclYIURAucPAJ9CYHddNaBbv5DMf77FEQk4UIbOdwCdFERf
/UINoKuuHPIrsMAKQVY4xbQ=
=LKr3
-----END PGP SIGNATURE-----