Macro Expert 4.0 – Multiple Privilege Escalations

  • 作者: Tulpa
    日期: 2016-09-26
  • 类别:
    平台:
  • 来源:https://www.exploit-db.com/exploits/40428/
  • # Exploit Title: Macro Expert 4.0 Multiple Elevation of Privilege
    # Date: 26/09/2016
    # Exploit Author: Tulpa
    # Contact: tulpa@tulpa-security.com
    # Author website: www.tulpa-security.com
    # Vendor Homepage: http://www.macro-expert.com/
    # Software Link: http://www.macro-expert.com/download.htm
    # Version: Software Version 4.0
    # Tested on: Windows 7 x86
    # Shout-out to carbonated and ozzie_offsec
    
    1. Description:
     Macro Expert installs as a service with an unquoted service path running with SYSTEM
    
    privileges. This could potentially allow an authorized but non-privileged local
    user to execute arbitrary code with elevated privileges on the system. Additionally the
    
    default installation path suffers from weak folder permission which an unauthorized user
    
    in the BUILTIN\Users group could take advantage of.
    
    2. Proof
    
    C:\Program Files\GrassSoft>sc qc "Macro Expert"
    [SC] QueryServiceConfig SUCCESS
    
    SERVICE_NAME: Macro Expert
    TYPE : 10WIN32_OWN_PROCESS
    START_TYPE : 2 AUTO_START
    ERROR_CONTROL: 1 NORMAL
    BINARY_PATH_NAME : c:\program files\grasssoft\macro expert\MacroService.exe
    LOAD_ORDER_GROUP :
    TAG: 0
    DISPLAY_NAME : Macro Expert
    DEPENDENCIES :
    SERVICE_START_NAME : LocalSystem
    
    C:\Program Files\GrassSoft>cacls "Macro Expert"
    C:\Program Files\GrassSoft\Macro Expert BUILTIN\Users:(OI)(CI)C
    NT SERVICE\TrustedInstaller:(ID)F
    NT SERVICE\TrustedInstaller:(CI)(IO)(ID)F
    NT AUTHORITY\SYSTEM:(ID)F
    NT AUTHORITY\SYSTEM:(OI)(CI)(IO)(ID)F
    BUILTIN\Administrators:(ID)F
    BUILTIN\Administrators:(OI)(CI)(IO)(ID)F
    BUILTIN\Users:(ID)R
    BUILTIN\Users:(OI)(CI)(IO)(ID)(special access:)
    GENERIC_READ
    
     GENERIC_EXECUTE
    
    CREATOR OWNER:(OI)(CI)(IO)(ID)F
    
    
    3. Exploit:
    
    A successful attempt would require the local user to be able to insert their
    code in the system root path undetected by the OS or other security applications
    where it could potentially be executed during application startup or reboot.
    If successful, the local user's code would execute with the elevated privileges
    of the application.