Create or Modify System Process: Windows Service
- ID
- T1543.003
- Tactics
- TA0003 Persistence, TA0004 Privilege Escalation
- Sub-technique of
- T1543 Create or Modify System Process
- Platforms
- Windows
- Data sources
- Service Creation, Process Creation, Windows Registry Key Modification, Driver Load
- Source
- attack.mitre.org
- MITRE last modified
- 12 May 2026
Adversaries may create or modify Windows services to repeatedly execute malicious payloads as part of persistence. When Windows boots up, it starts programs or applications called services that perform background system functions.[3] Windows service configuration information, including the file path to the service's executable or recovery programs/commands, is stored in the Windows Registry.
Adversaries may install a new service or modify an existing service to execute at startup in order to persist on a system. Service configurations can be set or modified using system utilities (such as sc.exe), by directly modifying the Registry, or by interacting directly with the Windows API.
Adversaries may also use services to install and execute malicious drivers. For example, after dropping a driver file (ex: .sys) to disk, the payload can be loaded and registered via Native API functions such as CreateServiceW() (or manually via functions such as ZwLoadDriver() and ZwSetValueKey()), by creating the required service Registry values (i.e. Modify Registry), or by using command-line utilities such as PnPUtil.exe.[4][5][6] Adversaries may leverage these drivers as Rootkits to hide the presence of malicious activity on a system. Adversaries may also load a signed yet vulnerable driver onto a compromised machine (known as "Bring Your Own Vulnerable Driver" (BYOVD)) as part of Exploitation for Privilege Escalation.[7][6]
Services may be created with administrator privileges but are executed under SYSTEM privileges, so an adversary may also use a service to escalate privileges. Adversaries may also directly start services through Service Execution.
To make detection analysis more challenging, malicious services may also incorporate Masquerade Task or Service (ex: using a service and/or payload name related to a legitimate OS or benign software component). Adversaries may also create ‘hidden’ services (i.e., Hide Artifacts), for example by using the sc sdset command to set service permissions via the Service Descriptor Definition Language (SDDL). This may hide a Windows service from the view of standard service enumeration methods such as Get-Service, sc query, and services.exe.[8][9]
Detection
- DET0552 Detection of Windows Service Creation or Modification
Data components: Service Creation, Process Creation, Windows Registry Key Modification, Driver Load
Mitigations (5)
- M1018 User Account Management
Limit privileges of user accounts and groups so that only authorized administrators can interact with service changes and service configurations.
- M1028 Operating System Configuration
Ensure that Driver Signature Enforcement is enabled to restrict unsigned drivers from being installed.
- M1040 Behavior Prevention on Endpoint
On Windows 10, enable Attack Surface Reduction (ASR) rules to prevent an application from writing a signed vulnerable driver to the system.[1] On Windows 10 and 11, enable Microsoft Vulnerable Driver Blocklist to assist in hardening against third party-developed service drivers.[2]
- M1045 Code Signing
Enforce registration and execution of only legitimately signed service drivers where possible.
- M1047 Audit
Use auditing tools capable of detecting privilege and service abuse opportunities on systems within an enterprise and correct them.
Groups (26)
- G0004 Ke3chang
- G0008 Carbanak
- G0022 APT3
- G0027 Threat Group-3390
- G0030 Lotus Blossom
- G0032 Lazarus Group
- G0046 FIN7
- G0049 OilRig
- G0050 APT32
- G0056 PROMETHIUM
- G0073 APT19
- G0080 Cobalt Group
- G0081 Tropic Trooper
- G0082 APT38
- G0094 Kimsuky
- G0096 APT41
- G0102 Wizard Spider
- G0105 DarkVishnya
- G0108 Blue Mockingbird
- G0139 TeamTNT
- G0143 Aquatic Panda
- G1006 Earth Lusca
- G1021 Cinnamon Tempest
- G1030 Agrius
- G1043 BlackByte
- G1051 Medusa Group
Software (110)
- S0004 TinyZBot
- S0012 PoisonIvy
- S0013 PlugX
- S0022 Uroburos
- S0024 Dyre
- S0029 PsExec
- S0032 gh0st RAT
- S0038 Duqu
- S0044 JHUHUGIT
- S0046 CozyCar
- S0050 CosmicDuke
- S0071 hcdLoader
- S0074 Sakula
- S0081 Elise
- S0082 Emissary
- S0086 ZLib
- S0089 BlackEnergy
- S0118 Nidiran
- S0127 BBSRAT
- S0140 Shamoon
- S0141 Winnti for Windows
- S0142 StreamEx
- S0149 MoonWind
- S0154 Cobalt Strike
- S0164 TDTESS
- S0169 RawPOS
- S0172 Reaver
- S0176 Wingbird
- S0180 Volgmer
- S0181 FALLCHILL
- S0182 FinFisher
- S0194 PowerSploit
- S0203 Hydraq
- S0204 Briba
- S0205 Naid
- S0206 Wiarp
- S0210 Nerex
- S0230 ZeroT
- S0236 Kwampirs
- S0239 Bankshot
- S0259 InnaputRAT
- S0260 InvisiMole
- S0261 Catchamas
- S0263 TYPEFRAME
- S0265 Kazuar
- S0266 TrickBot
- S0268 Bisonal
- S0332 Remcos
- S0335 Carbon
- S0342 GreyEnergy
- S0343 Exaramel for Windows
- S0345 Seasalt
- S0347 AuditCred
- S0350 zwShell
- S0356 KONNI
- S0363 Empire
- S0366 WannaCry
- S0367 Emotet
- S0386 Ursnif
- S0387 KeyBoy
Showing 60 of 110. Full list on attack.mitre.org.
References
- Malicious Driver Reporting Center
- Microsoft driver block rules
- TechNet Services
- Symantec W.32 Stuxnet Dossier
- Crowdstrike DriveSlayer February 2022
- Unit42 AcidBox June 2020
- ESET InvisiMole June 2020
- SANS 1
- SANS 2
