Cross-source coverage
T1053.002 / ATT&CK
Scheduled Task/Job: At
19 rules across 5 sources.
From MITRE ATT&CK 19.2
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.
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.
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.
- Tactics
- Execution · Persistence · Privilege Escalation
- Platforms
- Windows · Linux · macOS
- Telemetry
-
WinEventLog:SecurityWinEventLog:Sysmonauditd:SYSCALLmacos:unifiedlogfs:fsusagemacos:osquery
How MITRE says to detect it DET0333
Cross-Platform Detection of Scheduled Task/Job Abuse via `at` Utility
Windows Analytic 0943
Detects creation of scheduled tasks via `at.exe` or WMI `Win32_ScheduledJob` class, followed by execution of anomalous processes by svchost.exe or taskeng.exe.
WinEventLog:SecurityEventCode=4698WinEventLog:SysmonEventCode=1
Linux Analytic 0944
Detects usage of `at` command to schedule jobs, followed by job execution and modification of job files under /var/spool/cron/atjobs.
auditd:SYSCALLexecveauditd:SYSCALLwrite
macOS Analytic 0945
Detects user or root invocation of `at` command to schedule a job, followed by job execution using LaunchServices and activity in /usr/lib/cron/at.
macos:unifiedlogprocess: at, job runnerfs:fsusagefile access to /usr/lib/cron/at and job execution pathmacos:osqueryprocess_events
SigmaHQ/sigma
8 rules| Detection | Severity | Format |
|---|---|---|
| Interactive AT Job | High | Sigma |
| Remote Schedule Task Lateral Movement via ATSvc | High | Sigma |
| Remote Schedule Task Lateral Movement via ITaskSchedulerService | High | Sigma |
| Remote Schedule Task Lateral Movement via SASec | High | Sigma |
| MITRE BZAR Indicators for Execution | Medium | Sigma |
| Remote Task Creation via ATSVC Named Pipe | Medium | Sigma |
| Remote Task Creation via ATSVC Named Pipe - Zeek | Medium | Sigma |
| Scheduled Task/Job At | Low | Sigma |
elastic/detection-rules
5 rules| Detection | Severity | Format |
|---|---|---|
| At Job Created or Modified | Medium | Elastic TOML |
| Pod or Container Creation with Suspicious Command-Line | Medium | Elastic TOML |
| Scheduled Tasks AT Command Enabled | Medium | Elastic TOML |
| Modification of Persistence Relevant Files Detected via Defend for Containers | Low | Elastic TOML |
| Potential Persistence via File Modification | Low | Elastic TOML |
splunk/security_content
4 rules| Detection | Severity | Format |
|---|---|---|
| Linux At Application Execution | Undefined | SPL |
| Linux Auditd At Application Execution | Undefined | SPL |
| Linux Possible Append Command To At Allow Config File | Undefined | SPL |
| Scheduled Task Creation on Remote Endpoint using At | Undefined | SPL |
elastic/protections-artifacts
1 rule| Detection | Severity | Format |
|---|---|---|
| At Job Creation or Modification via Shell Command | Undefined | Elastic TOML |
socfortress/Wazuh-Rules
1 rule| Detection | Severity | Format |
|---|---|---|
| Scheduled task execution by at daemon detected (atd) command = echo "echo Hello from Atomic Red Team" | at now + 1 minute | Medium | Wazuh XML |