Live Active security incident? Get immediate response
MITRE ATT&CK® Technique

T1055.004: Asynchronous Procedure Call

Adversaries may inject malicious code into processes via the asynchronous procedure call (APC) queue in order to evade process-based defenses as well as possibly elevate privileges. APC injection is a method of executing arbitrary code in the address space of a separate live process.

APC injection is commonly performed by attaching malicious code to the APC Queue [1] of a process's thread. Queued APC functions are executed when the thread enters an alterable state.[1] A handle to an existing victim process is first created with native Windows API calls such as OpenThread. At this point QueueUserAPC can be used to invoke a function (such as LoadLibrayA pointing to a malicious DLL).

A variation of APC injection, dubbed "Early Bird injection", involves creating a suspended process in which malicious code can be written and executed before the process' entry point (and potentially subsequent anti-malware hooks) via an APC. [2] AtomBombing [3] is another variation that utilizes APCs to invoke malicious code previously written to the global atom table.[4]

Running code in the context of another process may allow access to the process's memory, system/network resources, and possibly elevated privileges. Execution via APC injection may also evade detection from security products since the execution is masked under a legitimate process.

EnterpriseT1055.004Sub-techniqueObject v2.0 Modified
Glexia's Take

Analyst context for executives and security teams

Analyst confidence Medium

APC injection matters because malicious code can run inside another legitimate Windows process, which can make business-critical endpoint monitoring and incident scoping harder. The risk is not just malware execution; it is loss of confidence in which process actually performed an action, especially during privilege escalation or stealthy post-compromise activity.

Executive priority

Prioritize this as a Windows endpoint resilience and SOC visibility issue. Leaders should ask whether endpoint controls can observe and block suspicious process behavior rather than relying only on process names or known signatures. It is especially relevant where audit evidence, payment systems, financial data, or regulated workstations depend on proving what executed and under which process context.

Technical view

This is a Windows sub-technique of Process Injection mapped to stealth and privilege-escalation. ATT&CK describes use of APC queues, including API-level activity such as OpenThread and QueueUserAPC, DLL loading through functions such as LoadLibraryA, Early Bird injection involving suspended processes, and AtomBombing involving the global atom table. SOC and IR teams should validate coverage against behavioral patterns of remote thread queuing and code execution under a separate live process, using the related DET0100 detection strategy as context.

Likely telemetry

  • Windows endpoint process and thread activity, including cross-process thread handle access
  • API-level telemetry for APC-related behavior such as OpenThread and QueueUserAPC where available
  • Process creation telemetry, especially suspended-process creation relevant to Early Bird-style behavior
  • Module or DLL load events associated with unexpected process contexts
  • Memory and code execution context signals showing activity occurring inside another live process

Detection direction

  • Validate that detections do not depend only on suspicious process names; the technique is material because execution may appear under a legitimate process.
  • Map analytics to the related DET0100 concept: behavioral detection of APC injection via remote thread queuing.
  • Tune for combinations of cross-process thread access, APC queueing, unexpected DLL load or code execution, and suspended-process patterns rather than any single API name alone.
  • Review false positives from legitimate software that uses advanced threading, injection-like behavior, or endpoint instrumentation so alerts remain actionable.
  • During incident response, treat the apparent host process as potentially only the execution container; scope the initiating process, thread activity, loaded modules, and timeline around the injection event.

Mitigation priorities

  • Use behavior prevention on endpoint, as mapped by ATT&CK M1040, to block suspicious process, file, API call, and endpoint activity patterns.
  • Prioritize endpoint controls that analyze behavior in real time rather than relying solely on known signatures.
  • Harden SOC playbooks to investigate process injection as a privilege-escalation and stealth behavior, not just as a malware-family indicator.
  • Validate control coverage on Windows systems that handle sensitive data or operationally critical workflows before using coverage claims for compliance or risk reporting.
  • Keep response procedures ready to isolate affected endpoints and preserve process, thread, module, and endpoint event evidence.
Analyst notes and limits

ATT&CK relationships show this technique is used by FIN8 and multiple software entries including TURNEDUP, InvisiMole, Attor, IcedID, Carberp, Pillowmint, Saint Bot, Bumblebee, BADHATCH, Sardonic, XLoader, and HeartCrypt. This supports prioritizing detection engineering and threat intelligence enrichment, but it should not be read as evidence of current activity in any specific environment.

MITRE does not provide an official detection section for this object. The guidance above is derived from the official description, external references, and supplied relationships, especially DET0100 and M1040. Local endpoint telemetry, product capabilities, and normal software behavior are required to determine actual detection or prevention coverage.

Official MITRE ATT&CK definition

Asynchronous Procedure Call

Adversaries may inject malicious code into processes via the asynchronous procedure call (APC) queue in order to evade process-based defenses as well as possibly elevate privileges. APC injection is a method of executing arbitrary code in the address space of a separate live process.

APC injection is commonly performed by attaching malicious code to the APC Queue [1] of a process's thread. Queued APC functions are executed when the thread enters an alterable state.[1] A handle to an existing victim process is first created with native Windows API calls such as OpenThread. At this point QueueUserAPC can be used to invoke a function (such as LoadLibrayA pointing to a malicious DLL).

