BITS Jobs T1197
Tactics: Stealth, Persistence, Execution
Adversaries may abuse BITS jobs to persistently execute code and perform various background tasks. Windows Background Intelligent Transfer Service (BITS) is a low-bandwidth, asynchronous file transfer mechanism exposed through Component Object Model (COM). BITS is commonly used by updaters, messengers, and other applications preferred to operate in the background (using available idle bandwidth) without interrupting other networked applications. File transfer tasks are implemented as BITS jobs, which contain a queue of one or more file operations.
Events covered
9 catalog events are tagged with this technique by at least one rule.
| Provider | Event | Title |
|---|---|---|
| Sysmon | Event ID 1 | Process creation |
| Sysmon | Event ID 7 | Image loaded |
| Security-Auditing | Event ID 4688 | A new process has been created. |
| Defender-DeviceProcessEvents | any | Process activity (any) |
| Bits-Client | Event ID 3 | The BITS service created a new job: jobTitle, with owner jobId. |
| Bits-Client | Event ID 16403 | task_016403 |
| PowerShell | Event ID 4103 | Payload Context: ContextInfo User Data: UserData. |
| PowerShell | Event ID 4104 | Creating Scriptblock text (MessageNumber of MessageTotal). |
| PowerShell | Event ID 800 | Event ID 800 |
Authoring guide
Patterns shared across the 35 rules above: which fields they filter on, what specific values they look for, and what they exclude. The catalog normalizes field names across vendors so Sigma's Image, Elastic's process.name, and Splunk's process_name collapse into one row. Each rule contributes at most once per row.
Fields filtered most (32 distinct)
The fields most rules look at when detecting this technique. The How column shows the operators authors use (eq, wildcard, regex_match, match) and how often each appears. Sample values are concrete examples to start from, not an exhaustive list.
Top indicator values (367 distinct)
Specific (field, operator, value) combinations the rules check for, ranked by how many rules under this technique use each one. The Corpus reach column counts how many rules across the entire catalog (any technique) check the same combination. High numbers point to widely-used indicators that are likely noisy on their own; combine them with another condition for useful signal. Blank means the combination is specific to rules under this technique. Click a value to expand the rules under this technique that use it.
Exclusions (87 distinct)
Field/operator/value combinations excluded by rules under this technique (top-level not() clauses), sorted by how many rules exclude each. These are the false-positive paths the community has learned to filter out. A new rule that ignores the high-count entries here will likely fire on the same noisy paths. Click a value to expand the rules under this technique that exclude it.
Rules under this technique
Every rule in the catalog tagged with this technique, grouped by vendor. Click a rule title for its full predicates, exclusions, and indicators.
Sigma 19 rules
- BITS Client BitsProxy DLL Loaded By Uncommon Process
- BITS payload downloaded via commandline
- BITS payload downloaded via PowerShell
- BITS Transfer Job Download From Direct IP
- BITS Transfer Job Download From File Sharing Domains
- BITS Transfer Job Download To Potential Suspicious Folder
- BITS Transfer Job Downloading File Potential Suspicious Extension
- BITS Transfer Job With Uncommon Or Suspicious Remote TLD
- Bitsadmin to Uncommon IP Server Address
- Bitsadmin to Uncommon TLD
- File Download Via Bitsadmin
- File Download Via Bitsadmin To A Suspicious Target Folder
- File with high volume downloaded via BITS
- File With Suspicious Extension Downloaded Via Bitsadmin
- Monitoring For Persistence Via BITS
- New BITS Job Created Via Bitsadmin
- New BITS Job Created Via PowerShell
- Suspicious Download From Direct IP Via Bitsadmin
- Suspicious Download From File-Sharing Website Via Bitsadmin
Elastic 4 rules
- Bitsadmin Activity
- Ingress Transfer via Windows BITS
- Persistence via BITS Job Notify Cmdline
- Unsigned BITS Service Client Process
Splunk 11 rules
- BITS Job Persistence
- BITSAdmin Download File
- BITSadmin Execution (PowerShell)
- BITSadmin Execution (Sysmon)
- BITSadmin Execution (Windows Event Log)
- BitsAdmin NetCat PowerCat File Transfer (EDR)
- BitsAdmin NetCat PowerCat File Transfer (Sysmon)
- BitsAdmin NetCat PowerCat File Transfer (Windows Event Log)
- Cisco NVM - Curl Execution With Insecure Flags
- Cisco NVM - Suspicious Download From File Sharing Website
- PowerShell Start-BitsTransfer