Electronic Arts Origin Client 9.5.5 Multiple Privilege Escalation Vulnerabilities

Vendor: Electronic Arts Inc.
Product web page: https://www.origin.com
Affected version: 9.5.5.2850 (353317)
                  9.5.3.636 (350385)
                  9.5.2.2829 (348065)

Summary: Origin (formerly EA Download Manager (EADM)) is digital distribution
software from Electronic Arts that allows users to purchase games on the internet
for PC and mobile platforms, and download them with the Origin client (formerly
EA Download Manager, EA Downloader and EA Link).

Desc#1: The application is vulnerable to an elevation of privileges vulnerability
which can be used by a simple user that can change the executable file with a
binary of choice. The vulnerability exist due to the improper permissions,
with the 'F' flag (full) for the 'Everyone' and 'Users' group, for the
'OriginClientService.exe' binary file, and for all the files in the 'Origin'
directory. The service is installed by default to start on system boot with
LocalSystem privileges. Attackers can replace the binary with their rootkit,
and on reboot they get SYSTEM privileges.

Desc#2: Origin client service also suffers from an unquoted search path issue
impacting the 'Origin Client Service' service for Windows deployed as part of
the Origin Thin Setup bundle. This could potentially allow an authorized but
non-privileged local user to execute arbitrary code with elevated privileges
on the system. 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.

Tested on: Microsoft Windows 7 Professional SP1 (EN)
           Microsoft Windows 7 Ultimate SP1 (EN)


Vulnerabilities discovered by Gjoko 'LiquidWorm' Krstic
                              @zeroscience


Advisory ID: ZSL-2015-5231
Advisory URL: http://www.zeroscience.mk/en/vulnerabilities/ZSL-2015-5231.php


14.12.2014



**************************************************************************
C:\>sc qc "Origin Client Service"
[SC] QueryServiceConfig SUCCESS

SERVICE_NAME: Origin Client Service
        TYPE               : 10  WIN32_OWN_PROCESS
        START_TYPE         : 3   DEMAND_START
        ERROR_CONTROL      : 1   NORMAL
        BINARY_PATH_NAME   : C:\Program Files (x86)\Origin\OriginClientService.exe  <-----< Unquoted path
        LOAD_ORDER_GROUP   :
        TAG                : 0
        DISPLAY_NAME       : Origin Client Service
        DEPENDENCIES       :
        SERVICE_START_NAME : LocalSystem

C:\>cacls "C:\Program Files (x86)\Origin\OriginClientService.exe"
c:\Program Files (x86)\Origin\OriginClientService.exe Everyone:(ID)F                <-----< Full control
                                                      BUILTIN\Users:(ID)F           <-----< Full control
                                                      NT AUTHORITY\SYSTEM:(ID)F
                                                      BUILTIN\Administrators:(ID)F


C:\>
**************************************************************************

**************************************************************************
C:\>cscript XCACLS.vbs "C:\Program Files (x86)\Origin\*.exe"
Microsoft (R) Windows Script Host Version 5.8
Copyright (C) Microsoft Corporation. All rights reserved.

Starting XCACLS.VBS (Version: 5.2) Script at 15.12.2014 19:46:41

Startup directory:
"C:\"

Arguments Used:
        Filename = "C:\Program Files (x86)\Origin\*.exe"



**************************************************************************
File: C:\Program Files (x86)\Origin\EAProxyInstaller.exe

Permissions:
Type     Username                Permissions           Inheritance

Allowed  \Everyone               Full Control          This Folder Only
Allowed  BUILTIN\Users           Full Control          This Folder Only
Allowed  NT AUTHORITY\SYSTEM     Full Control          This Folder Only
Allowed  BUILTIN\Administrators  Full Control          This Folder Only

No Auditing set

Owner: BUILTIN\Administrators
**************************************************************************

**************************************************************************
File: C:\Program Files (x86)\Origin\igoproxy64.exe

Permissions:
Type     Username                Permissions           Inheritance

Allowed  \Everyone               Full Control          This Folder Only
Allowed  BUILTIN\Users           Full Control          This Folder Only
Allowed  NT AUTHORITY\SYSTEM     Full Control          This Folder Only
Allowed  BUILTIN\Administrators  Full Control          This Folder Only

