MITRE ATT&CKsub-technique
T1056.004 Credential API Hooking
- Domain
- enterprise
- Tactics
- Collection, Credential Access
- Platforms
- Windows, Linux, macOS
- Version
- 1.2
- Created
- 2020-02-11
Description
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.
Related
Subtechnique of · MITRE ATT&CK (1)
- T1056 Input Capture technique
Referenced by MITRE ATT&CK · uses (12)
- S1154 VersaMem software (malware)
- S0484 Carberp software (malware)
- S0416 RDFSNIFFER software (malware)
- S0412 ZxShell software (malware)
- S0386 Ursnif software (malware)
- S0363 Empire software (tool)
- S0353 NOKKI software (malware)
- S0330 Zeus Panda software (malware)
- S0251 Zebrocy software (malware)
- S0266 TrickBot software (malware)
- G0068 PLATINUM group
- S0182 FinFisher software (malware)
Referenced by CAPEC · att&ck technique (1)
- CAPEC-383 Harvesting Information via API Event Monitoring attack pattern
References
- https://eyeofrablog.wordpress.com/2017/06/27/windows-keylogger-part-2-defense-against-user-land/ EyeofRa Detecting Hooking June 2017
- https://zairon.wordpress.com/2006/12/06/any-application-defined-hook-procedure-on-my-machine/ Zairon Hooking Dec 2006
- http://www.gmer.net/ GMER Rootkits
- https://www.mwrinfosecurity.com/our-thinking/dynamic-hooking-techniques-user-mode/ MWRInfoSecurity Dynamic Hooking 2015
- https://www.endgame.com/blog/technical-blog/ten-process-injection-techniques-technical-survey-common-and-trending-process Elastic Process Injection July 2017
- https://intezer.com/blog/research/new-linux-threat-symbiote/ Intezer Symbiote 2022
- https://www.scribd.com/document/68671361/Inline-Hooking-in-Windows HighTech Bridge Inline Hooking Sept 2011
- https://www.microsoft.com/en-us/wdsi/threats/malware-encyclopedia-description?Name=TrojanSpy:Win32/Ursnif.gen!I&threatId=-2147336918 Microsoft TrojanSpy:Win32/Ursnif.gen!I Sept 2017
- https://msdn.microsoft.com/library/windows/desktop/ms644959.aspx Microsoft Hook Overview
- https://msdn.microsoft.com/library/windows/desktop/ms686701.aspx Microsoft Process Snapshot
- https://github.com/prekageo/winhook PreKageo Winhook Jul 2011
- https://github.com/jay/gethooks Jay GetHooks Sept 2011
- https://security.stackexchange.com/questions/17904/what-are-the-methods-to-find-hooked-functions-and-apis StackExchange Hooks Jul 2012
- https://www.adlice.com/userland-rootkits-part-1-iat-hooks/ Adlice Software IAT Hooks Oct 2014
- https://volatility-labs.blogspot.com/2012/09/movp-31-detecting-malware-hooks-in.html Volatility Detecting Hooks Sept 2012