SPS Advisory #47 RealONE Player Gold / RealJukebox2 skin file download vulnerability
UNYUN <[EMAIL PROTECTED]> Shadow Penguin Security (http://www.shadowpenguin.org) -------------------------------------------------------------- *Date July. 12, 2002 *vulnerable RealONE Player Gold Ver. 6.0.10.505 RealJukebox2 Ver. 1.0.2.379 RealJukebox2 Ver. 1.0.2.340 RealJukebox2 Plus Ver. 1.0.2.379 RealJukebox2 Plus Ver. 1.0.2.340 *Overview RealJukebox2 and RealONE Player Gold can be changed the visual appearance of application by skin file. The skin file (file extension is "rjs") is the zip-file that contains the images and setting files. The "skin.ini" file which is included in the zipped skin file is extracted to known directory when skin file is loaded. If HTML tag is written in skin.ini file, Internet Explorer regards skin.ini file as a HTML file. In consequence, the script written in skin.ini file is executed on "My Computer" security zone of Internet Explorer. *Risk There is a possibility that the arbitrary command is executed, etc, if the webpage that malicious HTML tag is written is browsed by Internet Explorer or e-mail client applications that use Internet Explorer components such as Outlook Express. *Details We describe the reproduction process of this problem on Windows2000 Professional SP2+RealJukebox2 Ver. 1.0.2.340. First, make the following skin.ini file that contains HTML tag to launch "c:\winnt\notepad.exe". [skin.ini] <html> <OBJECT CLASSID='CLSID:15589FA1-C456-11CE-BF01-00AA0055595A' CODEBASE='file://c:\winnt\notepad.exe'></OBJECT> </html> Compress this skin.ini file by Zip utility, rename file extension from "zip" to "rjs". Second, make the following HTML file (test.html), put it on webserver together with previous made "rjs" file (exploit.rjs). [test.html] <html> <META HTTP-EQUIV="Refresh" CONTENT="20;URL=file://c:\Program Files\Real\RealJukebox\temp\~rjbtemp0\skin.ini"> <iframe src="exploit.rjs"> </html> Finally, browse test.html by Internet Explorer. exploit.rjs is loaded into RealJukebox2 when test.html is browsed, the skin.ini file is extracted. When RealJukebox2 extracts the skin file, RealJukebox2 makes "~rjbtemp?" directory on "temp" directory which is placed on the install directory of RealJukebox2. '?' of "~rjbtemp?" is the sequence number, but, this value is '0' if RealJukebox2 is not launched now and RealJukebox2 has never terminated abnormally. skin.ini file is extracted "~rjbtemp?" directory, test.html refers it after 20 second. *Avoidance Information about the avoidance of this problem is published on the webpage of RealNetworks, Inc. http://service.real.com/help/faq/security/bufferoverrun07092002.html *Caution We will change this information without any notice. Use of this information constitutes acceptance for use in an AS IS condition. There are NO warranties with regard to this information. In no event shall the author be liable for any damages whatever arising out of or in connection with the use or spread of this information. Any use of this information is only for personal experiment. *Comments ? If you have something comments, please send to following address. webmaster <[EMAIL PROTECTED]> http://www.shadowpenguin.org