T1027.007: Dynamic API Resolution
Adversaries may obfuscate then dynamically resolve API functions called by their malware in order to conceal malicious functionalities and impair defensive analysis. Malware commonly uses various Native API functions provided by the OS to perform various tasks such as those involving processes, files, and other system artifacts.
API functions called by malware may leave static artifacts such as strings in payload files. Defensive analysts may also uncover which functions a binary file may execute via an import address table (IAT) or other structures that help dynamically link calling code to the shared modules that provide functions.[1][2]
To avoid static or other defensive analysis, adversaries may use dynamic API resolution to conceal malware characteristics and functionalities. Similar to Software Packing, dynamic API resolution may change file signatures and obfuscate malicious API function calls until they are resolved and invoked during runtime.
Various methods may be used to obfuscate malware calls to API functions. For example, hashes of function names are commonly stored in malware in lieu of literal strings. Malware can use these hashes (or other identifiers) to manually reproduce the linking and loading process using functions such as `GetProcAddress()` and `LoadLibrary()`. These hashes/identifiers can also be further obfuscated using encryption or other string manipulation tricks (requiring various forms of Deobfuscate/Decode Files or Information during execution).[3][4][1]
Analyst context for executives and security teams
Dynamic API Resolution is a Windows malware obfuscation behavior where malicious code hides the operating system functions it intends to call until runtime. For leaders, the practical issue is that file-based review, simple string matching, or import-table inspection may understate what a payload can do. This matters for incident response and SOC readiness because the decisive evidence often appears during execution, not just in the file at rest.
Executive priority
Prioritize this as a defense-evasion and analysis-readiness problem rather than a standalone business impact. Teams should be able to answer: do we rely too heavily on static malware indicators, do our endpoint and malware-analysis workflows capture runtime API resolution, and can analysts explain suspicious Windows payload behavior when imports and strings are intentionally missing or hashed? The number of ATT&CK relationships to groups and malware families makes this useful for threat-intelligence mapping and detection validation, but it should not be treated as proof of local exposure without environment evidence.
Technical view
ATT&CK identifies this as sub-technique T1027.007 under Obfuscated Files or Information, on Windows, with the stealth tactic. The behavior centers on concealing API function calls through methods such as hashed function names, encrypted or manipulated identifiers, and runtime resolution using functions such as GetProcAddress() and LoadLibrary(). SOC, reverse-engineering, and IR teams should validate that suspicious binaries are not assessed only by visible strings or import address table contents. The related detection strategy DET0091 specifically points toward detecting dynamic API resolution via hash-based function lookups, so detection engineering should focus on runtime function-resolution patterns and repeated lookup logic rather than only static signatures.
Likely telemetry
- Windows endpoint process execution telemetry for suspicious payloads and child processes
- Module or library load evidence, especially runtime loading behavior consistent with LoadLibrary() usage
- API-call or EDR behavioral telemetry showing GetProcAddress(), LoadLibrary(), or comparable runtime resolution activity
- Static analysis artifacts such as import address tables, embedded strings, and absence or obfuscation of expected imports
- Memory or sandbox execution traces showing APIs resolved and invoked during runtime
Detection direction
- Do not depend solely on static strings, file signatures, or import-table inspection; this technique is designed to reduce the value of those signals.
- Validate DET0091-style logic for hash-based function lookups in malware analysis and endpoint telemetry where available.
- Correlate dynamic API resolution with other suspicious behaviors after resolution, such as process, file, and system-artifact interaction, rather than alerting on API resolution alone.
- Tune for false positives because legitimate software can dynamically load libraries and resolve functions; suspiciousness should increase when resolution is paired with obfuscated identifiers, hashing loops, packed or obfuscated files, or other T1027 behaviors.
- Use relationship context for hunting and enrichment: ATT&CK links this behavior to Windows malware such as PlugX, Pteranodon, Bazar, Brute Ratel C4, Raccoon Stealer, Latrodectus, and multiple Mustang Panda-associated tools, but local detections should still be behavior-based.
Mitigation priorities
- Treat this as an analysis-evasion gap: improve runtime malware-analysis capability before relying on static triage conclusions.
- Ensure endpoint controls and SOC workflows preserve enough process, module-load, and behavioral telemetry to reconstruct resolved functionality during investigations.
- Layer detections with broader Obfuscated Files or Information coverage and downstream behavior monitoring, because preventing dynamic API resolution itself is not presented by ATT&CK as a standalone mitigation in the supplied object.
- Use threat-intelligence relationships to prioritize validation against Windows malware and tools mapped to this technique, especially where those families align to the organization’s sector or threat model.
- Document coverage and known blind spots for audit and incident-readiness evidence, including whether dynamic analysis, memory inspection, or EDR behavioral traces are available.
Analyst notes and limits
The supplied ATT&CK object has no official detection text, so the strongest detection lead comes from the related DET0091 strategy for hash-based function lookups and from the technique description. ATT&CK relationships include use by Lazarus Group, Kimsuky, Mustang Panda, and numerous Windows malware or tooling entries, but those relationships should be used for enrichment and prioritization, not attribution by themselves.
This take is limited to the supplied ATT&CK fields, references, and relationships. No official mitigations or detection procedure text was provided, and the object only lists Windows as the platform. Local telemetry availability, endpoint sensor depth, malware-analysis tooling, and environment-specific baselines are required to assess actual coverage.
Dynamic API Resolution
Adversaries may obfuscate then dynamically resolve API functions called by their malware in order to conceal malicious functionalities and impair defensive analysis. Malware commonly uses various Native API functions provided by the OS to perform various tasks such as those involving processes, files, and other system artifacts.
API functions called by malware may leave static artifacts such as strings in payload files. Defensive analysts may also uncover which functions a binary file may execute via an import address table (IAT) or other structures that help dynamically link calling code to the shared modules that provide functions.[1][2]
To avoid static or other defensive analysis, adversaries may use dynamic API resolution to conceal malware characteristics and functionalities. Similar to Software Packing, dynamic API resolution may change file signatures and obfuscate malicious API function calls until they are resolved and invoked during runtime.
Various methods may be used to obfuscate malware calls to API functions. For example, hashes of function names are commonly stored in malware in lieu of literal strings. Malware can use these hashes (or other identifiers) to manually reproduce the linking and loading process using functions such as `GetProcAddress()` and `LoadLibrary()`. These hashes/identifiers can also be further obfuscated using encryption or other string manipulation tricks (requiring various forms of Deobfuscate/Decode Files or Information during execution).[3][4][1]
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 | T1027 | Obfuscated Files or Information | This object subtechnique of Obfuscated Files or Information. |
Groups, software, and campaigns
G0129: Mustang Panda
Mustang Panda is a China-based cyber espionage threat actor that has been conducting operations since at least 2012. Mustang Panda has been known to use tailored phishing lures and decoy documents to deliver malicious payloads. Mustang Panda has targeted government, diplomatic, and non-governmental organizations, including think tanks, religious institutions, and research entities, across the United States, Europe, and Asia, with notable activity in Russia, Mongolia, Myanmar, Pakistan, and Vietnam. [1][2][3][4][5][6][7][8][9][10][11][12][13]
G0094: Kimsuky
Kimsuky is a Democratic People's Republic of Korea (DPRK)-based cyber espionage group that has been active since at least 2012. The group initially targeted South Korean government agencies, think tanks, and subject-matter experts in various fields. Its operations expanded to include the United Nations and organizations in the government, education, business services, and manufacturing sectors across the United States, Japan, Russia, and Europe. Kimsuky has focused collection on foreign policy and national security issues tied to the Korean Peninsula, nuclear policy, and sanctions. Kimsuky operations have overlapped with those of other North Korean state-sponsored cyber espionage actors as a result of ad hoc collaborations or other limited resource sharing.[1][2][3][4][5][6]
Kimsuky was assessed to be responsible for the 2014 Korea Hydro & Nuclear Power Co. compromise; other notable campaigns include Operation STOLEN PENCIL (2018), Operation Kabar Cobra (2019), and Operation Smoke Screen (2019).[7][8][9] In 2023, Kimsuky was observed using commercial large language models (LLMs) to assist with vulnerability research, scripting, social engineering and reconnaissance.[10]
DPRK threat actor cluster boundaries overlap in open source reporting, with some security researchers consolidating all attributed North Korean state-sponsored cyber activity under Lazarus Group, rather than tracking operationally distinct subgroups.
G0032: Lazarus Group
Lazarus Group is a North Korean state-sponsored cyber threat group attributed to the Reconnaissance General Bureau (RGB). [1] [2] Lazarus Group has been active since at least 2009 and is reportedly responsible for the November 2014 destructive wiper attack on Sony Pictures Entertainment, identified by Novetta as part of Operation Blockbuster. Malware used by Lazarus Group correlates to other reported campaigns, including Operation Flame, Operation 1Mission, Operation Troy, DarkSeoul, and Ten Days of Rain.[3]
North Korea’s cyber operations have shown a consistent pattern of adaptation, forming and reorganizing units as national priorities shift. These units frequently share personnel, infrastructure, malware, and tradecraft, making it difficult to attribute specific operations with high confidence. Public reporting often uses “Lazarus Group” as an umbrella term for multiple North Korean cyber operators conducting espionage, destructive attacks, and financially motivated campaigns.[4][5][6]
S1232: SplatDropper
SplatDropper is a loader that utilizes native windows API to deliver its payload to the victim environment. SplatDropper has been delivered through RAR archives and used legitimate executable for DLL side-loading. SplatDropper is known to be leveraged by Mustang Panda and was first observed utilized in 2025.
S1239: TONESHELL
S1160: Latrodectus
Latrodectus is a Windows malware downloader that has been used since at least 2023 to download and execute additional payloads and modules. Latrodectus has most often been distributed through email campaigns, primarily by TA577 and TA578, and has infrastructure overlaps with historic IcedID operations.[1][2][3]
S1237: CANONSTAGER
CANONSTAGER is a loader known to be leveraged by Mustang Panda and was first observed utilized in 2025. Mustang Panda utilizes DLL side-loading to execute within the victim environment prior to delivering a follow-on malicious encrypted payload. CANONSTAGER leverages Thread Local Storage (TLS) and Native Windows APIs within the victim environment to elude detections. CANONSTAGER also hides its code utilizing window procedures and message queues.[1]
S0534: Bazar
Bazar is a downloader and backdoor that has been used since at least April 2020, with infections primarily against professional services, healthcare, manufacturing, IT, logistics and travel companies across the US and Europe. Bazar reportedly has ties to TrickBot campaigns and can be used to deploy additional malware, including ransomware, and to steal sensitive data.[1]
S9036: LP-Notes
LP-Notes is a C/C++ Windows credential stealer used by MuddyWater. LP-Notes was named after the `lp-notes.txt` file that is used to store stolen credentials.[1]
S9007: HTTPTroy
HTTPTroy is a highly obfuscated backdoor that facilitates collection, command and control, defense evasion and exfiltration. HTTPTroy was first reported in October 2025. HTTPTroy has been observed in operations attributed to DPRK-affiliated threat actors, including Kimsuky. HTTPTroy has been delivered to victims through a separate loader leveraged by Kimsuky.[1]
S9023: HiddenFace
HiddenFace is a modular backdoor developed and used exclusively by MirrorFace since at least 2021. HiddenFace can communicate both actively and passively and has been used against political and academic targets.[1][2][3]
S9020: LODEINFO
LODEINFO is a fileless backdoor malware first identified in 2020 that has been used by actors including MirrorFace, primarily against media, diplomatic, governmental, and public sector organizations in Japan.[1][2][3]
S1053: AvosLocker
AvosLocker is ransomware written in C++ that has been offered via the Ransomware-as-a-Service (RaaS) model. It was first observed in June 2021 and has been used against financial services, critical manufacturing, government facilities, and other critical infrastructure sectors in the United States. As of March 2022, AvosLocker had also been used against organizations in Belgium, Canada, China, Germany, Saudi Arabia, Spain, Syria, Taiwan, Turkey, the United Arab Emirates, and the United Kingdom.[1][2][3]
S1148: Raccoon Stealer
Raccoon Stealer is an information stealer malware family active since at least 2019 as a malware-as-a-service offering sold in underground forums. Raccoon Stealer has experienced two periods of activity across two variants, from 2019 to March 2022, then resurfacing in a revised version in June 2022.[1][2]
S0147: Pteranodon
Pteranodon is a custom backdoor used by Gamaredon Group. [1]
All related ATT&CK context
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.0 | Current bundle | df7aa340703b… |
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]
Huntress API Hash
Brennan, M. (2022, February 16). Hackers No Hashing: Randomizing API Hashes to Evade Cobalt Strike Shellcode Detection. Retrieved August 22, 2022.
Open source URL -
[2]
IRED API Hashing
spotheplanet. (n.d.). Windows API Hashing in Malware. Retrieved August 22, 2022.
Open source URL -
[3]
BlackHat API Packers
Choi, S. (2015, August 6). Obfuscated API Functions in Modern Packers. Retrieved August 22, 2022.
Open source URL -
[4]
Drakonia HInvoke
drakonia. (2022, August 10). HInvoke and avoiding PInvoke. Retrieved August 22, 2022.
Open source URL -
[5]
mitre-attack T1027.007Open 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.