Praetorian503 Posted February 15, 2013 Report Posted February 15, 2013 A memory corruption vulnerability has been identified in Photodex ProShow Producer version 5.0.3297. When opening a crafted style file (.pxs), the application loads the "title" value from the pxs file. The ColorPickerProc function does not properly validate the length of the string loaded from the "title" value from the pxs file before using it in the further application context, which leads to a memory corruption condition with possible code execution depending on the version of the operating system.Inshell Security Advisoryhttp://www.inshell.net1. ADVISORY INFORMATION-----------------------Product: Photodex ProShow ProducerVendor URL: www.photodex.comType: Improper Restriction of Operations within the Bounds of a Memory Buffer[CWE-119]Date found: 2013-02-14Date published: 2013-02-14CVSSv2 Score: 4,4 (AV:L/AC:M/Au:N/C:P/I:P/A:P)CVE: -2. CREDITS----------This vulnerability was discovered and researched by Julien Ahrens fromInshell Security.3. VERSIONS AFFECTED--------------------Photodex ProShow Producer v5.0.3297, older versions may be affected too.4. VULNERABILITY DESCRIPTION----------------------------A memory corruption vulnerability has been identified in PhotodexProShow Producer v5.0.3297.When opening a crafted style file (.pxs), the application loads the"title" value from the pxs file.The ColorPickerProc function does not properly validate the length ofthe string loaded from the "title" value from the pxs file before usingit in the further application context, which leads to a memorycorruption condition with possible code execution depending on theversion of the operating system.Vulnerable function definition (all.dnt): __stdcall ColorPickerProc(x, x, x, x)An attacker needs to force the victim to open a crafted .pxs file inorder to exploit the vulnerability. Successful exploits can allowattackers to execute arbitrary code with the privileges of the userrunning the application. Failed exploits will result indenial-of-service conditions.5. PROOF-OF-CONCEPT (Code / Exploit)------------------------------------The following generated string has to be inserted into a .pxs file totrigger the vulnerability on Windows XP SP3.#!/usr/bin/pythonfile="poc.txt"junk1="\x41" * 233eip="\x42" * 4junk2="\xCC" * 100poc=junk1 + eip + junk2try: print ("[*] Creating exploit file...\n"); writeFile = open (file, "w") writeFile.write( poc ) writeFile.close() print ("[*] File successfully created!");except: print ("[!] Error while creating file!");For further Screenshots and/or PoCs visit:http://security.inshell.net/advisory/466. SOLUTION-----------None7. REPORT TIMELINE------------------2013-02-14: Discovery of the vulnerability2013-02-14: Full Disclosure because the vendor ignored all previous reports.8. REFERENCES-------------http://security.inshell.net/advisory/46Source: PacketStorm Quote