Automation · API / MCP 中文

Technique note · T1056.004

Credential API Hooking

Adversaries may hook into Windows application programming interface (API) functions and Linux system functions to collect user credentials. Malicious hooking mechanisms may capture API or function calls that include parameters that reveal user authentication credentials. Unlike Keylogging, this technique focuses specifically on API functions that include parameters that reveal user credentials. In Windows, hooking involves redirecting calls to these functions and can be implemented via: * **Hooks procedures**, which intercept and execute designated code in response to events such as messages, keystrokes, and mouse inputs. * **Import address table (IAT) hooking**, which use modifications to a process’s IAT, where pointers to imported API functions are stored. * **Inline hooking**, which overwrites the first bytes in an API function to redirect code flow. In Linux and macOS, adversaries may hook into system functions via the `LD_PRELOAD` (Linux) or `DYLD_INSERT_LIBRARIES` (macOS) environment variables, which enables loading shared libraries into a program’s address space. For example, an adversary may capture credentials by hooking into the `libc read` function leveraged by SSH or SCP.

ATT&CK T1056.004 platforms — Status Active Version 20.1

Adversaries may hook into Windows application programming interface (API) functions and Linux system functions to collect user credentials. Malicious hooking mechanisms may capture API or function calls that include parameters that reveal user authentication credentials.1 Unlike Keylogging, this technique focuses specifically on API functions that include parameters that reveal user credentials. In Windows, hooking involves redirecting calls to these functions and can be implemented via: * **Hooks procedures**, which intercept and execute designated code in response to events such as messages, keystrokes, and mouse inputs.23 * **Import address table (IAT) hooking**, which use modifications to a process’s IAT, where pointers to imported API functions are stored.456 * **Inline hooking**, which overwrites the first bytes in an API function to redirect code flow.789 In Linux and macOS, adversaries may hook into system functions via the `LD_PRELOAD` (Linux) or `DYLD_INSERT_LIBRARIES` (macOS) environment variables, which enables loading shared libraries into a program’s address space. For example, an adversary may capture credentials by hooking into the `libc read` function leveraged by SSH or SCP.10

  1. Microsoft TrojanSpy:Win32/Ursnif.gen!I Sept 2017
  2. Microsoft Hook Overview
  3. Elastic Process Injection July 2017
  4. Elastic Process Injection July 2017
  5. Adlice Software IAT Hooks Oct 2014
  6. MWRInfoSecurity Dynamic Hooking 2015
  7. Elastic Process Injection July 2017
  8. HighTech Bridge Inline Hooking Sept 2011
  9. MWRInfoSecurity Dynamic Hooking 2015
  10. Intezer Symbiote 2022

Groups using this technique

GroupNameCountry
grp_g0068PLATINUM—

Claims

No public claim points at this technique yet.

Auto-ingested and not human-reviewed; confidence and validity read by citation.