RealNetworks has warned customers about a security vulnerability in its RealPlayer and RealOne Player software that could allow an attacker to run malicious code on a machine using a vulnerable version of the popular media player programs.
The company issued a software patch on Tuesday to fix the holes, which allow attackers to use specially crafted SMIL (Synchronized Multimedia Integration Language) files to create buffer overflows on vulnerable systems, and is encouraging customers to upgrade or patch their software.
The vulnerability exists in a component of RealPlayer that processes user-supplied data in a SMIL file for use by RealPlayer. Attackers could format a SMIL file to take advantage of the hole and create a buffer overflow on the machine running RealPlayer that would allow them to run their own malicious code on the system, according to an advisory from security company iDefense.
In buffer overflow attacks, malicious hackers flood temporary data storage areas on a computer with more information than they were intended to hold. Extra information, such as attack code, overflows into other areas of the computer's memory, overwriting other data and causing the system to crash or begin running the attacker's code.
Victims have to be tricked into downloading and opening a SMIL file from the attackers to trigger the RealPlayer vulnerability. However, on systems running Microsoft's Windows, the Internet Explorer Web browser opens SMIL files automatically without prompting the user. If SMIL files are designated to be opened with RealPlayer, simply clicking on a link to one on a Web page could open the file and trigger the vulnerability, iDefense said.
Versions of RealPlayer and RealOne Player for Windows, Apple Computer's OS X operating system and Linux are all vulnerable to the buffer overflow, iDefense said.
There is no way to work around the problem and RealPlayer users are encouraged to apply one of the available patches, Real said in an advisory. (See: http://service.real.com/help/faq/security/050224_player/EN/.)