How T1489 service stop disrupts systems before a SOC sees the impact
When a critical service stops unexpectedly, the SOC lead's first question is whether an adversary caused it. T1489 Service Stop is the ATT&CK technique that covers this case: an adversary stops or disables a service so that a system, application or business function stops working. It sits in the Impact tactic (TA0040), which ATT&CK describes as the adversary trying to manipulate, interrupt or destroy systems and data. This page targets Enterprise ATT&CK version 20.0, so detection mappings should be checked against that version before they are rolled out.
An adversary gains little from a quiet stop. Halting a database, a message queue, an authentication agent or a security sensor can interrupt operations, block recovery, or remove a control that would otherwise alert the team. In intrusions, service stops often appear late in the sequence, after access, discovery and staging are complete, and sometimes alongside data destruction or encryption techniques such as T1485 or T1486. Because the stop itself can look like an ordinary outage, the first triage step should be to compare the stop with the change calendar, the service owner's maintenance log and the account that issued the stop. Confirm with each service owner which services are allowed to stop, who may stop them, and how an authorized stop is recorded, since that baseline is what makes an unauthorized stop visible.
Decide before the next incident which evidence the team will pull first: the service manager's events for the stop, the process that issued it, the account and session context, and any recent file changes to the service definition. Ask the platform team to confirm that these sources reach the SIEM and retain long enough to cover a slow intrusion. Treat an unexplained stop of a security or recovery service as a suspected incident until the owner has ruled out an adversary, not as a routine outage.
Which telemetry reveals service stops on each platform
This table maps the telemetry sources that reveal T1489 Service Stop on ESXi, IaaS, Linux and macOS to the open-source collectors that can capture them. Read each row as a platform, then check the signal and collector against your own estate and the ATT&CK v20 bundle for that platform before writing rules.
| Platform | Signal to look for | Open-source collector and notes |
|---|---|---|
| ESXi | Stop or termination of management and host agents, hostd or vpxa style services, and changes to service state logged by the host | Forward ESXi syslog to a Wazuh or Security Onion pipeline. Confirm which service events the host version emits before writing rules. |
| IaaS (virtual machines) | Guest service stop events paired with cloud control plane actions that disable or halt workloads or monitoring agents | Wazuh agents on guests plus cloud audit logs shipped to a central SIEM. Confirm which control plane events your provider logs. |
| Linux | Process Creation and Process Termination events for systemd units or daemons, especially security and logging services, followed by service state changes | Wazuh agent (auditd and journald collection), Velociraptor for hunts across hosts. Confirm process termination coverage in your auditd rule set. |
| macOS | Launchd job unloads and termination of security or logging daemons, recorded through process and unified log events | Wazuh agent for macOS and Velociraptor artifacts. Confirm which unified log predicates your endpoint tooling exposes. |
| Process Creation (DC0032) | Creation of commands or processes that issue service stop operations, recorded with parent process and user context | Sigma-compatible rules applied in the SIEM. Confirm the DC0032 mapping for each platform in the v20 bundle. |
| File Deletion (DC0040) | Removal of service unit, configuration or init files that prevent a service from restarting | Wazuh file integrity monitoring and Velociraptor file hunts. Confirm the DC0040 mapping for each platform in the v20 bundle. |
| Process Termination and Command Execution (DC0064) | Termination events for protected services and command text that performs stop actions; referenced in ATT&CK detection strategies, so confirm availability per platform | Endpoint telemetry forwarded to Wazuh or Security Onion. Confirm in the v20 bundle whether Process Termination is a referenced data component for each platform before relying on it. |
Detection logic for service stop events on Linux, macOS and ESXi
T1489 Service Stop is hard to separate from routine operations, because stopping a service is a normal administrative act. The cards below describe detection ideas that combine who stopped a service, when, how many stopped together, and whether a change record explains it. Tune each idea in your own lab before it reaches production alerting.
Stop without a change record
Flag a service manager stop event on Linux, macOS or ESXi that is not preceded by a change ticket, a configuration deployment or an approved maintenance window. Correlate the stop with the account and session that issued it, using process creation and authentication telemetry. Ask the operations team to confirm which deployment tools and automation accounts legitimately stop services, and allowlist only those identities, with their hosts and time windows.
Bursts of stops across services
Alert when several unrelated services stop on one host within a short window, because an adversary disrupting availability tends to stop many services quickly. Set the window and the service count in the lab by replaying a normal patch cycle and a normal restart of one application stack. Treat a burst that spans database, web and monitoring services together as higher priority than a burst confined to one application.
Stops of security and logging agents
Treat any stop, disable or termination of an endpoint security agent, audit daemon, log forwarder or ESXi host agent as a high-priority event, even when it is isolated. Check that the stop is followed by a gap in expected telemetry from that host, since silence from a logging agent is itself a signal. Confirm with your security team which agents may be stopped for maintenance and which must never stop outside a change.
Deletion of unit and configuration files
Monitor file deletions of service unit files, init scripts and service configuration under the standard service directories, because removing these prevents a service from starting again. Pair the deletion with a preceding stop event on the same host and a missing corresponding change record. Verify in the lab that package upgrades and configuration management runs do not generate deletions in these paths, and document the exceptions.
False positives from patching and scaling
Expect benign stops from patching windows, autoscaling groups that terminate instances, and orchestrator-driven restarts that stop and start containers or services. Ask platform owners for their schedules and for the identities their orchestrators use, then suppress only those combinations rather than whole hosts. Review suppression rules after each patch cycle so that an unexpected stop during a maintenance window still produces an alert.
How to confirm the T1489 detection fires
This sequence turns the T1489 Service Stop detections into a tested control. A planned emulation in a lab or cyber range produces timestamped evidence that each expected alert fired, or a documented gap with tuning actions.
Agree scope and rules of engagement
The security engineering lead, the owner of the target platform and the change manager agree in writing which hosts, hypervisors and services are in scope, which collectors must be running, and who can halt the exercise. The rules of engagement also name the stop conditions, the contact for production impact and the location where evidence is stored. The step is complete when all named owners have signed the plan and the collector health checks for the range are confirmed green.
Select benign stand-in services
Choose stand-in services that exist only in the range, such as a dedicated test service on a Linux host, a lab service on a macOS test machine, or a non-production virtual machine on an ESXi test cluster. Each stand-in should have a documented owner, a known start and stop procedure, and no production dependency. Record the service names and host identifiers in the test plan so every later alert can be traced back to a specific object. The step is complete when the service inventory has been reviewed by the platform owner.
Confirm baseline logging and rule status
Before the change window, the detection engineer checks that the telemetry named in the detection strategy for T1489 is arriving in Wazuh, Security Onion or the chosen SIEM, including process creation, file deletion and process termination records where the platform provides them. The engineer also confirms the Sigma rules or Wazuh rules are loaded, enabled and at the version recorded in the test plan. The output is a short baseline record with the rule identifiers, the collector versions and a sample event count for each source.
Run the emulation in a change window
During an agreed change window, the red or purple team member runs the approved emulation steps against the stand-in services only, while a second engineer observes the console and can halt the exercise. The emulation follows the written plan without improvised actions. The step ends when the planned actions are complete or the stop condition has been triggered, and the start and end times are written into the exercise log.
Record time, host, service name and collector event
For each action, the observer records the UTC time, the host identifier, the stand-in service name and the collector event that should result. The log also notes the event source, such as the audit or process telemetry feed, so that the evidence can be reproduced later. A blank field is treated as a gap to resolve, not something to fill in afterward. The step is complete when the log has one row per action and the observer has signed it.
Check each alert against expected rules
The detection engineer searches the SIEM for each logged action and matches the result against the Sigma or Wazuh rule that should fire, confirming the rule identifier, the timestamp window and the host. Each action receives one of three outcomes: alert fired as expected, telemetry present but no alert, or telemetry missing. The outcomes are recorded in a results table that cites the rule version used. The step is complete when every row has an outcome and a reviewer has checked a sample against the raw events.
Document the pass or fail and tuning actions
The exercise owner writes a short report that states whether the detection passed for each platform in scope, lists every gap with its cause, and assigns tuning actions with owners and target dates set by the team. Tuning may include adjusting rule logic, adding a missing data source, or correcting host logging configuration, and each change is tracked through the normal change process. The report is complete when the results are filed with the test plan and the tuning items are in the backlog.
Retest after tuning and store evidence
After tuning changes are deployed, the team reruns the affected emulation steps in the range to confirm that the corrected detections fire as expected and that no new noise appears in the baseline. The retest uses the same plan and recording format so that before and after results can be compared. Evidence, including the exercise log, the results table and the retest output, is stored in the agreed location for later review by auditors or internal assurance teams. The step is complete when the retest results are signed off by the detection owner.
Why service stops are easy to mistake for normal operations
A service stop on its own is weak evidence of an attack. Patching windows, configuration changes, autoscaling events, failed deployments and routine restarts all stop services every day, often through the same service managers, the same hypervisor management interfaces and the same automation accounts that an adversary would use. An alert that fires on the stop alone will mostly describe maintenance, and analysts who learn to close those alerts quickly will close the one that matters too. Detection for T1489 Service stop should therefore treat the stop as the start of an investigation, not as its conclusion.
The useful question is whether the stop can be tied to an approved change and to a plausible reason. Correlate each stop event with the change record in your ticketing or change management system, the deployment pipeline run that touched the host or cluster, and the autoscaling or maintenance schedule for that workload. Then check the host state: was the service expected to stop, did it restart cleanly, and did the stop come from an identity that normally administers that system? Stops that cannot be matched to any of these sources, that come from an account with no recent administrative history on the host, or that occur outside the maintenance window deserve escalation. Confirm with the owning team which of your service managers, hypervisor interfaces and orchestration tools write stop events to your logs and with which fields, because the answer determines what correlation is possible.
Finally, the stop must be followed through to its effect. A stopped service that was expected to be down during a change should produce no outage in dependent services, no failed health checks that persist and no unexpected loss of data access. When a stop is followed by failed dependencies, degraded application responses or unexplained changes on the same host within a short period, the event moves from routine operations to a probable incident. Document this decision path in the runbook so that the first responder records the change match, the host state and the downstream impact for every escalated stop, and so that auditors can see the same logic applied consistently.
Mitigations for T1489: User Account Management and file permissions
T1489 Service Stop succeeds when an account can stop, disable or reconfigure a service it should not control. The two ATT&CK mitigations in this section, User Account Management (M1018) and Restrict File and Directory Permissions (M1022), reduce that exposure before anything is detected. Each card below is a control you can verify in your own estate, and each one should be confirmed against the v20 STIX bundle before you cite it in an audit file.
Least-privilege service control rights
Review which accounts can start, stop, restart or disable services on Linux hosts, including rights granted through sudo rules, polkit policies and group membership. Remove blanket service-management permissions from general operator and automation accounts, and grant narrow rights for named services only. Check that no routine account can stop a security agent or log forwarder. Record the approved owner for each service so that every stop has a clear accountable party.
Separation of ESXi administrative roles
On ESXi hosts, separate the roles that manage virtual machines from those that manage the host itself, and keep the root account out of day-to-day use. Stopping a hypervisor management service or shutting down guest workloads should require a role that is assigned deliberately and logged. Confirm which local accounts exist on each host, which directory groups map to administrative roles, and whether shared credentials remain in use. Any account that cannot be traced to a named person needs an owner or removal.
Protected service definition files
Service definitions on Linux, such as unit files and their overrides, control how a service starts, stops and restarts. Limit write access to these files and their directories to root or a dedicated configuration account, and restrict who can edit override directories. Use file integrity monitoring to alert on changes to these paths. A service that is stopped by changing its definition often looks like a normal configuration change unless the path is watched.
Ownership of unit and binary paths
Verify that the binaries a service executes, and the directories holding them, are owned by root and not writable by lower-privileged users. A writable executable path lets an account replace a service's binary so that the service stops or fails on its next start. Include ownership checks in your baseline configuration scans and document the expected owner and mode for each critical service. Confirm the exact permission model with your distribution's documentation.
Access reviews for service administrators
Run recurring reviews of the accounts and groups that hold service-management rights on Linux, ESXi and Windows-hosted platforms. Remove access for people who have changed roles or left, and check for accounts that were granted temporary rights and never revoked. Record each review and its outcome so that the evidence can be shown to an assessor. Ask your identity team to confirm how often reviews run and who signs off on them.
Triage and response when a service stop alert fires
When a service stop alert fires for T1489 Service stop, the first decision is whether the stop was authorized. Check the change calendar, the maintenance tickets and the on-call handover notes for the affected host or cluster before anything else. A stop that matches an approved change window can be closed with evidence attached, while an unexplained stop of a security control, a backup agent, a logging forwarder or a hypervisor management service should be treated as a live incident. Next, identify the account and session that issued the stop. On Linux, that means the user that ran the service manager command and the login source behind it. On ESXi, it means the vCenter or host account and the source address of the management session. Confirm whether the account was used for other activity in the same window, and whether it was recently created, elevated or changed. Record the exact time of the stop, because every later step depends on that timeline. Next, map the business impact before you restart anything. List the services that depend on the stopped unit, such as applications that fail when a database listener or message broker goes down, and note which ones are customer-facing or subject to recovery time commitments. Decide whether containment is needed. If the account is suspected, disable or lock it, revoke its active sessions and rotate any credentials it could reach. If the host is suspected, isolate it at the network layer while keeping it powered on, so volatile state survives. Before any restart, preserve evidence: collect service manager logs, journal entries, the relevant Wazuh alerts and Velociraptor artifacts for process and service state, and a copy of the unit files and configuration in their current form. Hash what you collect and record who collected it and when. Coordinate with the incident response owner from the first hour, and agree with them who approves the restore. Restore services from a known-good configuration, not by editing the current unit files in place. Compare the running configuration with the versioned source held in your configuration management system, and confirm the restore point is one that predates the suspected activity. Restart dependencies in the order your runbook defines, and check health at each step. Then close the loop: confirm which detections fired, whether the alert was actionable, and whether the account or host baseline needs adjustment. Ask your managed service provider or internal team to confirm, in writing, the evidence retention period in your Wazuh or Velociraptor deployment before you rely on it for an investigation.
Rehearsing T1489 detection in a private cyber range
Build the range with a nested or lab ESXi host (or a small cluster, if that matches production), a vCenter instance, and a sandbox IaaS account or project that mirrors the production tagging and logging setup. Forward hypervisor and control plane logs to the same Wazuh or Security Onion pipeline used for production so that the rehearsal tests the real ingestion path. Use only synthetic workloads and agreed test virtual machines.
- Planned service stops: Schedule a maintenance window inside the range that stops a management agent or a non-critical service on the host, using the change ticket reference you would use in production. Confirm that the alert carries the change identifier so the analyst can close it quickly.
- Simulated orchestrator restart: Restart the range's automation or configuration tool during a planned window and confirm that the expected stop-and-start sequence does not raise a high-severity alert.
- Unexpected stop of a monitored agent: Stop a logging or endpoint agent on a test virtual machine without a change record. Expect a host-silence or missing-telemetry alert, not only a process-level event.
- Good detection: A stop of a management or security service on the hypervisor or in the control plane generates an alert within the agreed window, with the host, account, and source address attached.
- Good response: The on-call engineer confirms or rejects the change, the account is reviewed, and any unexplained stop is escalated with a timeline. Ask the platform team to confirm the expected timing targets before the exercise begins, rather than assuming them.
Use a set of Linux and macOS test hosts enrolled in the same agent fleet as production, with a dedicated range network segment and a representative set of services such as a web tier, a database, and the monitoring agent. Ensure the test hosts ship process, service manager, and audit logs to the SIEM. Keep the test accounts separate from any production identity and record which accounts are authorized to manage services during the exercise.
- Planned service stops: Stop and start a scheduled non-critical service through the normal service manager during a change window, then verify the event carries the change reference and the operator account.
- Simulated orchestrator restart: Run the configuration management tool's restart routine on a group of hosts and confirm that the stop events are correlated with that job rather than raised as unrelated alerts.
- Unexpected stop of a monitored agent: Stop the logging agent on one host without a change record and confirm that the SIEM raises a silence alert for that host within the agreed window.
- Good detection: Detection rules fire on stops of security and logging services that are not part of an authorized change, and the alert includes the host, the user, and the parent process.
- Good response: Confirm that the analyst can pull the process tree and file integrity data for the host, decide whether the stop was authorized, and restore the agent. Record the time between the stop and the first analyst action, and agree the target with the operations team before the exercise.
The SOC view tests whether the people and handoffs work, not only the rules. Run the exercise with the analysts, platform engineers, and the change manager in their normal roles, using a written runbook and a shared case record. Inject alerts through the same queue used for production so that triage follows the real path, and brief the team on which injects are benign.
- Triage decision: Each alert should be classified as authorized maintenance, unexplained stop, or suspected impact within the runbook, with the classification recorded in the case.
- Change correlation: Analysts check the change calendar and the ticket reference before escalating. Test a case where the ticket is present but the scope does not match the stopped service.
- Escalation path: Test paging, the handoff to the incident commander, and the notice to the service owner. Confirm who may approve a service restart and who may isolate a host.
- Evidence preservation: Require the analyst to capture logs, the affected configuration, and the account activity before any restart, so the record can support later review.
- Metrics to agree: Define the time to triage, the time to escalate, and the time to restore in the exercise plan, using targets confirmed by the SOC and service owners rather than external figures.
After each run, review the case records and compare them with the runbook, and confirm that the detection, response, and handoff steps match what was agreed.
Practitioner questions about detecting service stops
How do I target ATT&CK v20 mappings for service stop detections?
Pin every detection to the ATT&CK version it was written against, and record that version in the rule metadata. Enterprise ATT&CK 20.0 is the version these pages use, and MITRE's release notes show that releases can rename, deprecate or revoke techniques, so a mapping that was correct in an earlier release may need review. Download the Enterprise bundle for the version you target from the attack-stix-data repository, which publishes one STIX 2.1 bundle per domain and version, and script a check that flags any technique ID in your rule set that no longer resolves. Re-run that check each time you adopt a new release, before you change any alert logic.
What should I do when T1489 has no sub-technique coverage for my platform?
Treat the technique-level detection as the baseline and document the gap explicitly rather than inventing sub-technique labels. Record which platforms your telemetry covers, such as Linux services managed by systemd, ESXi host services or cloud-hosted container workloads, and state which of those your current rules reach. Where a platform has no reliable data component in your stack, log it as a coverage gap with an owner and a review date. This gives auditors and engineers a traceable view of what is detected, what is partially detected and what is not yet visible.
How do I tune service stop alerts around planned patch windows?
Suppress by change context, not by host name alone. Feed your change calendar or configuration management run history into the SIEM as a lookup, and only suppress a service stop when it matches an approved change record, a known maintenance account and an expected service name. Keep suppressions time-bound and reviewed, so a stale exception does not hide a later stop. Alerts that fall outside the window should stay high priority. Review suppression hit counts after each patch cycle to confirm the logic still matches how your team actually works.
Which data components should I prioritize for T1489 telemetry?
Start with the data components that most directly show a service being stopped or removed from service. In the Enterprise ATT&CK 20.0 bundle, Process Creation (DC0032) and Command Execution (DC0064) are the components most often referenced across Impact techniques, and File Deletion (DC0040) is relevant where a service definition or unit file is removed. Confirm with your own platform owners which of these your endpoint agents, hypervisor logs and cloud audit trails actually emit, and at what fidelity. Missing command-line or parent process fields usually matter more than adding another log source.
How can I test service stop detections without disrupting production?
Run the tests in a private cyber range that mirrors your production logging pipeline, with the same agent versions, log formats and service inventory. DeployOpen builds and operates self-hosted ranges inside the client's own infrastructure, so the test traffic stays in the client's environment. Define the expected outcome for each test before you run it, including the alert name, severity and the responder action, and record the result. Use a dedicated test service that is safe to stop, and keep your rehearsals on a schedule so the detection is validated again after each change to rules or telemetry.
Can my team validate service stop detections without an outside partner?
Yes, if you have the telemetry, a range to test in and time to maintain the rules. Your team needs access to the relevant logs, a staging environment that reproduces your monitored platforms, and an owner for the rule lifecycle. Outside help is most useful for scoping the range, writing the test plan and running an independent validation, which DeployOpen offers as fixed-scope work agreed in writing before it starts. Ask any partner to show how they will keep detections aligned with new ATT&CK releases after the engagement ends.
Do service stop rules need a separate response playbook from data destruction?
Yes, a service stop often precedes destruction, but the first responder actions differ. A stopped service can be a legitimate maintenance action, a failed update or an attack step, so the playbook should first confirm the change context, then check whether dependent services and backups are still healthy. Link the service stop playbook to the sibling playbooks for data destruction and inhibited recovery, so an analyst who sees a chain of stops can escalate quickly. Document who can authorize isolating a host and how long a stopped service may remain down before escalation.
How DeployOpen builds and tests T1489 detections
DeployOpen starts every T1489 Service Stop detection engagement with a written scope that names the platforms in play, such as ESXi hosts, IaaS control planes, Linux servers and any macOS endpoints, and the telemetry the client can actually provide, such as process creation events, file deletion events and process termination records. The scope also states which service-stop paths matter most to the client, for example stops of hypervisor management services, backup agents or database daemons, because those are the stops that carry business impact. Agreeing these points in writing before work begins keeps the detection logic tied to the client's real estate rather than a generic rule pack. Confirm with your team which platforms and log sources are in production today and which are planned, since a detection cannot be tuned against telemetry that is not collected.
Each detection is mapped to the ATT&CK version named in the engagement, and the mapping records the technique, its detection strategy and analytics, and the data components it relies on, such as Process Creation (DC0032) and File Deletion (DC0040). Because ATT&CK releases can rename, deprecate or revoke content, the mapping file states the exact version it targets, so later upgrades show what changed. DeployOpen then exercises the detections in a private cyber range that mirrors the client's platforms. Purple team runs cover the mitigations the client has in place, including User Account Management (M1018) and Restrict File and Directory Permissions (M1022), so the team can see whether a blocked stop is also a detected stop. Scenarios are scripted against an agreed plan, and the expected alerts are recorded before each run, so gaps and false positives are measured rather than assumed.
DeployOpen hands the tuned rules to the client's security engineers with the test results, the scenario definitions, known gaps and the tuning decisions behind each threshold. Rules are delivered in the client's chosen format, which may be Sigma or the native format of the SIEM or Wazuh deployment, and the handover includes the steps to load and validate them in the client's environment. Ask in any proposal who owns the rules after handover, how re-testing is scheduled when ATT&CK or the client's platforms change, and what evidence will be delivered for internal or external audit review. DeployOpen prepares that evidence, but independent auditors and certification bodies decide whether it meets their requirements.
How we work on T1489 detection engagements
DeployOpen treats T1489 Service stop as a detection engagement inside your own environment, covering the platforms where service stops matter most to your operations. Work is fixed-scope, with deliverables and timelines agreed in writing before any build starts.
How we scope
- Confirm which platforms in your estate (Linux, macOS, ESXi, IaaS) are in scope for service stop detection
- Agree which service managers, hypervisor management interfaces and critical business services are monitored
- Record the ATT&CK version the detection mappings target, so later releases can be reviewed against it
How we build
- Configure telemetry collection for process creation, process termination and file deletion on in-scope hosts
- Write and tune detection rules in open formats such as Sigma, then translate them for your SIEM or Wazuh deployment
- Test rules against benign administrative stops and maintenance windows to reduce false positives before go-live
How we hand over
- Deliver a detection catalog mapping each rule to its data source, ATT&CK technique and mitigation references
- Document the validation steps, cyber range test results and known gaps in a runbook your team can repeat
- Walk your security operations and platform teams through alert triage and escalation for unexpected service stops
How we support
- Offer ongoing support, rule tuning and version reviews as a retainer after the fixed-scope engagement ends
- Re-run cyber range exercises when platforms, ATT&CK releases or service inventories change
- Provide written change notes so your audit and compliance readiness evidence stays current

