Register to stream ATT&CKcon 2.0 October 29-30

Service Execution

Adversaries may execute a binary, command, or script via a method that interacts with Windows services, such as the Service Control Manager. This can be done by either creating a new service or modifying an existing service. This technique is the execution used in conjunction with New Service and Modify Existing Service during service persistence or privilege escalation.

ID: T1035
Tactic: Execution
Platform: Windows
Permissions Required: Administrator, SYSTEM
Data Sources: Windows Registry, Process monitoring, Process command-line parameters
Supports Remote:  Yes
Version: 1.0

Procedure Examples

Name Description
APT32 APT32's backdoor has used Windows services as a way to execute its malicious payload. [27]
BBSRAT BBSRAT can start, stop, or delete services. [19]
Cobalt Strike Cobalt Strike can use PsExec to execute a payload on a remote host. It can also use Service Control Manager to start new services. [5] [6]
Empire Empire can use PsExec to execute a payload on a remote host. [10]
FIN6 FIN6 has created Windows services to execute encoded PowerShell commands. [28]
Honeybee Honeybee launches a DLL file that gets executed as a service using svchost.exe [25]
HOPLIGHT HOPLIGHT has used svchost.exe to execute a malicious DLL . [23]
Hydraq Hydraq uses svchost.exe to execute a malicious DLL included in a new service group. [14]
HyperBro HyperBro has the ability to start and stop a specified service. [24]
Impacket Impacket contains various modules emulating other service execution tools such as PsExec. [9]
Ke3chang Ke3chang has used a tool known as RemoteExec (similar to PsExec) to remotely execute batch scripts and binaries. [26]
Koadic Koadic can run a command on another machine using PsExec. [2]
Net The net start and net stop commands can be used in Net to execute or stop Windows services. [1]
Net Crawler Net Crawler uses PsExec to perform remote service manipulation to execute a copy of itself as part of lateral movement. [17]
NotPetya NotPetya can use PsExec to help propagate itself across a network. [21] [22]
Olympic Destroyer Olympic Destroyer utilizes PsExec to help propagate itself across a network. [20]
PoshC2 PoshC2 contains an implementation of PsExec for remote execution. [11]
Proxysvc Proxysvc registers itself as a service on the victim’s machine to run as a standalone process. [13]
PsExec Microsoft Sysinternals PsExec is a popular administration tool that can be used to execute binaries on remote systems using a temporary Windows service. [8]
Pupy Pupy uses PsExec to execute a payload or commands on a remote host. [3]
RemoteCMD RemoteCMD can execute commands remotely by creating a new service on the remote system. [12]
Shamoon Shamoon creates a new service named “ntssrv” to execute the payload. [18]
Silence Silence has used Winexe to install a service on the remote system. [29]
Winexe Winexe installs a service on the remote system, executes the command, then uninstalls the service. [7]
Wingbird Wingbird uses services.exe to register a new autostart service named "Audit Service" using a copy of the local lsass.exe file. [15] [16]
xCmd xCmd can be used to execute binaries on remote systems by creating and starting a service. [4]


Mitigation Description
Privileged Account Management Ensure that permissions disallow services that run at a higher permissions level from being created or interacted with by a user with a lower permission level.
Restrict File and Directory Permissions Also ensure that high permission level service binaries cannot be replaced or modified by users with a lower permission level.


Changes to service Registry entries and command-line invocation of tools capable of modifying services that do not correlate with known software, patch cycles, etc., may be suspicious. If a service is used only to execute a binary or script and not to persist, then it will likely be changed back to its original form shortly after the service is restarted so the service is not left broken, as is the case with the common administrator tool PsExec.


  1. Microsoft. (2017, November 9). Backdoor:Win32/Wingbird.A!dha. Retrieved November 27, 2017.
  2. Cylance. (2014, December). Operation Cleaver. Retrieved September 14, 2017.
  3. Falcone, R.. (2016, November 30). Shamoon 2: Return of the Disttrack Wiper. Retrieved January 11, 2017.
  4. Lee, B. Grunzweig, J. (2015, December 22). BBSRAT Attacks Targeting Russian Organizations Linked to Roaming Tiger. Retrieved August 19, 2016.
  5. Mercer, W. and Rascagneres, P. (2018, February 12). Olympic Destroyer Takes Aim At Winter Olympics. Retrieved March 14, 2019.
  6. Chiu, A. (2016, June 27). New Ransomware Variant "Nyetya" Compromises Systems Worldwide. Retrieved March 26, 2019.
  7. US-CERT. (2017, July 1). Alert (TA17-181A): Petya Ransomware. Retrieved March 15, 2019.
  8. US-CERT. (2019, April 10). MAR-10135536-8 – North Korean Trojan: HOPLIGHT. Retrieved April 19, 2019.
  9. Falcone, R. and Lancaster, T.. (2019, May 28). Emissary Panda Attacks Middle East Government Sharepoint Servers. Retrieved July 9, 2019.
  10. Sherstobitoff, R. (2018, March 02). McAfee Uncovers Operation Honeybee, a Malicious Document Campaign Targeting Humanitarian Aid Groups. Retrieved May 16, 2018.
  11. Smallridge, R. (2018, March 10). APT15 is alive and strong: An analysis of RoyalCli and RoyalDNS. Retrieved April 4, 2018.
  12. Dumont, R. (2019, March 20). Fake or Fake: Keeping up with OceanLotus decoys. Retrieved April 1, 2019.
  13. McKeague, B. et al. (2019, April 5). Pick-Six: Intercepting a FIN6 Intrusion, an Actor Recently Tied to Ryuk and LockerGoga Ransomware. Retrieved April 17, 2019.
  14. GReAT. (2017, November 1). Silence – a new Trojan attacking financial organizations. Retrieved May 24, 2019.