RealPlayer Miscellaneous Vulnerabilities (#NISR19012005g)
From: NGSSoftware Insight Security Research (nisr_at_NEXTGENSS.COM)
Date: Wed, 19 Jan 2005 17:01:56 -0000 To: NTBUGTRAQ@LISTSERV.NTBUGTRAQ.COM
NGSSoftware Insight Security Research Advisory
Name: RealPlayer Miscellaneous Vulnerabilities
Systems Affected: RealPlayer 10.5 (220.127.116.110) and older
Vendor URL: http://www.real.com/
Author: John Heasman [ firstname.lastname@example.org ]
Date of Public Advisory: 19th January 2004
Advisory number: #NISR19012005g
Advisory URL: http://www.ngssoftware.com/advisories/real-03full.txt
Two vulnerabilities have been discovered in RealPlayer which may
potentially be leveraged to allow remote code execution, or may used in
combination with the Real Metadata Package File Deletion vulnerability to
reliably delete files from a users system.
The first of which is an off-by-one vulnerability in the processing of
tags in the Real Metadata Package files. If an overly long tag is
supplied, the null byte terminating the string is written over the highest
order byte of the saved base pointer. This will cause the instruction
pointer to be read from this buffer upon the function returning.
Investigation of this issue showed that the buffer from which the
instruction pointer was being read did not appear to be under user control
at any given time in the tested scenarios, however due to the nature of
the vulnerability it is important that this is not regarded as an
The second flaw is the way in which RealPlayer Skin file names are parsed
when the files are opened by RealPlayer. If url encoded traversal
sequences are included in the RJS filename, although RealPlayer will save
the RJS file in the 'skins' folder without decoding the filename, when it
attempts to open the file it will decode the filename, and as such can be
made to read an arbitrary file from the disk.
It does not seem possible to write arbitrary content to the system through
the use of this flaw, it may be possible to use this to determine the
existence of files on the local system, and as such could be combined with
the Real Metadata Package File Deletion flaw to reliably delete files from
a users system.
RealPlayer supports a proprietary package delivery file type, aptly named
Real Metadata Packages. These files contain an HTML style language which
contains information and resource urls for various packages and extensions
One of the supported tags within the RMP file type is the <FILENAME> tag.
This is designed to point to a relative file which is to be downloaded.
If the file which is to be downloaded already exists on the system, it
will delete this file without warning.
It is also possible to insert directory traversal character sequences in
the file name to break out of the download directory, and to point to any
existing file on the system.
Before the the deletion takes place, RealPlayer ensures that the file
extension is among those listed in the formats.ini file located at:
It is possible to bypass this file extension check in the follow manner
due to a lack in the file extension validation process:
RealNetworks have released an update for these issues which can be
A check for this vulnerability has been added to Typhon III, NGSSoftware's
advanced vulnerability assessment scanner. For more information please
visit the NGSSoftware website at http://www.ngssoftware.com/
NGSSoftware design, research and develop intelligent, advanced application
security assessment scanners. Based in the United Kingdom, NGSSoftware
have offices in the South of London and the East Coast of Scotland.
NGSSoftware's sister company NGSConsulting, offers best of breed security
consulting services, specialising in application, host and network
Telephone +44 208 401 0070
Fax +44 208 401 0076
-- NTBugtraq Editor's Note: Most viruses these days use spoofed email addresses. As such, using an Anti-Virus product which automatically notifies the perceived sender of a message it believes is infected may well cause more harm than good. Someone who did not actually send you a virus may receive the notification and scramble their support staff to find an infection which never existed in the first place. Suggest such notifications be disabled by whomever is responsible for your AV, or at least that the idea is considered. --