T1053.002: At
Adversaries may abuse the at utility to perform task scheduling for initial or recurring execution of malicious code. The at utility exists as an executable within Windows, Linux, and macOS for scheduling tasks at a specified time and date. Although deprecated in favor of Scheduled Task's schtasks in Windows environments, using at requires that the Task Scheduler service be running, and the user to be logged on as a member of the local Administrators group. In addition to explicitly running the `at` command, adversaries may also schedule a task with at by directly leveraging the Windows Management Instrumentation `Win32_ScheduledJob` WMI class.[1]
On Linux and macOS, at may be invoked by the superuser as well as any users added to the at.allow file. If the at.allow file does not exist, the at.deny file is checked. Every username not listed in at.deny is allowed to invoke at. If the at.deny exists and is empty, global use of at is permitted. If neither file exists (which is often the baseline) only the superuser is allowed to use at.[2]
Adversaries may use at to execute programs at system startup or on a scheduled basis for Persistence. at can also be abused to conduct remote Execution as part of Lateral Movement and/or to run a process under the context of a specified account (such as SYSTEM).
In Linux environments, adversaries may also abuse at to break out of restricted environments by using a task to spawn an interactive system shell or to run system commands. Similarly, at may also be used for Privilege Escalation if the binary is allowed to run as superuser via sudo.[3]
Analyst context for executives and security teams
The `at` utility is a legitimate cross-platform scheduler that can become a quiet execution, persistence, or privilege-escalation path when abused. Its business significance is that malicious activity may look like routine administration: a job is scheduled to run later, potentially under an elevated account or through Windows WMI, making incident timelines and accountability harder if logging and account controls are weak.
Executive priority
Treat this as a resilience and audit-readiness issue, not just a command-line detection problem. Leaders should ask whether administrative scheduling is governed, logged, and reviewable across Windows, Linux, and macOS; whether privileged users can schedule jobs unnecessarily; and whether IR teams can quickly determine who created a job, what it launched, when it ran, and under which account context.
Technical view
Validate coverage for `at` abuse across execution, persistence, and privilege-escalation use cases on Windows, Linux, and macOS. On Windows, include both explicit `at` execution and task creation through the WMI `Win32_ScheduledJob` class, with attention to Task Scheduler service availability and administrator context. On Linux and macOS, review authorization behavior around `at.allow` and `at.deny`, and assess whether superuser or sudo-enabled use could create elevated scheduled execution. The related ATT&CK detection strategy DET0333 indicates cross-platform detection of scheduled task/job abuse via `at`, but the ATT&CK technique itself does not provide official detection text.
Likely telemetry
- Process creation and command-line telemetry for `at` and scheduled job execution
- Windows Task Scheduler service and scheduled task event logs where enabled
- WMI activity involving `Win32_ScheduledJob` on Windows
- Account context for job creation and execution, especially local Administrators, SYSTEM, root, and sudo-enabled users
- Linux/macOS file and configuration state for `at.allow` and `at.deny`
Detection direction
- Baseline legitimate administrative use of `at`; in many environments it should be rare, especially on Windows where it is deprecated in favor of scheduled tasks.
- Alert on unusual `at` invocation, newly created scheduled jobs, or jobs launching interpreters, shells, scripts, or unexpected binaries, while tuning for approved maintenance activity.
- Include WMI-based scheduled job creation in Windows logic so detections are not limited to direct command execution.
- Correlate scheduled job creation with privileged account use, remote administration, and subsequent process execution to separate benign scheduling from persistence or lateral execution patterns.
- Confirm scheduled task history retention and audit settings are sufficient; lack of historical logs is a material blind spot for IR and compliance evidence.
Mitigation priorities
- Apply user account management: restrict who can create scheduled jobs and remove unnecessary accounts from allowed scheduling paths.
- Apply privileged account management: limit administrator, SYSTEM-equivalent, root, and sudo-enabled scheduling rights to defined operational roles.
- Harden operating system configuration: disable or restrict unused scheduling functionality where business processes do not require it, and review `at.allow`/`at.deny` behavior on Linux and macOS.
- Enable and routinely review auditing for scheduled job creation, modification, and execution so investigations can prove account, time, and launched command context.
- Periodically review scheduled jobs and autorun-style persistence locations for unauthorized or unexplained entries.
Analyst notes and limits
This technique is a sub-technique of Scheduled Task/Job and is associated with execution, persistence, and privilege escalation. ATT&CK relationships show use by multiple groups and software entries, including the legitimate `at` utility, but those relationships should be used as context for threat modeling rather than as evidence of current activity in any specific environment.
MITRE does not provide an official detection section for this object. Detection and mitigation recommendations here are derived from the official description, external references, and supplied relationships; local operating system configuration, audit policy, endpoint telemetry, and administrative practices determine actual coverage.
At
Adversaries may abuse the at utility to perform task scheduling for initial or recurring execution of malicious code. The at utility exists as an executable within Windows, Linux, and macOS for scheduling tasks at a specified time and date. Although deprecated in favor of Scheduled Task's schtasks in Windows environments, using at requires that the Task Scheduler service be running, and the user to be logged on as a member of the local Administrators group. In addition to explicitly running the `at` command, adversaries may also schedule a task with at by directly leveraging the Windows Management Instrumentation `Win32_ScheduledJob` WMI class.[1]
On Linux and macOS, at may be invoked by the superuser as well as any users added to the at.allow file. If the at.allow file does not exist, the at.deny file is checked. Every username not listed in at.deny is allowed to invoke at. If the at.deny exists and is empty, global use of at is permitted. If neither file exists (which is often the baseline) only the superuser is allowed to use at.[2]
Adversaries may use at to execute programs at system startup or on a scheduled basis for Persistence. at can also be abused to conduct remote Execution as part of Lateral Movement and/or to run a process under the context of a specified account (such as SYSTEM).
In Linux environments, adversaries may also abuse at to break out of restricted environments by using a task to spawn an interactive system shell or to run system commands. Similarly, at may also be used for Privilege Escalation if the binary is allowed to run as superuser via sudo.[3]
How security teams should use this page
Treat this object as behavior context, not an attribution claim. Validate the related groups, software, data sources, and mitigations against official ATT&CK relationships and your own telemetry before making control-coverage decisions.
Related techniques
This mirrors the MITRE pattern of making group, software, campaign, and technique relationships scannable. Relationship notes come from mirrored ATT&CK relationship text when available.
| Domain | ID | Name | Relationship / procedure |
|---|---|---|---|
| Enterprise | T1053.001 | At (Linux) Sub-technique | At (Linux) revoked by this object. |
| Enterprise | T1053 | Scheduled Task/Job | This object subtechnique of Scheduled Task/Job. |
Groups, software, and campaigns
G0027: Threat Group-3390
Threat Group-3390 is a Chinese threat group that has extensively used strategic Web compromises to target victims.[1] The group has been active since at least 2010 and has targeted organizations in the aerospace, government, defense, technology, energy, manufacturing and gambling/betting sectors.[2][3][4]
G0026: APT18
G0060: BRONZE BUTLER
BRONZE BUTLER is a cyber espionage group with likely Chinese origins that has been active since at least 2008. The group primarily targets Japanese organizations, particularly those in government, biotechnology, electronics manufacturing, and industrial chemistry.[1][2][3]
S0488: CrackMapExec
CrackMapExec, or CME, is a post-exploitation tool developed in Python and designed for penetration testing against networks. CrackMapExec collects Active Directory information to conduct lateral movement through targeted networks.[1]
S0233: MURKYTOP
S0110: at
All related ATT&CK context
Mitigation direction
Object version and sync metadata
The fields below describe the current mirrored snapshot. When Glexia retains multiple ATT&CK source imports, you can open the table to compare the same object across releases (hashes and MITRE timestamps). For MITRE’s own release notes and roadmap, see ATT&CK resources — Updates .
Imported snapshots across ATT&CK releases (1)
| Release | Bundle imported | Object version | Modified | Status | Raw hash |
|---|---|---|---|---|---|
| 19.1 | 2.4 | Current bundle | b23c82a42286… |
Mirrored ATT&CK source object
The raw object is retained through the mirrored ATT&CK source bundle and object hash. The raw endpoint returns the exact object from the mirrored bundle when available.
External references and citations
MITRE external references are preserved separately from Glexia analysis so citations remain traceable to their original source records.
-
[1]
Malicious Life by Cybereason
Philip Tsukerman. (n.d.). No Win32 Process Needed | Expanding the WMI Lateral Movement Arsenal. Retrieved June 19, 2024.
Open source URL -
[2]
Linux at
IEEE/The Open Group. (2017). at(1p) — Linux manual page. Retrieved February 25, 2022.
Open source URL -
[3]
GTFObins at
Emilio Pinna, Andrea Cardaci. (n.d.). gtfobins at. Retrieved September 28, 2021.
Open source URL -
[4]
Microsoft Scheduled Task Events Win10
Microsoft. (2017, May 28). Audit Other Object Access Events. Retrieved June 27, 2019.
Open source URL -
[5]
TechNet Autoruns
Russinovich, M. (2016, January 4). Autoruns for Windows v13.51. Retrieved June 6, 2016.
Open source URL -
[6]
TechNet Forum Scheduled Task Operational Setting
Satyajit321. (2015, November 3). Scheduled Tasks History Retention settings. Retrieved December 12, 2017.
Open source URL -
[7]
TechNet Scheduled Task Events
Microsoft. (n.d.). General Task Registration. Retrieved December 12, 2017.
Open source URL -
[8]
Twitter Leoloobeek Scheduled Task
Loobeek, L. (2017, December 8). leoloobeek Status. Retrieved September 12, 2024.
Open source URL -
[9]
mitre-attack T1053.002Open source URL
-
[10]
rowland linux at 2019
Craig Rowland. (2019, July 25). Getting an Attacker IP Address from a Malicious Linux At Job. Retrieved October 15, 2021.
Open source URL
Source: MITRE ATT&CK®. © 2026 The MITRE Corporation. This work is reproduced and distributed with the permission of The MITRE Corporation. MITRE ATT&CK and ATT&CK are registered trademarks of The MITRE Corporation. Glexia is not affiliated with or endorsed by MITRE.