A variation of APC injection, dubbed "Early Bird injection", involves creating a suspended process in which malicious code can be written and executed before the process' entry point (and potentially subsequent anti-malware hooks) via an APC. [2] AtomBombing [3] is another variation that utilizes APCs to invoke malicious code previously written to the global atom table.[4]

Running code in the context of another process may allow access to the process's memory, system/network resources, and possibly elevated privileges. Execution via APC injection may also evade detection from security products since the execution is masked under a legitimate process.

View the same entry on attack.mitre.org (MITRE-hosted reference; in-page links above use the Glexia ATT&CK library.)

Glexia analysis

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.

ATT&CK relationship table

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.

1 rows
Domain ID Name Relationship / procedure
Enterprise T1055 Process Injection This object subtechnique of Process Injection.
Associated objects

Groups, software, and campaigns

Group Enterprise

G0061: FIN8

FIN8 is a financially motivated threat group that has been active since at least January 2016, and known for targeting organizations in the hospitality, retail, entertainment, insurance, technology, chemical, and financial sectors. In June 2021, security researchers detected FIN8 switching from targeting point-of-sale (POS) devices to distributing a number of ransomware variants.[1][2][3][4]

Malware Enterprise

S9018: HeartCrypt

HeartCrypt is a packer-as-a-service (PaaS) used to protect malware that has been available since at least 2024. HeartCrypt has been used to pack a variety of malware including Lumma Stealer, Remcos, and Rhadamanthys. In the HeartCrypt PaaS model, customers submit malware via private messaging services and it is then packed and returned by the operator as a new binary.[1]

LinuxWindows
Malware Enterprise

S0260: InvisiMole

InvisiMole is a modular spyware program that has been used by the InvisiMole Group since at least 2013. InvisiMole has two backdoor modules called RC2FM and RC2CL that are used to perform post-exploitation activities. It has been discovered on compromised victims in the Ukraine and Russia. Gamaredon Group infrastructure has been used to download and execute InvisiMole against a small number of victims.[1][2]

Windows
Malware Enterprise

S1039: Bumblebee

Bumblebee is a custom loader written in C++ that has been used by multiple threat actors, including possible initial access brokers, to download and execute additional payloads since at least March 2022. Bumblebee has been linked to ransomware operations including Conti, Quantum, and Mountlocker and derived its name from the appearance of "bumblebee" in the user-agent.[1][2][3]

Windows
Malware Enterprise

S0484: Carberp

Carberp is a credential and information stealing malware that has been active since at least 2009. Carberp's source code was leaked online in 2013, and subsequently used as the foundation for the Carbanak backdoor.[1][2][3]

Windows
Malware Enterprise

S0483: IcedID

IcedID is a modular banking malware designed to steal financial information that has been observed in the wild since at least 2017. IcedID has been downloaded by Emotet in multiple campaigns.[1][2]

Windows
Malware Enterprise

S1207: XLoader

XLoader is an infostealer malware in use since at least 2016. Previously known and sometimes still referred to as Formbook, XLoader is a Malware as a Service (MaaS) known for stealing data from web browsers, email clients and File Transfer Protocol (FTP) applications.[1][2][3][4][5]

Windows
Malware Enterprise

S1081: BADHATCH

BADHATCH is a backdoor that has been utilized by FIN8 since at least 2019. BADHATCH has been used to target the insurance, retail, technology, and chemical industries in the United States, Canada, South Africa, Panama, and Italy.[1][2]

Windows
Malware Enterprise

S0438: Attor

Attor is a Windows-based espionage platform that has been seen in use since 2013. Attor has a loadable plugin architecture to customize functionality for specific targets.[1]

Windows
Malware Enterprise

S1085: Sardonic

Sardonic is a backdoor written in C and C++ that is known to be used by FIN8, as early as August 2021 to target a financial institution in the United States. Sardonic has a plugin system that can load specially made DLLs and execute their functions.[1][2]

Windows
Relationship explorer

All related ATT&CK context

Mitigations

Mitigation direction

Change history

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 .

ATT&CK release
19.1
Object version
2.0
Created
Modified
Raw hash
281bc96a4612d1a1...
Imported snapshots across ATT&CK releases (1)
Release Bundle imported Object version Modified Status Raw hash
19.1 2.0 Current bundle 281bc96a4612…
Raw source

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.

Source references

External references and citations

MITRE external references are preserved separately from Glexia analysis so citations remain traceable to their original source records.

  1. [1]
    Microsoft APC

    Microsoft. (n.d.). Asynchronous Procedure Calls. Retrieved December 8, 2017.

    Open source URL
  2. [2]
    CyberBit Early Bird Apr 2018

    Gavriel, H. & Erbesfeld, B. (2018, April 11). New ‘Early Bird’ Code Injection Technique Discovered. Retrieved May 24, 2018.

    Open source URL
  3. [3]
    ENSIL AtomBombing Oct 2016

    Liberman, T. (2016, October 27). ATOMBOMBING: BRAND NEW CODE INJECTION FOR WINDOWS. Retrieved December 8, 2017.

    Open source URL
  4. [4]
    Microsoft Atom Table

    Microsoft. (n.d.). About Atom Tables. Retrieved December 8, 2017.

    Open source URL
  5. [5]
    mitre-attack T1055.004
    Open source URL
Source and licensing

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.