No Auditing set

Owner: BUILTIN\Administrators
**************************************************************************

**************************************************************************
File: C:\Program Files (x86)\Origin\Origin.exe

Permissions:
Type     Username                Permissions           Inheritance

Allowed  \Everyone               Full Control          This Folder Only
Allowed  BUILTIN\Users           Full Control          This Folder Only
Allowed  NT AUTHORITY\SYSTEM     Full Control          This Folder Only
Allowed  BUILTIN\Administrators  Full Control          This Folder Only

No Auditing set

Owner: BUILTIN\Administrators
**************************************************************************

**************************************************************************
File: C:\Program Files (x86)\Origin\OriginClientService.exe

Permissions:
Type     Username                Permissions           Inheritance

Allowed  \Everyone               Full Control          This Folder Only
Allowed  BUILTIN\Users           Full Control          This Folder Only
Allowed  NT AUTHORITY\SYSTEM     Full Control          This Folder Only
Allowed  BUILTIN\Administrators  Full Control          This Folder Only

No Auditing set

Owner: BUILTIN\Administrators
**************************************************************************

**************************************************************************
File: C:\Program Files (x86)\Origin\OriginCrashReporter.exe

Permissions:
Type     Username                Permissions           Inheritance

Allowed  \Everyone               Full Control          This Folder Only
Allowed  BUILTIN\Users           Full Control          This Folder Only
Allowed  NT AUTHORITY\SYSTEM     Full Control          This Folder Only
Allowed  BUILTIN\Administrators  Full Control          This Folder Only

No Auditing set

Owner: BUILTIN\Administrators
**************************************************************************

**************************************************************************
File: C:\Program Files (x86)\Origin\OriginER.exe

Permissions:
Type     Username                Permissions           Inheritance

Allowed  \Everyone               Full Control          This Folder Only
Allowed  BUILTIN\Users           Full Control          This Folder Only
Allowed  NT AUTHORITY\SYSTEM     Full Control          This Folder Only
Allowed  BUILTIN\Administrators  Full Control          This Folder Only

No Auditing set

Owner: BUILTIN\Administrators
**************************************************************************

**************************************************************************
File: C:\Program Files (x86)\Origin\OriginUninstall.exe

Permissions:
Type     Username                Permissions           Inheritance

Allowed  \Everyone               Full Control          This Folder Only
Allowed  BUILTIN\Users           Full Control          This Folder Only
Allowed  NT AUTHORITY\SYSTEM     Full Control          This Folder Only
Allowed  BUILTIN\Administrators  Full Control          This Folder Only

No Auditing set

Owner: BUILTIN\Administrators
**************************************************************************


Operation Complete
Elapsed Time: 0,1796875 seconds.

Ending Script at 15.12.2014 19:46:41



C:\>
**************************************************************************

--

**************************************************************************
Changed permissions and service binary path name (vendor fix):
--------------------------------------------------------------

C:\>sc qc "Origin Client Service"
[SC] QueryServiceConfig SUCCESS

SERVICE_NAME: Origin Client Service
        TYPE               : 10  WIN32_OWN_PROCESS
        START_TYPE         : 3   DEMAND_START
        ERROR_CONTROL      : 1   NORMAL
        BINARY_PATH_NAME   : "C:\Program Files (x86)\Origin\OriginClientService.exe"   <-----< Quoted path
        LOAD_ORDER_GROUP   :
        TAG                : 0
        DISPLAY_NAME       : Origin Client Service
        DEPENDENCIES       :
        SERVICE_START_NAME : LocalSystem

C:\>icacls "C:\Program Files (x86)\Origin\OriginClientService.exe"
C:\Program Files (x86)\Origin\OriginClientService.exe NT AUTHORITY\SYSTEM:(I)(F)
                                                      BUILTIN\Administrators:(I)(F)
                                                      BUILTIN\Users:(I)(RX)            <-----< Read and execute

Successfully processed 1 files; Failed processing 0 files

C:\>
**************************************************************************